[发明专利]一种应用程序的处理、运行方法及装置有效
申请号: | 201910569332.4 | 申请日: | 2019-06-27 |
公开(公告)号: | CN110298146B | 公开(公告)日: | 2022-04-22 |
发明(设计)人: | 丁昌坤 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F21/71 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 马敬;项京 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 处理 运行 方法 装置 | ||
1.一种应用程序的处理方法,其特征在于,所述应用程序包括可执行文件,所述方法包括:
检测所述可执行文件中调用的预设函数;
修改所述预设函数在所述可执行文件中的原调用关系,得到所述预设函数在所述可执行文件中修改后的预设调用关系;其中,所述预设调用关系包含所述可执行文件通过Java本地接口JNI调用所述预设函数;
生成包含所述预设调用关系的配置文档;
对包含所述配置文档的所述应用程序进行打包,得到处理后的应用程序;
在所述检测所述可执行文件中调用的预设函数之前,还包括:
生成待混淆对象的对象替换名,其中,所述待混淆对象为包含调用的预设函数的对象;
针对每一待混淆对象,将该待混淆对象的对象名替换为与该待混淆对象对应的对象替换名;
针对每一待混淆文件,根据该待混淆文件中待混淆对象的对象替换名,生成所述待混淆文件的文件替换名,其中,所述待混淆文件为包含待混淆对象的可执行文件;
将每一待混淆文件的文件名替换为对应的文件替换名;
所述应用程序还包括smali文件,所述方法还包括:
根据所述预设函数在所述可执行文件中修改后的预设调用关系,对所述smali文件中的代码进行相应替换。
2.根据权利要求1所述的方法,其特征在于,所述应用程序还包括so文件,所述可执行文件通过JNI调用所述so文件中的所述预设函数。
3.如权利要求1所述的方法,其特征在于,所述生成可执行文件中待混淆对象的对象替换名,包括:
按照可执行文件中每一待混淆对象对应的包名、类名、对象名、输入参数和输出参数的预设顺序,生成每一待混淆对象的对象替换名。
4.如权利要求1或3中任一项所述的方法,其特征在于,按照以下方式确定每一可执行文件中的待混淆对象:
确定可执行文件中的非静态类对象;
将所确定的非静态类对象替换为预设的静态类对象;
将可执行文件中除预先指定对象外的对象确定为待混淆对象。
5.一种应用程序的运行方法,其特征在于,所述应用程序包括可执行文件,所述方法包括:
在运行权利要求1得到的应用程序过程中,从所述应用程序中获得配置文件,所述配置文件存储有预设调用关系,所述预设调用关系为:修改所述可执行文件调用的预设函数在所述可执行文件中的原调用关系,得到所述预设函数在所述可执行文件中修改后的调用关系,所述预设调用关系包含所述可执行文件通过Java本地接口JNI调用所述预设函数;
解析所述配置文件中所述预设调用关系,调用所述预设函数;
基于解析得到的预设函数继续运行所述应用程序。
6.一种应用程序的处理装置,其特征在于,所述应用程序包括可执行文件,所述装置包括:
检测模块,用于检测所述可执行文件中调用的预设函数;
预设调用关系得到模块,用于修改所述预设函数在所述可执行文件中的原调用关系,得到所述预设函数在所述可执行文件中修改后的预设调用关系;其中,所述预设调用关系包含在所述可执行文件通过Java本地接口JNI调用所述预设函数;
配置文档生成模块,用于生成包含所述预设调用关系的配置文档;
应用程序生成模块,用于对包含所述配置文档的所述应用程序进行打包,得到处理后的应用程序;
对象替换名生成模块,用于生成待混淆对象的对象替换名,其中,所述待混淆对象为包含调用的预设函数的对象;
第一替换模块,用于针对每一待混淆对象,将该待混淆对象的对象名替换为与该待混淆对象对应的对象替换名;
文件替换名生成模块,用于针对每一待混淆文件,根据该待混淆文件中待混淆对象的对象替换名,生成所述待混淆文件的文件替换名,其中,所述待混淆文件为包含待混淆对象的可执行文件;
第二替换模块,用于将每一待混淆文件的文件名替换为对应的文件替换名;
所述应用程序还包括smali文件,所述装置还包括:
根据所述预设函数在所述可执行文件中修改后的预设调用关系,对所述smali文件中的代码进行相应替换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910569332.4/1.html,转载请声明来源钻瓜专利网。