预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10
亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
Android的五层结构ApplicationAndroid内置程序:Home、Contracts、Phone…Google闭源程序:GoogleClient……Vendor程序:HTCDream,OMS……FrameworkAndroidCoreCode(java)Vendorextensions……Nativelibraries功能函数库:C/C++库、音视频、SQLite、OpenGL/ES、Webkit、FreeType、SSL……AndroidJNIAndroidDalvikVMUserspacedriversLinuxKernel精简版的IPC补丁:Binder更积极的电源管理:没有人宣布要用的部件,就关掉2.Android如何进行与界面的处理1.调整程序的进程结构减少进程数量(善用ViewStub、ViewSwitch等)减少进程周期循环次数,及时让进程休眠不编写长寿代码,只在需要时运行,服务应快速完成并立即结束2.调整算法,取消不必要的环节,减少对CPU和内存的需求减少函数调用次数适当使用JNI3.精心设计界面避免复杂布局。控制嵌套和View数量,善用Merge、inflate()、RelativeLayout等去除不必要的背景、动画执行长时间、耗电的任务之前检查电量、提示用户3.Android进程的生命周期Activity结束后进程仍然存在,开发者不需要编写结束进程的代码,系统自动判断何时该终止。当然也可以主动结束本Activity:正常方式(进程未必会结束)finish();传统方式(真正结束进程):System.exit(0);自杀方式(真正结束进程):android.os.Process.killProcess(android.os.Process.myPid());4.Android面试及答案2.横竖屏切换时候activity的生命周期1.不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次.2.设置Activity的android:configChanges=”orientation”时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次.3.设置Activity的android:configChanges=”orientation|keyboardHidden”时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法.3.android中的动画有哪几类,它们的特点和区别是什么?两种,一种是Tween动画、还有一种是Frame动画。Tween动画,这种实现方式可以使视图组件移动、放大、缩小以及产生透明度的变化;另一种Frame动画,传统的动画方法,通过顺序的播放排列好的图片来实现,类似电影。4.一条最长的短信息约占多少byte?中文70(包括标点),英文160,160个字节。5.handler机制的原理andriod提供了Handler和Looper来满足线程间的通信。Handler先进先出原则。Looper类用来管理特定线程内对象之间的消息交换(MessageExchange)。1)Looper:一个线程可以产生一个Looper对象,由它来管理此线程里的MessageQueue(消息队列)。2)Handler:你可以构造Handler对象来与Looper沟通,以便push新消息到MessageQueue里;或者接收Looper从MessageQueue取出)所送来的消息。3)MessageQueue(消息队列):用来存放线程放入的消息。4)线程:UIthread通常就是mainthread,而Android启动程序时会替它建立一个MessageQueue。6.什么是嵌入式实时操作系统,Android操作系统属于实时操作系统吗?嵌入式实时操作系统是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。主要用于工业控制、军事设备、航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。又可分为软实时和硬实时两种,而android是基于linux内核的,因此属于软实时。7.android中线程与线程,进程与进程之间如何通信1、一个Android程序开始运行时,会单独启动一个Process。默认情况下,所有这个程序中的Activity或者Service都会跑在这个Process。默认情况下,一个Android程序也只有一个Process,但一个Pr