[发明专利]一种基于Android系统优化开机应用安装时间的方法有效
| 申请号: | 201611030080.0 | 申请日: | 2016-11-15 |
| 公开(公告)号: | CN106708507B | 公开(公告)日: | 2021-01-26 |
| 发明(设计)人: | 曾琦凌;张孝友 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
| 主分类号: | G06F9/4401 | 分类号: | G06F9/4401;G06F9/445;G06F8/61;G06F8/65 |
| 代理公司: | 四川省成都市天策商标专利事务所 51213 | 代理人: | 刘兴亮 |
| 地址: | 621000 四*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 android 系统 优化 开机 应用 安装 时间 方法 | ||
1.一种基于Android系统优化开机应用安装时间的方法,其特征在于:
在扫描完APK后PKMS服务更新对APK文件夹的访问时间戳的记录,Android系统的PackageManagerService服务在逐个扫描解析APK文件时,更改保存文件的访问时间戳的时机:
PKMS服务中解析APK文件的标准接口为scanPackageDirtyLI,在该标准接口的末尾而不是开端,调用如下标准方法来完成时间的保存:
pkgSetting.setTimeStamp(scanFile.lastModified());
其中,pkgSetting就是负责保存访问时间戳的PackageSetting对象;系统在整个扫包流程结束后,会将这个对象中的值保存到对应的文件中;
setTimeStamp是PackageSetting类的标准接口,用来保存时间;
scanFile就是当前解析的APK所在的文件夹File对象;
lastModified()就是File对象的标准接口,获取File对象的最后被访问的时间戳,节省出进行多余签名信息获取时耗费的时间;
避免每次开机都进行primay cpu ABI值的分配和APK中so库的释放拷贝;避免每次开机都进行primay cpu ABI值的分配具体包括:
Android系统的PackageManagerService服务不必在每次扫包时都调用系统底层接口去为每个APK应用分配CPU ABI值:
PKMS服务会在第一次扫包时,将扫描解析得到的每个应用的应用包名和被分配到的ABI值保存到文件系统中的一个特定文件/data/packageABIs里;
在下次扫包时,直接从特定文件中读取对应的值,而不用再通过调用底层接口去为APK应用分配这个ABI值;
并且这个特定文件在应用发生自升级、卸载以及系统发生差分升级时需要同步刷新里边的内容;
避免每次开机都进行PK中so库的释放拷贝,具体包括:
Android系统的PackageManagerService服务不必在每次扫包时都让/data/app/下的APK文件去释放拷贝自己的so库:
PKMS在扫包时会判断是否特定文件里包含了当前正在扫描解析的APK应用的ABI值,若包含,其实也代表着该应用已经释放并且拷贝过自己的so库了;所以在跳过了ABI值分配这一过程的同时,也可以跳过so库的释放拷贝动作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611030080.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种车辆路径规划的方法及系统
- 下一篇:一种自清洁伸缩式水泥卸货输送装置





