[发明专利]一种安卓应用程序增量方法有效
申请号: | 201911289299.6 | 申请日: | 2019-12-10 |
公开(公告)号: | CN111061486B | 公开(公告)日: | 2022-06-24 |
发明(设计)人: | 胥晓杰 | 申请(专利权)人: | 杭州有赞科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/658;G06F9/445 |
代理公司: | 杭州裕阳联合专利代理有限公司 33289 | 代理人: | 姚宇吉 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用程序 增量 方法 | ||
本发明公开了一种安卓应用程序增量方法,涉及安卓应用程序开发技术领域,包括如下步骤:对程序源代码进行修改,对修改后的程序源代码进行分类,对修改后的程序源代码进行增量编译产出增量应用程序,重新启动程序应用程序并加载增量应用程序。本发明只增量编译修改过的部分,应用程序以插件化的形式加载增量包,增加了增量编译的适配性,适配各种代码风格。
【技术领域】
本发明涉及安卓应用程序开发技术领域,具体涉及一种安卓应用程序增量方法。
【背景技术】
现有技术中,安卓应用程序编译加速只有Google官方的Instant Run作为面向全部Android studio应用的通用型工具。Instant Run只对修改的部分进行编译,而不对整个程序代码都进行编译,因此当开发者在Android Studio中修改了程序的代码,Instant Run可以很快的让开发者看到修改效果。InstantRun本身对于Android全系统提供了很好的支持,修改底层编译模式确保了其在所有设备上都可以正常运行。但是,由于InstantRun的通用适配性,如果项目经过一些改造,使用了一些InstantRun无法兼容的插件,或其他的InstantRun预料之外的代码风格,这些不稳定因素将造成InstantRun在大型项目中几乎不能被使用。
【发明内容】
为解决前述问题,本发明提供了一种安卓应用程序增量方法,增量编译修改过的部分,应用程序以插件化的形式加载增量包,增加了增量编译的适配性,适配各种代码风格。
为了达到上述目的,本发明采用如下技术方案:
一种安卓应用程序增量方法,包括如下步骤:
对程序源代码进行修改;
对修改后的程序源代码进行分类;
找出程序源代码中修改的部分,依据分类对修改后的程序源代码进行增量编译;
产出增量应用程序;
重新启动程序应用程序并加载增量应用程序。
可选的,对修改后的程序源代码进行分类,分类包括:Java类型、Kotlin类型以及安卓资源类型。
可选的,依据分类对修改后的程序源代码进行增量编译时,Java类型使用JavaC命令编译生成class文件,Kotlin类型使用KotlinC命令编译生成class文件,安卓资源类型使用AAPT2工具编译成flat文件。
可选的,找出程序源代码中修改的部分由Git diff命令执行。
可选的,对程序源代码进行修改后,运行壳程序,由壳程序完成安卓应用程序增量方法中的其他步骤。
可选的,所述壳程序为Savitart插件。
可选的,运行壳程序,所述壳程序检测是否有新的程序源代码脚本,如果有,获取新的程序源代码脚本,基于新的程序源代码脚本由壳程序完成安卓应用程序增量方法中的其他步骤。
可选的,程序源代码中包括安卓资源文件,对未修改的程序源代码进行全量编译时,使用参数emit-ids记录全量编译时所有安卓资源文件中的资源ID,并记录到本地文件中。
可选的,依据分类对修改后的程序源代码进行增量编译时,使用stable-ids读取本地文件中的所有资源ID。
可选的,每次执行所述安卓应用程序增量方法时,找出程序源代码中修改的部分由修改后的程序源代码与最初版的程序源代码进行比较。
本发明具有如下有益效果:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州有赞科技有限公司,未经杭州有赞科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911289299.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种注入气体的酸化方法
- 下一篇:异常检测方法和系统及计算机可读存储介质