Android面试题及答案


Posted in 面试题 onSeptember 04, 2015
1.请描述下Activity的生命周期。
必调用的三个方法:onCreate() –> onStart() –> onResume(),用AAA表示
(1)父Activity启动子Activity,子Actvity退出,父Activity调用顺序如下
AAA –> onFreeze() –> onPause() –> onStop() –> onRestart() –> onStart(),onResume() …
(2)用户点击Home,Actvity调用顺序如下
AAA –> onFreeze() –> onPause() –> onStop() — Maybe –> onDestroy() – Maybe
(3)调用finish(), Activity调用顺序如下
AAA –> onPause() –> onStop() –> onDestroy()
(4)在Activity上显示dialog, Activity调用顺序如下
AAA
(5)在父Activity上显示透明的或非全屏的activity,Activity调用顺序如下
AAA –> onFreeze() –> onPause()
(6)设备进入睡眠状态,Activity调用顺序如下
AAA –> onFreeze() –> onPause()
2.如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?
onSaveInstanceState()
当你的程序中某一个Activity A在运行时,主动或被动地运行另一个新的Activity B,这个时候A会执行onSaveInstanceState()。B完成以后又会来找A,这个时候就有两种情况:一是A被回收,二是A没有被回收,被回收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上了参数savedInstanceState;而没被收回的就直接执行onResume(),跳过onCreate()了。
3.如何将一个Activity设置成窗口的样式。
在AndroidManifest.xml 中定义Activity的地方一句话android:theme="@android:style/Theme.Dialog"或android:theme="@android:style/Theme.Translucent"就变成半透明的
4.如何退出Activity?如何安全退出已调用多个Activity的Application?
对于单一Activity的应用来说,退出很简单,直接finish()即可。
当然,也可以用killProcess()和System.exit()这样的方法。
http://blog.csdn.net/debug2/archive/2011/02/18/6193644.aspx
5.请介绍下Android中常用的五种布局。
FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)
6.请介绍下Android的数据存储方式。
一.SharedPreferences方式
二.文件存储方式
三.SQLite数据库方式
四.内容提供器(Content provider)方式
五.网络存储方式
7.请介绍下ContentProvider是如何实现数据共享的。
创建一个属于你自己的Content provider或者将你的数据添加到一个已经存在的Content provider中,前提是有相同数据类型并且有写入Content provider的权限。
8.如何启用Service,如何停用Service。
9.注册广播有几种方式,这些方式有何优缺点?请谈谈Android引入广播机制的用意。
10.请解释下在单线程模型中Message、Handler、Message Queue、Looper之间的关系。
11.AIDL的全称是什么?如何工作?能处理哪些类型的数据?
12.请解释下Android程序运行时权限与文件系统权限的区别。
13.系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。
14.有一个一维整型数组int[]data保存的是一张宽为width,高为height的图片像素值信息。请写一个算法,将该图片所有的白色不透明(0xffffffff)像素点的透明度调整为50%。
15.你如何评价Android系统?优缺点。

Tags in this post...

面试题 相关文章推荐
PHP高级工程师面试问题推荐
Jan 18 面试题
数据库连接池的工作原理
Sep 26 面试题
声明struct x1 { . . . }; 和typedef struct { . . . }x2;有什么不同
Jun 02 面试题
如何查询Oracle数据库中已经创建的索引
Oct 11 面试题
武汉世纪畅想数字传播有限公司.NET笔试题
Jul 22 面试题
ASP.NET中的身份验证有那些
Jul 13 面试题
描述RIP和OSPF区别以及特点
Jan 17 面试题
C#如何判断当前用户是否输入某个域
Dec 07 面试题
介绍一下Linux内核的排队自旋锁
Aug 27 面试题
一些Solaris面试题
Dec 22 面试题
中间件分为哪几类
Mar 14 面试题
北京振戎融通Java面试题
Sep 03 面试题
android面试问题与答案
Dec 27 #面试题
Android笔试题总结
Nov 29 #面试题
Android面试宝典
Aug 06 #面试题
Android interview questions
Dec 25 #面试题
c++工程师面试问题
Aug 04 #面试题
2019年c语言经典面试题目
Aug 17 #面试题
以下为Windows NT 下的32 位C++程序,请计算sizeof 的值
Dec 07 #面试题
You might like
基于php split()函数的用法详解
2013/06/05 PHP
php使用curl获取https请求的方法
2015/02/11 PHP
php从字符串创建函数的方法
2015/03/16 PHP
PHP采用超长(超大)数字运算防止数字以科学计数法显示的方法
2016/04/01 PHP
Yii针对添加行的增删改查操作示例
2016/10/18 PHP
yii2局部关闭(开启)csrf的验证的实例代码
2017/07/10 PHP
jquery实现控制表格行高亮实例
2013/06/05 Javascript
node.js中的console.assert方法使用说明
2014/12/10 Javascript
javascript实现依次输入input自动定焦
2014/12/23 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
jQuery插件bgStretcher.js实现全屏背景特效
2015/06/05 Javascript
JavaScript学习笔记之数组求和方法
2016/03/23 Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
2017/03/27 jQuery
详细分析JS函数去抖和节流
2017/12/05 Javascript
动手写一个angular版本的Message组件的方法
2017/12/16 Javascript
微信小程序实现分享到朋友圈功能
2018/07/19 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
2018/07/23 jQuery
JavaScript中变量提升与函数提升经典实例分析
2018/07/26 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
2018/10/12 Javascript
jQuery实现的自定义轮播图功能详解
2018/12/28 jQuery
json字符串对象转换代码实例
2019/09/28 Javascript
Python中pip安装非PyPI官网第三方库的方法
2015/06/02 Python
python3爬取数据至mysql的方法
2018/06/26 Python
用pandas中的DataFrame时选取行或列的方法
2018/07/11 Python
对tensorflow 的模型保存和调用实例讲解
2018/07/28 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
Django 实现admin后台显示图片缩略图的例子
2019/07/28 Python
Brydge英国:适用于Apple iPad和Microsoft Surface Pro的蓝牙键盘
2019/05/16 全球购物
英国在线购买轮胎、预订汽车、汽车维修和装配网站:Protyre
2020/04/12 全球购物
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
List, Set, Map是否继承自Collection接口?
2016/05/16 面试题
食堂采购员岗位职责
2014/03/17 职场文书
理发店策划方案
2014/06/05 职场文书
关于保护环境的标语
2014/06/09 职场文书
2016优秀教师先进个人事迹材料
2016/02/25 职场文书
小学三年级作文之写景
2019/11/05 职场文书