[发明专利]一种数据处理方法、装置、设备及存储介质有效
申请号: | 201810896882.2 | 申请日: | 2018-08-08 |
公开(公告)号: | CN109597620B | 公开(公告)日: | 2022-04-01 |
发明(设计)人: | 万里鹏 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/71 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 装置 设备 存储 介质 | ||
本公开实施例公开了一种数据处理方法、装置、设备及存储介质,所述方法包括:获取与源码文件关联的数据变更信息,其中,所述源码文件为二进制文件;根据所述数据变更信息的数据变更类型,生成与所述数据变更信息匹配的数据处理程序;调用所述数据处理程序对所述源码文件进行处理,形成与所述数据变更信息匹配的新的源码文件。本公开实施例的技术方案实现在不修改其他资源的前提下,提高安装包的修改打包效率,从而加强安装包修改打包的通用性。
技术领域
本公开实施例涉及计算机软件应用技术领域,尤其涉及一种数据处理方法、装置、设备及存储介质。
背景技术
对于安卓系统来说,通过APK(AndroidPackage,Android安装包)来安装应用是一种常用的应用安装手段。通过APK安装应用时,解压APK后在解压文件中都会存在AndroidManifest.xml文件。AndroidManifest.xml是Android开发中非常重要的一个文件,其中记录向系统声明的权限和组件等。AndroidManifest.xml在编译打包过程中,被编译成特殊的二进制格式,而非明文,这种格式被称作AXML(Android Binary XML),既可以减少文件体积,又会加快IO(Input/Output,输入/输出)速度。
当需要对编译好的APK进行修改并重新打包时,现有修改AndroidManifest的常规思路是逆向编译,修改之后再编译回去。这种修改方式不仅会浪费大量时间,而且在对AndroidManifest文件编译时会依赖相关资源,从而引发资源引用问题。
发明内容
本公开实施例提供一种数据处理方法、装置、设备及存储介质,实现在不修改其他资源的前提下,提高安装包的修改打包效率,从而加强安装包修改打包的通用性。
第一方面,本公开实施例提供了一种数据处理方法,包括:
获取与源码文件关联的数据变更信息,其中,所述源码文件为二进制文件;
根据所述数据变更信息的数据变更类型,生成与所述数据变更信息匹配的数据处理程序;
调用所述数据处理程序对所述源码文件进行处理,形成与所述数据变更信息匹配的新的源码文件。
可选的,根据所述数据变更信息的数据变更类型,生成与所述数据变更信息匹配的数据处理程序,包括:
获取用于更改源码文件的数据处理基础代码,其中,在所述数据处理基础代码中包括至少一个与数据变更类型匹配的空白区域;
在所述数据处理基础代码中,搜索与所述数据变更信息的数据变更类型对应的空白区域;
在所述空白区域中对应填充所述数据变更信息,以生成与所述数据变更信息匹配的数据处理程序。
可选的,所述源码文件包括:基于Android系统的AndroidManifest.xml配置文件;
其中,所述AndroidManifest.xml配置文件包括:头部、字符串区、资源标识区以及XML文件区。
可选的,所述数据变更信息的数据变更类型包括:在所述源码文件中注入的新的服务;
调用所述数据处理程序对所述源码文件处理,形成与所述数据变更信息匹配的新的源码文件,包括:
调用所述数据处理程序,将所述服务的服务名称写入所述源码文件中的字符串区,并记录与所述服务对应的索引值;
在所述源码文件的XML文件区中搜索与所述服务关联的根节点;
建立与所述服务对应的服务节点,并根据与所述服务对应的索引值以及所述服务的属性信息,更新所述服务节点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810896882.2/2.html,转载请声明来源钻瓜专利网。