Android面试题总结_第1页
Android面试题总结_第2页
Android面试题总结_第3页
Android面试题总结_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.描述Activity生命周期创建 onCreate() -启动onStart() 恢复 onResume() 暂停 onPause() 结束 onEnd() 销毁onDestroy()2.描述Service生命周期:onCreate(),onStart(),onDestroy()三个方法,当我们第一次启动Service时,先后调用了onCreate(),onStart()这两个方法,当停止Service时,则执行onDestroy()方法,这里需要注意的是,如果Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法,

2、具体的可以看下面的实例。3.请介绍下Android中常用的五种布局。线性布局LinearLayout,相对布局 RelativeLayout表单布局 TableLayout,绝对布局AbsLayout(已淘汰)帧布局FrameLayout4.数据库存储方式(1)使用SharedPreferences存储数据;(2)文件存储数据;(3)SQLite数据库存储数据;(4)使用ContentProvider存储数据;(5)网络存储数据;5.sim卡的EF 文件有何作用sim卡的文件系统有自己规范,主要是为了和手机通讯,sim本 身可以有自己的操作系统,EF就是作存储并和手机通讯用的6. Androi

3、d中的动画有哪几类,它们的特点和区别是什么? 两种,一种是Tween 动画、还有一种是Frame 动画。Tween 动画,这种实现方式可以使视图组件移动、放大、缩小以及产生透明度的变化;另一种Frame 动画,传统的动画方法,通过顺序的播放排列好的图片来实现,类似电影。7. 说说mvc模式的原理,它在android中的运用MVC(Model_view_contr6ller)”模型_视图_控制器”。 MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要 Controller改变了Models的数据或者属性,所有依赖的Vie

4、w都会自动更新。类似的,只要Controller改变了View,View会 从潜在的Model中获取数据来刷新自己。8.什么是ANR,如何避免?Application Not Response。在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框这个对话框就是ANR(Application not response)运行主线程里的任何方法都尽量少做事情。特别是,Activity应该在它的关键生命周期方法如(onCreate()或onResume())尽量少的去做创建操作、潜在的耗时操作、例如网络或者数据库操作或者高耗时的计算9.Android系统架构有几层?分

5、别对应是什么?Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。10. Android本身的api并未声明会抛出异常,则其在运行时有无可能抛出runtime异常,你遇到过吗?诺有的话会导致什么问题?如何解决?会有运行时异常, 运行时异常无需捕捉11. 你如何评价Android系统?优缺点。优势:一、开放性 三、丰富的硬件选择 五、无缝结合的Google应用支持缺点:一、安全和隐私二,开发商自定义,不够统一 四、同类机型用户减少12.Service和Activity的区别

6、activity前端显示的,就像windows中的视窗,service是在后面偷偷干事情的,你可能并不知道是他在干,其实是他干的。 android的service没有像mobile被一个进程services.exe给加载,他可以在activity、broadcast中启动、用start方法启动的可以一直服务着,直到调用stop方法,绑定启动的是随绑定对象而存在的。13.AIDL的全称是什么?如何工作?能处理哪些类型的数据?Android interface Define language 处理android 接口自定义语言14. 请介绍下ContentProvider是如何实现数据共享的。Co

7、ntentProvider负责:组织应用程序的数据,向其他应用程序提供数据ContentResolver负责:获取ContentProvider提供的数据、增删改查数据15. 注册广播有几种方式,这些方式有何优缺点?请谈谈Android引入广播机制的用意。2钟;一种是XML注册、一种是:代码注册、XML注册优点:方便易读 缺点:当当手机处于关机状态时、仍然可以监听到广播、不灵活代码注册优点:灵活,手机处于关机状态时,不在监听广播 缺点:不方便,不易读16. 请解释下在单线程模型中Message、Handler、Message Queue、Looper之间的关系。andriod 提供了 Hand

8、ler 和 Looper 来满足线程间的通信。Handler 先进先出原则。Looper 类用来管理特定线程内对象之间的消息交换(Message Exchange )。1)Looper : 一个线程可以产生一个Looper 对象,由它来管理此线程里的Message Queue (消息队列)。2)Handler : 你可以构造Handler 对象来与Looper 沟通,以便push 新消息到Message Queue 里;或者接收Looper 从Message Queue 取出)所送来的消息。3) Message Queue (消息队列):用来存放线程放入的消息。4)线程:UI thread 通

9、常就是main thread ,而Android 启动程序时会替它建立一个Message Queue17简要解释一下activity、 intent 、intent filter、service、Broadcast、BroadcastReceiveractivity呈现了一个用户可以操作的可视化用户界面service不包含可见的用户界面,而是在在后台无限地运行可以连接到一个正在运行的服务中。连接后,可以通过中暴露出来的借口与其通信BroadcastReceiver是一个接收广播消息并作出回应的component,BroadcastReceiver没有界面 intent:contentprovi

10、der 在接收ContentResolver的请求时被激活。Activity ,service和broadcast是被称为intents的异步消息激活的一个intent是一个Intent对象,它保存消息的内容。对于activity和service来说,它指定了请求的操作名称和待操作数据的URL,intent对象可以显式的制定一个目标component,如果目标不是显式的,它通过将intent对象和目标的 intent filter相比较来完成这一工作的。一个component的intent filter 告诉component能处理的intent18.什么情况会导致Force Close ?如

11、何避免?能否捕获导致其的异常?一般像空指针,可以看logcat,然后对应到程序中 解决错误19. 如何退出Activity?如何安全退出已调用多个Activity的Application?单个Activity,调用finish、killProcess()、System.exit()方法退出在2.1之前,可以使用ActivityManager的restartPackage方法它可以直接结束整个应用。在使用时需要权限android.permission.RESTART_PACKAGES在2.2这个方法失效了、在2.2添加了新方法killBackgroundProcess(),需要权限android.permission.KILLBACKGROUND_PACKAGES20. 能说下Android应用的入口点吗?真正的Android入口点是application的main,你可以看下androidmanifest.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论