[发明专利]应用程序更新的方法、装置、设备和计算机存储介质在审
申请号: | 202010806694.3 | 申请日: | 2020-08-12 |
公开(公告)号: | CN112130888A | 公开(公告)日: | 2020-12-25 |
发明(设计)人: | 沈约得 | 申请(专利权)人: | 百度时代网络技术(北京)有限公司 |
主分类号: | G06F8/658 | 分类号: | G06F8/658 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 田宏宾 |
地址: | 100193 北京市海淀区东*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 更新 方法 装置 设备 计算机 存储 介质 | ||
1.一种应用程序更新的方法,包括:
通过应用程序与服务器端之间的长连接获取所述服务器端推送的更新消息;
从所述更新消息中获取包含更新组件信息的文件;
将所述更新组件信息绑定至应用程序宿主模块的代理活动组件,以供所述代理活动组件执行所述更新组件的生命周期。
2.根据权利要求1所述的方法,在从所述更新事件消息中获取包含更新组件信息的文件之前,还包括:
从所述更新消息中解析得到更新类型信息,若所述更新类型信息指示功能更新,则继续执行从所述更新事件消息中获取包含更新组件信息的文件。
3.根据权利要求1所述的方法,在将所述更新组件信息绑定至应用程序宿主模块的代理活动组件之前,还包括:
若所述应用程序宿主模块尚不存在代理活动组件,则创建代理活动组件。
4.根据权利要求1至3中任一项所述的方法,其中,将所述更新组件信息绑定至应用程序宿主模块的代理活动组件包括:
加载所述更新组件的字节码文件对象;
从所述更新组件信息中获取所述更新组件的相关资源信息;
从所述更新组件信息中获取所述更新组件的生命周期对应的各方法信息;
将所述更新组件的相关资源信息和生命周期对应的各方法信息传递给所述代理活动组件。
5.根据权利要求4所述的方法,其中,所述代理活动组件执行所述更新组件的生命周期包括:
所述代理活动组件调用生命周期对应的方法加载所述更新组件的字节码文件对象;
利用所述相关资源信息实例化所述字节码文件对象;
调用所述更新组件的生命周期对应的方法。
6.根据权利要求2所述的方法,若所述功能更新为已有功能的修改,则该方法还包括:
删除所述更新组件对应的已有功能的活动组件。
7.根据权利要求2所述的方法,还包括:
若所述更新类型信息指示热修复,则从所述更新消息中获取类文件以及类文件的存储路径参数;
将所述类文件替换应用程序在所述存储路径参数所指示地址存储的类文件。
8.根据权利要求2所述的方法,还包括:
若所述更新类型信息指示界面资源更新,则从所述更新消息中获取界面资源文件以及界面资源文件的存储路径参数,所述界面资源包括界面皮肤或界面上的指定元素;
将所述界面资源文件替换应用程序在所述存储路径参数所指示地址存储的界面资源文件。
9.一种应用程序更新的装置,包括:
长连接管理模块,用于通过应用程序与服务器端之间的长连接获取所述服务器端推送的更新消息;
消息解析模块,用于从所述更新消息中获取包含更新组件信息的文件;
组件绑定模块,用于将所述更新组件信息绑定至应用程序宿主模块的代理活动组件,以供所述代理活动组件执行所述更新组件的生命周期。
10.根据权利要求9所述的装置,其中,所述消息解析模块,还用于从所述更新消息中解析得到更新类型信息,若所述更新类型信息指示功能更新,则继续执行从所述更新事件消息中获取包含更新组件信息的文件。
11.根据权利要求9所述的装置,其中,所述组件绑定模块在将所述更新组件信息绑定至应用程序宿主模块的代理活动组件之前,还用于若所述应用程序宿主模块尚不存在代理活动组件,则创建代理活动组件。
12.根据权利要求9至11中任一项所述的装置,其中,所述组件绑定模块,具体用于:加载所述更新组件的字节码文件对象;从所述更新组件信息中获取所述更新组件的相关资源信息;从所述更新组件信息中获取所述更新组件的生命周期对应的各方法信息;将所述更新组件的相关资源信息和生命周期对应的各方法信息传递给所述代理活动组件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度时代网络技术(北京)有限公司,未经百度时代网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010806694.3/1.html,转载请声明来源钻瓜专利网。