1.概述
在Android系统App中(注意是系统App),都会添加一个persistent 属性,表明此应用是一个永久性应用,就是从系统一开机就一直运行,直到系统关机
在10.0定制化开发中,手动安装一些带persistent的app时会抛出异常 导致安装失败 抛出异常is a persistent app. Persistent apps are not updateable的异常
所以这要从安装流程分析问题所在
主要安装处理在:PackageManagerService.java中
2.手动安装Persistent app失败的核心功能分析和解决方法
2.1PackageManagerService.java相关方法分析
在PMS中安装apk分两步由installStage负责执行安装过程
installStage 方法就是正式开始 apk 的安装过程。这个过程包括两大步:
1 拷贝安装包;
2 装载代码。
FileInstallArgs.copyApk()执行拷贝部分
而preparePackageLI负责执行装载代码部分
路径:frameworks\base\services\core\java\com\android\server\pm\PackageManage