[发明专利]一种应用程序安装包生成方法、装置及电子设备有效
申请号: | 201511021602.6 | 申请日: | 2015-12-30 |
公开(公告)号: | CN106933610B | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 秦皓;杨文玉 | 申请(专利权)人: | 北京金山安全软件有限公司 |
主分类号: | G06F8/61 | 分类号: | G06F8/61 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 马敬;项京 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 安装 生成 方法 装置 电子设备 | ||
1.一种应用程序安装包生成方法,其特征在于,包括:
将目标应用程序的源代码编译成底层虚拟机的中间代码;
利用所述底层虚拟机的解释器,将所述中间代码编译为机器代码;
利用所述机器代码,生成所述目标应用程序的安装包;
所述源代码的语言,包括:
JAVA语言;
所述将目标应用程序的源代码编译成底层虚拟机的中间代码,包括:
将所述目标应用程序的源代码编译成DEX文件;
对所述DEX文件进行解析,获得所述DEX文件中包含的方法;
根据所获得的方法,生成JAVA本地接口方法;
根据所述底层虚拟机编译器规则以及生成的JAVA本地接口方法,构建指令树,其中,所述指令树中的每一节点用于存放顺序执行的指令;
遍历所述指令树,对所述指令树中的每一节点存放的指令进行解析,获得所述指令树中的每一节点的指令;
根据所获得的所述指令树中的每一节点的指令,按照所述底层虚拟机的中间代码规则生成所述底层虚拟机的中间代码。
2.根据权利要求1所述的方法,其特征在于,所述根据所获得的方法,生成JAVA本地接口方法,包括:
根据所获得的方法,按照JAVA本地接口方法的方法名的命名规则,生成JAVA本地接口方法。
3.根据权利要求1至2任意一项所述的方法,其特征在于,在所述利用所述机器代码,生成所述目标应用程序的安装包之前,所述方法还包括:
添加运行时库程序代码段;
所述利用所述机器代码,生成所述目标应用程序的安装包,包括:
利用所述运行时库程序代码段和所述机器代码,生成所述目标应用程序的安装包。
4.根据权利要求1至2任意一项所述的方法,其特征在于,所述利用所述机器代码,生成所述目标应用程序的安装包,包括:
按照预定策略对所述机器代码进行混淆处理,得到混淆处理之后的机器代码;
利用混淆处理之后的机器代码,生成所述目标应用程序的安装包。
5.根据权利要求4所述的方法,其特征在于,在所述利用混淆处理之后的机器代码,生成所述目标应用程序的安装包之前,所述方法还包括:
添加运行时库程序代码段;
所述利用混淆处理之后的机器代码,生成所述目标应用程序的安装包,包括:
利用所述运行时库程序代码段和所述混淆处理之后的机器代码,生成所述目标应用程序的安装包。
6.一种应用程序安装包生成装置,其特征在于,包括:中间代码生成模块、机器代码生成模块和安装包生成模块,其中,
所述中间代码生成模块,用于将目标应用程序的源代码编译成底层虚拟机的中间代码;
所述机器代码生成模块,用于利用所述底层虚拟机的解释器,将所述中间代码编译为机器代码;
所述安装包生成模块,用于利用所述机器代码,生成所述目标应用程序的安装包;
所述源代码的语言,包括:
JAVA语言;
所述中间代码生成模块,具体用于:
将所述目标应用程序的源代码编译成DEX文件;
对所述DEX文件进行解析,获得所述DEX文件中包含的方法;
根据所获得的方法,生成JAVA本地接口方法;
根据所述底层虚拟机编译器规则以及生成的JAVA本地接口方法,构建指令树,其中,所述指令树中的每一节点用于存放顺序执行的指令;
遍历所述指令树,对所述指令树中的每一节点存放的指令进行解析,获得所述指令树中的每一节点的指令;
根据所获得的所述指令树中的每一节点的指令,按照所述底层虚拟机的中间代码规则生成所述底层虚拟机的中间代码。
7.根据权利要求6所述的装置,其特征在于,所述根据所获得的方法,生成JAVA本地接口方法,包括:
根据所获得的方法,按照JAVA本地接口方法的方法名的命名规则,生成JAVA本地接口方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山安全软件有限公司,未经北京金山安全软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511021602.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:化工铁桶起吊装置
- 下一篇:一种换热板片用移动机构