[发明专利]一种应用程序的处理方法和装置有效
申请号: | 201810539169.2 | 申请日: | 2018-05-30 |
公开(公告)号: | CN110554867B | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 鲁嘉武 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F8/36 | 分类号: | G06F8/36;G06F8/30;G06F8/41 |
代理公司: | 北京君以信知识产权代理有限公司 11789 | 代理人: | 谭镇 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 处理 方法 装置 | ||
本申请实施例提供了一种应用程序的处理方法和一种应用程序的处理装置,所述方法包括确定待处理应用程序的依赖模块;获取所述待处理应用程序的主资源类;获取所述依赖模块的依赖资源类;建立所述依赖资源类与所述主资源类之间的映射关系;根据所述映射关系调整所述依赖模块。应用本申请实施例,可以根据映射关系并发调整应用程序的依赖模块,减少依赖模块的字段数,从而精简了应用程序。
技术领域
本申请涉及数据处理技术领域,特别是涉及一种应用程序的处理方法和一种应用程序的处理装置。
背景技术
随着应用程序的功能越来越多,应用程序也越来越大,而应用程序通常是打包之后进行发包以供用户下载安装。
对某些大型应用程序而言,例如购物平台和视频平台,功能繁多,代码量非常大,如果不做代码精简优化而直接打包,会导致整个安装包非常大,同时大量的可执行代码也会影响应用程序的线上稳定性,因此对代码的精简、优化等打包是必须的。
目前,应用程序打包通常是直接使用proguard工具对应用程序的代码一次性进行精简、优化和混淆后打包,如果在代码构建过程中生成的资源类R.java非常多,那么代码编译后的dex文件也会变大,这样安装包会比较大,打包也会耗时较长,降低了应用程序的打包效率和应用程序的发布效率。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种应用程序的处理方法和相应的一种应用程序的处理装置。
为了解决上述问题,本申请公开了一种应用程序的处理方法,包括:
确定待处理应用程序的依赖模块;
获取所述待处理应用程序的主资源类;
获取所述依赖模块的依赖资源类;
建立所述依赖资源类与所述主资源类之间的映射关系;
根据所述映射关系调整所述依赖模块。
优选地,在所述确定待处理应用程序的依赖模块之前,还包括:
获取待处理应用程序;
对所述待处理应用程序进行解压缩处理,得到所述待处理应用程序的可执行文件;
对所述可执行文件进行反编译,得到所述待处理应用程序的源代码。
优选地,所述待处理应用程序具有对应的清单文件,所述获取所述依赖模块的依赖资源类,包括:
获取依赖模块的包名;
根据所述包名在所述清单文件中查找到依赖资源类名;
根据所述依赖资源类名确定所述依赖模块的依赖资源类。
优选地,所述建立所述依赖资源类与所述主资源类之间的映射关系,包括:
确定所述依赖资源类所归属的主资源类;
建立所述主资源类与归属与所述主资源类的依赖资源类之间的映射关系。
优选地,所述根据所述映射关系调整所述依赖模块,包括:
根据所述映射关系删除所述依赖模块的依赖资源类;
根据所述映射关系将删除依赖资源类后的依赖模块的资源类指向所述主资源类。
优选地,所述根据所述映射关系将删除依赖资源类后的依赖模块的资源类指向所述主资源类,包括:
根据所述映射关系确定删除的依赖资源类对应的主资源类;
将删除依赖资源类后的依赖模块指向所述主资源类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810539169.2/2.html,转载请声明来源钻瓜专利网。