[发明专利]在编译和部署中动态更新应用有效
申请号: | 201680053784.1 | 申请日: | 2016-11-18 |
公开(公告)号: | CN108027722B | 公开(公告)日: | 2021-09-17 |
发明(设计)人: | 阿诺·克劳德·韦伯;西瓦库马尔·维卢萨米;斯特凡妮·萨德·卡斯伯特森;克里斯托弗·马修·沃林顿;杰罗姆·多切斯;托布约恩·诺拜;埃斯特班·德拉卡纳尔;乔莫·费希尔;泽维尔·杜克罗赫特 | 申请(专利权)人: | 谷歌有限责任公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/65 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 周亚荣;安翔 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 编译 部署 动态 更新 应用 | ||
1.一种用于动态更新应用的方法,包括:
响应于接收到使构建器计算系统将用于应用的源代码集编译成编译目标集的初始用户输入,将所述源代码集编译成所述编译目标集,其中,所述源代码集的子集被编译成所述编译目标集的初始子集;
由所述构建器计算系统向所述编译目标集中的至少一个编译目标中注入以下:
表示用于存储值的变量的字节码,
表示条件语句的字节码,其中,该字节码是在表示所述应用中的功能的程序逻辑的字节码之前被注入到所述编译目标集中的所述至少一个编译目标内的,其中,所述条件语句指示所述功能的更新版本是否被加载在测试环境的存储器中,以及
在所述条件语句被满足时调用所述功能的所述更新版本的字节码;
由所述构建器计算系统部署所述编译目标集以发起所述应用在所述测试环境中的执行;
在对所述源代码集的至少所述子集进行修改之后,响应于在所述构建器计算系统处接收使所述构建器计算系统将所述源代码集的至少所述子集编译成所述编译目标集的更新子集的后续用户输入,将所述源代码集的至少所述子集编译成所述编译目标集的更新子集;
响应于确定所述更新子集包括指示所述更新子集相对于所述初始子集发生了变化的指示符,在不终止所述应用在所述测试环境中的执行的情况下部署所述编译目标集的所述更新子集以更新所述应用。
2.根据权利要求1所述的方法,进一步包括:
避免部署所述编译目标集中的其它编译目标以更新所述应用,其中,所述其它编译目标未包括在所述编译目标集的所述更新子集中。
3.根据权利要求1所述的方法,其中,所述测试环境是在所述构建器计算系统处执行的仿真器、所述构建器计算系统的目录、以及能够操作地耦合至所述构建器计算系统的远程计算装置中的至少一个。
4.根据权利要求3所述的方法,其中,对所述应用的所述更新参照所述编译目标集的所述更新子集中的编译目标而更新了所述编译目标集的所述初始子集中的编译目标,其中,在所述应用的执行期间并且在部署所述编译目标集的所述更新子集之前,所述编译目标集的所述初始子集中的所述编译目标被存储在所述测试环境的存储器中。
5.根据权利要求1至4中任一项所述的方法,进一步包括:
响应于将所述源代码集的至少所述子集编译成所述编译目标集的所述更新子集,由所述构建器计算装置更新所述编译目标集的所述更新子集中的编译目标的名称、在所述编译目标集的所述更新子集中的所述编译目标内的变量的名称、或者在所述编译目标集的所述更新子集中的所述编译目标内的功能的名称,其中,所述更新的名称是指示所述更新子集相对于所述初始子集发生了变化的所述指示符。
6.根据权利要求1至4中任一项所述的方法,
其中,由所述构建器计算系统部署所述编译目标集以发起所述应用的执行进一步包括:将所述编译目标集封装到表示所述应用的第一应用程序包中并且将所述应用程序包发送至测试环境,以及
其中,部署所述编译目标集的所述更新子集以基于所述编译目标集的所述更新子集更新所述应用进一步包括:在不将所述编译目标集的所述更新子集封装到表示所述应用的第二应用程序包中的情况下,将所述编译目标集的所述更新子集发送至所述测试环境。
7.根据权利要求1至4中任一项所述的方法,进一步包括:
响应于确定在所述源代码集的所述子集中的类包括至少两个超级构造函数:
由所述构建器计算装置注入表示调用新构造函数的程序逻辑的字节码的第一集合;并且
由所述计算装置注入表示所述新构造函数的字节码的第二集合,其中,所述新构造函数至少部分地基于从所述字节码的第一集合接收到的参数来调用所述两个超级构造函数中的至少一个超级构造函数。
8.一种计算装置,所述计算装置包括用于执行根据权利要求1至7所述的方法中的任一个的装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于谷歌有限责任公司,未经谷歌有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680053784.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:互锁模块化衬底支撑柱
- 下一篇:发射器及滴灌用输送管