2011年Android技术面试详解,涵盖核心知识点
5星 · 超过95%的资源 需积分: 3 181 浏览量
更新于2024-07-30
收藏 154KB DOC 举报
"这份资料是2011年Android技术面试的整理,包含了百度、新浪、中科软等多家公司的笔试面试题目及详细答案,主要涵盖了Android的基础知识、四大组件、布局管理、动画、数据存储、Activity管理、Intent使用、Service操作、广播机制、线程模型、异常处理、系统架构、数据共享、API异常处理、IntentService特性、Activity状态保存、窗口样式设定、退出Activity、AIDL以及权限管理等多个方面。"
以下是详细知识点:
1. Android的四大组件:Activity(活动)、Service(服务)、Broadcast Receiver(广播接收器)和Content Provider(内容提供者)。它们是构建Android应用的核心组件,分别负责用户界面交互、后台任务执行、全局消息收发和数据共享。
2. 常用布局:LinearLayout(线性布局)、RelativeLayout(相对布局)、FrameLayout(帧布局)、TableLayout(表格布局)和GridLayout(网格布局),每种布局都有特定的排列和对齐规则。
3. 动画分类:Android中的动画分为属性动画(Property Animation)和视图动画(View Animation)。属性动画可修改对象的属性并实时更新视图,而视图动画只改变视觉效果,不改变对象状态。
4. XML解析类:主要有DOM解析、SAX解析和Pull解析。官方推荐使用Pull解析,因为它更节省内存且效率较高。
5. ListView优化:包括使用ViewHolder模式减少视图查找、复用convertView、异步加载数据、避免过多的子项点击事件监听等。
6. 数据存储方式:SQLite数据库、SharedPreferences、内部存储、外部存储、ContentProvider等。
7. Activity启动模式:标准模式(SingleTop)、栈顶复用模式(SingleTask)、单实例模式(SingleInstance)和单活动栈模式(SingleTop,但限制在特定任务栈内)。
8. 与Activity和Task相关的Intent启动方式:通过FLAG_ACTIVITY_NEW_TASK和FLAG_ACTIVITY_CLEAR_TOP等标志启动,可以控制Activity在Task中的行为。
9. Activity生命周期:从onCreate()、onStart()、onResume()到onPause()、onStop()、onDestroy(),以及配置变更时的onSaveInstanceState()和onRestoreInstanceState()。
10. 屏幕旋转时的生命周期:默认情况下,屏幕旋转会导致Activity重建,但可以通过配置来保持实例状态。
11. Service启动与停止:通过startService()启动,stopService()或stopSelf()停止。startService()启动的服务会持续运行直到停止,而bindService()则用于绑定服务,服务会在所有客户端解绑后自动停止。
12. 广播注册方式:静态注册(AndroidManifest.xml)和动态注册(代码中)。静态注册在应用启动时自动激活,不受应用运行状态影响;动态注册需要在代码中手动完成,易于管理和控制。
13. Message、Handler、Message Queue、Looper的关系:Message是消息载体,Handler处理消息,Message Queue是消息队列,Looper是循环器,它们协同工作形成一个消息循环机制,使得UI线程可以响应其他线程的消息。
14. Android系统架构:从Linux内核、硬件抽象层、系统库、应用程序框架到应用程序,构成了层次化的结构。
15. ContentProvider:实现数据共享,允许不同应用访问和操作同一数据源。
16. ANR(Application Not Responding):当应用无响应时出现,可通过优化主线程、避免阻塞UI线程、及时处理耗时操作来避免。
17. Force Close:通常由未捕获的异常引起,可通过良好的错误处理和资源管理避免。
18. API异常处理:即使API没有声明异常,也可能在运行时抛出,遇到时应适当地进行异常捕获和处理。
19. IntentService优点:在单独的工作线程中运行,服务执行完毕后自动停止,避免资源浪费。
20. 保存Activity状态:使用onSaveInstanceState()保存临时状态,onCreate()或onRestoreInstanceState()恢复。
21. Activity窗口样式:通过设置Theme和WindowFlags来改变Activity的外观和行为。
22. 退出Activity:通常通过finish()方法,安全退出Application需确保所有Activity都被正确关闭。
23. AIDL(Android Interface Definition Language):用于进程间通信(IPC),定义接口,处理基本数据类型和自定义对象。
24. 运行时权限与文件系统权限:运行时权限针对特定功能的用户授权,文件系统权限涉及对文件的读写操作,两者分开管理,提高安全性。
以上知识点是针对2011年Android面试的常见问题,对于学习和理解Android系统及应用开发具有很高的参考价值。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2011-12-01 上传
2014-04-11 上传
2013-07-27 上传
2021-12-15 上传
2015-03-05 上传
lgmcolin
- 粉丝: 2
- 资源: 35