android面试专题(7)

171 阅读3分钟

1. 请解释下Android程序运行时权限与文件系统权限的区别。
运行时权限Dalvik( android授权)
文件系统 linux 内核授权

2. 系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。
通过直接发送U ri把参数带过去,或者通过manifest里的intentfilter里的data属性

3.  IntentService有何优点?

  IntentService 的好处 :

     Acitivity的进程,当处理Intent的时候,会产生一个对应的Service

     Android的进程处理器现在会尽可能的不kill掉你

     非常容易使用

4. Android引入广播机制的用意?
a : 从MVC的角度考虑(应用程序内)
其实回答这个问题的时候还可以这样问,android为什么要有那4大组件,现在的移动开发模型基本上也是照搬的web那一套MVC架构,只不过是改了点嫁妆而已。android的四大组件本质上就是为了实现移动或者说嵌入式设备上的MVC架构,它们之间有时候是一种相互依存的关系,有时候又是一种补充关系,引入广播机制可以方便几大组件的信息和数据交互。

  b:程序间互通消息(例如在自己的应用程序内监听系统来电)

  c:效率上(参考UDP的广播协议在局域网的方便性)

  d:设计模式上(反转控制的一种应用,类似监听者模式)

5. Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念

  DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念。

6. sim卡的EF 文件有何作用
sim卡的文件系统有自己规范,主要是为了和手机通讯,sim本 身可以有自己的操作系统,EF就是作存储并和手机通讯用的

7. 嵌入式操作系统内存管理有哪几种, 各有何特性

  页式,段式,段页,用到了MMU,虚拟空间等技术

8. 什么是嵌入式实时操作系统, Android 操作系统属于实时操作系统吗?

  嵌入式实时操作系统是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。主要用于工业控制、 军事设备、 航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。又可分为软实时和硬实时两种,而android是基于linux内核的,因此属于软实时。

9. 一条最长的短信息约占多少byte?

  中文70(包括标点),英文160,160个字节。

10. DDMS和TraceView的区别?
DDMS是一个程序执行查看器,在里面可以看见线程和堆栈等信息,TraceView是程序性能分析器 。

11. NDK是什么
NDK是一些列工具的集合,NDK提供了一系列的工具,帮助开发者迅速的开发C/C++的动态库,并能自动将so和java 应用打成apk包。NDK集成了交叉编译器,并提供了相应的mk文件和隔离cpu、平台等的差异,开发人员只需简单的修改mk文件就可以创建出so