一种基于按需复制的安卓应用安装加速方法与流程

文档序号:33051714发布日期:2023-01-24 23:25阅读:来源:国知局

技术特征:
1.一种基于按需复制的安卓应用安装加速方法,其特征在于,包括:步骤1.计算出磁盘i/o性能;步骤2.修改安卓框架下的类packagemanagerservice.installparams的复制apk的函数,包括:如apk文件在系统临时目录中,获取待安装apk文件的全路径,记为apkfilepath;跳过安卓标准的复制apk的操作;将packagemanagerservice为apk文件对应的app创建的package对象中的apk成员变量中的路径指向apkfilepath;启动一个线程,并将apkfilepath和package对象传递到该线程,且并行执行复制apk的操作;如apk文件不在系统临时目录中,则获取待安装的apk文件大小,记为apkfilesize,并根据磁盘i/o性能以及apkfilesize,选择执行安卓标准的复制apk的流程,或创建一个待安装的apk文件的base.apk到apkfilepath的链接,通过链接来访问apkfilepath;步骤3.执行安卓标准安装流程。2.如权利要求1所述的基于按需复制的安卓应用安装加速方法,其特征在于,所述计算出磁盘i/o性能包括:记a秒读取字节数readbytes和a秒写入字节数writebytes,计算出a秒内能够复制的文件大小,记为copybytes,作为磁盘i/o性能,包括:copybytes = (readbytes* writebytes)/( readbytes + writebytes)。3.如权利要求2所述的基于按需复制的安卓应用安装加速方法,其特征在于,所述a秒为1秒。4.如权利要求1所述的基于按需复制的安卓应用安装加速方法,其特征在于,复制apk的函数为handlestartcopy函数,所述安卓标准的复制apk的操作为handlestartcopy的复制操作。5.如权利要求1所述的基于按需复制的安卓应用安装加速方法,其特征在于,并行执行复制apk的操作包括:在启动的线程中,将apk文件复制到base.apk;复制完成后,将package中的apk成员变量中的路径指向apkfilepath。6.如权利要求2或3所述的基于按需复制的安卓应用安装加速方法,其特征在于,根据磁盘i/o性能以及apk文件大小apkfilesize,确定执行标准复制流程,或创建一个base.apk到apkfilepath的链接包括:a.如果apkfilesize <= copybytes,则执行安卓标准的复制apk操作;b.如果apkfilesize > copybytes,则创建一个base.apk到apkfilepath的链接,通过链接来访问apkfilepath。7.如权利要求6所述的基于按需复制的安卓应用安装加速方法,其特征在于,创建一个base.apk到apkfilepath的链接后,还获取apk文件的权限,判断是否是system/root权限,如果是,则通知内核驱动,监视apkfilepath文件的删除和移动操作;如果不是,则使用inotify监视apkfilepath文件的删除和移动操作。8.如权利要求7所述的基于按需复制的安卓应用安装加速方法,其特征在于,内核驱动
或使用inotify监视apkfilepath文件的删除和移动操作包括:判断移动的apk文件对应的app是否正在运行,如移动的apk文件对应的app正在运行,则:a.挂起移动apk操作,通过保留apk文件原路径对应的inode节点,使得base.apk能够继续通过原路径apkfilepath进行访问;b.创建一个线程,等待该对应的app结束后执行移动操作,并更新base.apk的链接;如移动的apk文件对应的app未运行,则更新base.apk的链接。9.如权利要求7所述的基于按需复制的安卓应用安装加速方法,其特征在于,内核驱动或使用inotify监视apkfilepath文件的删除和移动操作,还包括:判断apk文件对应的app是否正在运行,如对应的app正在运行,则在监视进程中打开apk文件;创建一个线程,等待对应的app结束后在监视进程中关闭apk文件,再将apk文件复制到base.apk,删除apk文件原路径对应的inode节点;如未运行,则将apk文件移动到base.apk。10.如权利要求1所述的基于按需复制的安卓应用安装加速方法,其特征在于,在安卓系统内执行磁盘i/o的benchmark,计算出磁盘i/o性能。

技术总结
本发明涉及一种基于按需复制的安卓应用安装加速方法,其中,包括:步骤1.计算出磁盘I/O性能;步骤2.修改安卓框架下的类PackageManagerService.InstallParams的复制apk的函数,包括:跳过安卓标准的复制apk的操作;将PackageManagerService为apk文件对应的app创建的Package对象中的apk成员变量中的路径指向apkFilePath;启动一个线程,并将apkFilePath和Package对象传递到该线程,且并行执行复制apk的操作;如apk文件不在系统临时目录,根据磁盘I/O性能以及apkFileSize,选择执行安卓标准的复制apk的流程,或通过链接来访问apkFilePath;步骤3.执行安卓标准安装流程。本发明的基于按需复制的安卓应用安装加速方法通过根据apk的具体情况,进行相应的操作,减少安装app的耗时。减少安装app的耗时。


技术研发人员:温研 刘东 袁利
受保护的技术使用者:北京麟卓信息科技有限公司
技术研发日:2022.12.23
技术公布日:2023/1/23
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1