[发明专利]一种应用程序包生成方法、装置、编译服务器及计算机可读存储介质有效
申请号: | 202210053752.9 | 申请日: | 2022-01-18 |
公开(公告)号: | CN114398102B | 公开(公告)日: | 2023-08-08 |
发明(设计)人: | 李博 | 申请(专利权)人: | 杭州米络星科技(集团)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F8/41 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 杜杨 |
地址: | 310000 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用 程序包 生成 方法 装置 编译 服务器 计算机 可读 存储 介质 | ||
本发明的实施例提供了一种应用程序包生成方法、装置、编译服务器及计算机可读存储介质,方法包括:在目标应用程序的源码编译期间,读取各个功能模块的注册表信息,将各注册表信息汇总为目标注册表,依据各功能模块打包生成目标应用程序包时,将各功能模块的注册表信息替换为目标注册表,将目标注册表注册至目标应用程序包中,以使得接收目标应用程序包的电子设备对目标应用程序启动时,直接完成目标应用程序的启动。能够在应用程序运行之前就将注册表生成出来,从而避免运行期的反射生成,从而优化应用程序的启动速度,提升性能。
技术领域
本发明涉及数据处理技术领域,具体而言,涉及一种应用程序包生成方法、装置、编译服务器及计算机可读存储介质。
背景技术
目前,应用程序在电子设备中被点击时,电子设备需要获取被点击应用程序的各功能模块的注册信息,并将注册信息整个为一个注册表,最终在各注册信息整合为一个注册表后,该应用程序才可以运行。
对于目前的应用程序开启时,需要该应用程序的功能模块的注册表信息的获取和合成,造成开启应用程序时间较慢。
发明内容
本发明的目的在于提供一种应用程序包生成方法、装置、编译服务器及计算机可读存储介质,能够提升应用程序的启动性能。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种应用程序包生成方法,应用于编译服务器,所述编译服务器包括目标应用程序对应的多个功能模块,所述方法包括:
在目标应用程序的源码编译期间,读取各个功能模块的注册表信息;
将各所述注册表信息汇总为目标注册表;
依据各所述功能模块打包生成目标应用程序包时,将各所述功能模块的注册表信息替换为目标注册表;
将所述目标注册表注册至所述目标应用程序包中,以使得接收所述目标应用程序包的电子设备对所述目标应用程序启动时,直接完成所述目标应用程序的启动。
在可选的实施方式中,所述在目标应用程序的源码编译期间,读取各个功能模块的注册表信息的步骤,包括:
在目标应用程序的源码编译期间,基于字节码插桩技术,插入第一代码;
基于所述第一代码,读取各个功能模块的注册表信息;
所述将各所述注册表信息汇总为目标注册表的步骤,包括:
基于所述第一代码,将各所述注册表信息汇总为目标注册表。
在可选的实施方式中,所述在目标应用程序的源码编译期间,基于字节码插桩技术,插入第一代码的步骤,包括:
将所述目标应用程序的源码java文件转换为各功能模块的注册表的class文件;
在将所述class文件转换为dex文件期间,插入第一代码。
在可选的实施方式中,所述编译服务器还包括ASM工具,所述依据各所述功能模块打包生成目标应用程序包时,将各所述功能模块的注册表信息替换为目标注册表的步骤,包括:
通过所述ASM工具将各个功能模块的注册表信息替换为目标注册表。
在可选的实施方式中,所述方法还包括:
所述编译服务器将所述目标应用程序包发送至电子设备,其中,所述电子设备在对所述目标应用程序启动时,将所述目标注册表初始化。
第二方面,本申请实施例提供了一种应用程序包生成装置,所述装置包括:
读取模块,用于在目标应用程序的源码编译期间,读取各个功能模块的注册表信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州米络星科技(集团)有限公司,未经杭州米络星科技(集团)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210053752.9/2.html,转载请声明来源钻瓜专利网。