andriod各个知识点.pdf
需积分: 0 54 浏览量
更新于2023-02-07
收藏 4.68MB PDF 举报
Android高级开发面试题及答案解析
作为一名高级Android开发工程师,我整理了 Android 相关知识点,以帮助大家更好地理解 Android 开发面试题和答案。下面是 Android 高级开发面试题及答案解析。
Activity启动流程
Activity的启动流程是 Android 开发中非常重要的一个知识点。启动流程可以分为以下几个步骤:
1. 点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求;
2. system_server进程接收到请求后,向zygote进程发送创建进程的请求;
3. Zygote进程fork出新的子进程,即App进程;
4. App进程,通过Binder IPC向system_server进程发起attachApplication请求;
5. system_server进程在收到请求后,进行一系列准备工作后,再通过binder IPC向App进程发送scheduleLaunchActivity请求;
6. App进程的binder线程(ApplicationThread)在收到请求后,通过handler向主线程发送LAUNCH_ACTIVITY消息;
7. 主线程在收到Message后,通过发射机制创建目标Activity,并回调Activity.onCreate()等方法。
onSaveInstanceState()和onRestoreInstanceState()的调用时机
onSaveInstanceState()和onRestoreInstanceState()是Activity生命周期中两个非常重要的方法。
onSaveInstanceState()会在以下情况被调用:
* 从最近应用中选择运行其他的程序时。
* 当用户按下HOME键时。
* 屏幕方向切换时。
* 按下电源按键(关闭屏幕显示)时。
* 从当前activity启动一个新的activity时。
onRestoreInstanceState()会在以下情况被调用:
* 屏幕方向切换时,activity生命周期如下onPause -> onSaveInstanceState -> onStop -> onDestroy -> onCreate -> onStart -> onRestoreInstanceState-> onResume。
* 在后台被回收。
* 按HOME键返回桌面, 又马上点击应用图标回到原来页面时不会被回收onStart -> onRestoreInstanceState -> onResume。
在系统会调用ActivityThread的performStopActivity方法中掉用onSaveInstanceState,将状态保存在mActivities中,mActivities维护了一个Activity的信息表,当Activity重启时候,会从mActivities中查询到对应的ActivityClientRecord。如果有信息,则调用Activity的onResoreInstanceState方法,在ActivityThread的performLaunchActivity方法中,统会调用onRestoreInstanceState方法。
通过对Activity启动流程和onSaveInstanceState()、onRestoreInstanceState()的调用时机的理解,我们可以更好地掌握Android开发的基础知识,并更好地应对面试中的难题。
猪猪上
- 粉丝: 10
- 资源: 10
最新资源
- 【创新无忧】基于沙猫群优化算法SCSO优化广义神经网络GRNN实现数据回归预测附matlab代码.rar
- 【创新无忧】基于沙猫群优化算法SCSO优化极限学习机ELM实现乳腺肿瘤诊断附matlab代码.rar
- 【创新无忧】基于沙猫群优化算法SCSO优化极限学习机KELM实现故障诊断附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化广义神经网络GRNN实现电机故障诊断附matlab代码.rar
- 【创新无忧】基于沙猫群优化算法SCSO优化相关向量机RVM实现北半球光伏数据预测附matlab代码.rar
- 【创新无忧】基于沙猫群优化算法SCSO优化相关向量机RVM实现数据多输入单输出回归预测附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化极限学习机ELM实现乳腺肿瘤诊断附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化广义神经网络GRNN实现数据回归预测附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化广义神经网络GRNN实现光伏预测附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化相关向量机RVM实现数据多输入单输出回归预测附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化相关向量机RVM实现北半球光伏数据预测附matlab代码.rar
- 【创新无忧】基于蛇群优化算法SO优化极限学习机KELM实现故障诊断附matlab代码.rar
- 【创新无忧】基于狮群优化算法LSO优化广义神经网络GRNN实现电机故障诊断附matlab代码.rar
- 【创新无忧】基于狮群优化算法LSO优化广义神经网络GRNN实现数据回归预测附matlab代码.rar
- 【创新无忧】基于狮群优化算法LSO优化广义神经网络GRNN实现光伏预测附matlab代码.rar
- 【创新无忧】基于狮群优化算法LSO优化相关向量机RVM实现北半球光伏数据预测附matlab代码.rar