[发明专利]应用程序的资源文件查找方法、装置、设备及存储介质在审
| 申请号: | 202211590692.0 | 申请日: | 2022-12-12 |
| 公开(公告)号: | CN115794738A | 公开(公告)日: | 2023-03-14 |
| 发明(设计)人: | 杨志 | 申请(专利权)人: | 深圳依时货拉拉科技有限公司 |
| 主分类号: | G06F16/11 | 分类号: | G06F16/11;G06F16/14;G06F16/16;G06F8/61 |
| 代理公司: | 深圳瑞天谨诚知识产权代理有限公司 44340 | 代理人: | 温青玲 |
| 地址: | 518000 广东省深圳市福田区梅林街*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 应用程序 资源 文件 查找 方法 装置 设备 存储 介质 | ||
1.一种应用程序的资源文件查找方法,其特征在于,包括:
获取应用程序中通过资源名称获取资源的源代码;
调用预先构建的代码替换插件,将所述源代码按照预设规则替换成自定义的目标代码;
在所述目标代码下,根据系统提供的资源文件查找方式查找资源文件;
当确定未查找到资源文件时,查找所述目标代码中的R文件名称对应的ID,得到目标ID;
根据所述目标ID查找资源文件,得到目标资源文件。
2.根据权利要求1所述的方法,其特征在于,所述将所述源代码按照预设规则替换成自定义的目标代码,包括:
根据所述代码替换插件的ASM字节码替换技术,将所述源代码替换成自定义的目标代码。
3.根据权利要求1所述的方法,其特征在于,所述查找所述目标代码中的R文件名称对应的ID,得到目标ID,包括:
根据所述目标代码,获取应用程序的R.java资源名称对应的ID映射文件;
根据所述ID映射文件查找R文件名称对应的ID,得到目标ID。
4.根据权利要求1所述的方法,其特征在于,所述获取应用程序中通过资源名称获取资源的源代码之后,还包括:
创建自定义的代码类文件,将通过资源名称获取资源的源代码存储在所述代码类文件中;其中,所述代码类文件包括java类文件,所述java类文件定义了通过资源名称获取资源的方法。
5.根据权利要求1所述的方法,其特征在于,所述将所述源代码按照预设规则替换成自定义的目标代码,包括:
为所述源代码创建插件项目;
调用所述代码替换插件中的gradle编译工具,为所述插件项目注册自定义代码转换器;
根据所述自定义代码转换器拦截所述源代码对应的编译输入数据,找到所述源代码中通过资源名称获取资源的代码;
将所述代码进行解析替换,得到目标代码。
6.根据权利要求5所述的方法,其特征在于,所述将所述代码进行解析替换,得到目标代码,包括:
通过AndroID Studio构建Apk对象;
根据所述Apk对象在编译过程中完成对所述代码的解析替换,得到目标代码。
7.根据权利要求5所述的方法,其特征在于,所述将所述代码进行解析替换,得到目标代码之后,还包括:
将解析替换后的所述目标代码输出打包,得到应用程序安装包。
8.一种应用程序的资源文件查找装置,其特征在于,包括:
获取模块,用于获取应用程序中通过资源名称获取资源的源代码;
调用模块,用于调用预先构建的代码替换插件,将所述源代码按照预设规则替换成自定义的目标代码;
第一查找模块,用于在所述目标代码下,根据系统提供的资源文件查找方式查找资源文件;
确定模块,用于当确定未查找到资源文件时,查找所述目标代码中的R文件名称对应的ID,得到目标ID;
第二查找模块,用于根据所述目标ID查找资源文件,得到目标资源文件。
9.一种计算机设备,其特征在于,包括:
处理器;
存储器;
其中,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的应用程序的资源文件查找方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1-7任一项所述的应用程序的资源文件查找方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳依时货拉拉科技有限公司,未经深圳依时货拉拉科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211590692.0/1.html,转载请声明来源钻瓜专利网。





