在之前的文章中,我们对PakageManagerService启动流程分析 做了简单的介绍,并对PMS系统的启动流程做了详细的解析。上面只是说到了Android的PMS的运行流程,而对于Android apk的整个安装流程并没有过多的介绍。本篇将重点介绍下Android apk的运行启动流程。 总结一下,关于apk的安装流程主要分为以下步骤:
- 将apk文件复制到data/app目录
- 解析apk信息
- dexopt操作
- 更新权限信息
- 完成安装,发送Intent.ACTION_PACKAGE_ADDED广播
用一张图说明一下:
此图可见,从PakageManagerService的启动到apk的安装完成,中间还是经历了很多的流程。
1, 将apk文件copy至data/app目录在之前的文章我们说过,安装应用 Intent 的是 PackageInstallerActivity,但这个类厂商可以随意修改,这个类也并没有在 android.jar 中。PackageInstal