Android 12.0 开机启动优化之PMS扫描apk耗时相关功能优化

1.前言


  在android12.0的系统rom定制化开发中,在系统中开发产品时,会根据客户要求内置第三方app,这时如果内置app过多,或者安装的app过多,在系统开机的过程中
在pms扫描安装app的时候,就会比较耗时,这时候就需要优化下pms扫描安装app这块的功能代码,用多线程来实现pms扫描安装app,来加快开机时间,接下来
来实现这个功能

2.开机启动优化之PMS扫描apk耗时相关功能优化的核心类

frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java

3.开机启动优化之PMS扫描apk耗时相关功能优化的核心功能分析和实现

在Android12.0的系统开机启动的时候,Android 系统启动慢的原因就是在启动 PMS 的时候,
需要执行扫描文件夹、处理权限、安装系统应用(文件的解压与copy)等比较耗时的操作
在开机阶段耗时较多的部分有2个,分别是preload classes和scan packages。
而preload classes是在zygote阶段处理的工作,本章节不讨论这个问题,这里主要讨论的是在PMS阶段,
扫描app的时候,耗时操作的处理,在pms中的安装app的过程中,主要是执行
调用scanDirTracedLI方法扫描/data/app的文件夹,(scanDirTracedLI方法调用会从
PackageManagerService main方法一层层执行调用,接下来分析下具体执行过程

 

猜你喜欢

转载自blog.csdn.net/baidu_41666295/article/details/131691180