一种应用更新方法、装置和存储介质制造方法及图纸

技术编号:24010108 阅读:77 留言:0更新日期:2020-05-02 01:27
本发明专利技术实施例公开了一种应用更新方法、装置和存储介质,其中,通过在有React‑Native应用启动时,获取到该React‑Native应用中当前功能模块的第一版本信息,以及获取到该React‑Native应用中当前更新原生模块的第二版本信息,并利用该第一版本信息和第二版本信息生成查询请求发送至更新服务器,查询更新服务器是否存在更新功能模块以及实现更新功能模块的功能所需的更新原生模块,当接收到更新服务器返回的用于指示存在更新功能模块以及更新原生模块的应答信息时,根据应答信息从更新服务器获取更新功能模块以及更新原生模块,并更新React‑Native应用,确保前述React‑Native应用能够实现前述更新功能模块的功能,提高了更新的成功率。

An application update method, device and storage medium

【技术实现步骤摘要】
一种应用更新方法、装置和存储介质
本专利技术涉及计算机
,具体涉及一种应用更新方法、装置和存储介质。
技术介绍
目前,虽然通过React-Native热更新的方式能够缩短新功能上线的整体流程。但是,目前接入React-Native的方式一般是在原生的React-Native应用已有代码的基础上集成,开发者在开发新功能的时候,可能需要复用一些Java代码,而不是用JavaScript重新实现一遍;又或者需要实现某些更高性能的、多线程的代码,譬如图片处理、数据库、或者各种高级扩展等等。然而,相关技术中,在对React-Native应用进行热更新时,可能更新失败而导致React-Native应用无法实现功能。
技术实现思路
本专利技术实施例提供一种应用更新方法、装置和存储介质,能够提高对React-Native应用进行更新的成功率。本专利技术实施例提供一种应用更新方法,包括:当React-Native应用启动时,获取所述React-Native应用的当前功能模块的第一版本信息,以及获取所述React-Native应用的当前更新原生模块的第二版本信息;生成包括所述第一版本信息和所述第二版本信息的查询请求,并将所述查询请求发送至更新服务器,用于查询所述更新服务器是否存在更新功能模块以及实现所述更新功能模块的功能所需的更新原生模块;当接收到所述更新服务器返回的用于指示存在所述更新功能模块以及所述更新原生模块的应答信息时,根据所述应答信息从所述更新服务器获取所述更新功能模块以及所述更新原生模块;根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用。相应的,本专利技术实施例还提供一种应用更新装置,包括:信息获取模块,用于当React-Native应用启动时,获取所述React-Native应用的当前功能模块的第一版本信息,以及获取所述React-Native应用的当前更新原生模块的第二版本信息;更新检测模块,用于生成包括所述第一版本信息和所述第二版本信息的查询请求,并将所述查询请求发送至更新服务器,用于查询所述更新服务器是否存在更新功能模块以及实现所述更新功能模块的功能所需的更新原生模块;更新获取模块,用于当接收到所述更新服务器返回的用于指示存在所述更新功能模块以及所述更新原生模块的应答信息时,根据所述应答信息从所述更新服务器获取所述更新功能模块以及所述更新原生模块;应用更新模块,用于根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用。此外,本专利技术实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本专利技术实施例所提供的任一种应用更新方法中的步骤。本专利技术实施例通过在有React-Native应用启动时,获取到该React-Native应用中当前功能模块的第一版本信息,以及获取到该React-Native应用中当前更新原生模块的第二版本信息,并利用该第一版本信息和第二版本信息生成查询请求发送至更新服务器,查询更新服务器是否存在更新功能模块以及实现更新功能模块的功能所需的更新原生模块,当接收到更新服务器返回的用于指示存在更新功能模块以及更新原生模块的应答信息时,根据应答信息从更新服务器获取更新功能模块以及更新原生模块,并更新React-Native应用,确保前述React-Native应用能够实现前述更新功能模块的功能,提高了更新的成功率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的应用更新方法的一流程示意图;图2是本专利技术实施例中实现新增功能的示意图;图3是本专利技术实施例中调用与React-Native应用关联的更新原生模块的示意图;图4是本专利技术实施例提供的应用更新方法的应用场景示例图;图5是本专利技术实施例提供的应用更新方法的另一流程示意图;图6是本专利技术实施例提供的应用更新装置的结构示意图;图7是本专利技术实施例提供的终端的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种应用更新方法,包括:当React-Native应用启动时,获取React-Native应用的当前功能模块的第一版本信息,以及获取React-Native应用的当前更新原生模块的第二版本信息;生成包括第一版本信息和第二版本信息的查询请求,并将查询请求发送至更新服务器,用于查询更新服务器是否存在更新功能模块以及实现更新功能模块的功能所需的更新原生模块;当接收到更新服务器返回的用于指示存在更新功能模块以及更新原生模块的应答信息时,根据应答信息从更新服务器获取更新功能模块以及更新原生模块;根据更新功能模块以及更新原生模块更新React-Native应用。如图1所示,该应用更新方法的流程可以如下:在101中,当React-Native应用启动时,获取React-Native应用的当前功能模块的第一版本信息,以及获取React-Native应用的当前更新原生模块的第二版本信息。目前,开发者们在互联网上通过共享开源项目来使得促进各种开发技术的发展成熟,React-Native就是其中一组开源项目,React-Native是由FaceBook开源的一个跨平台移动应用的开发框架,它能在JavaScript(一种解释性脚本语言,代码不需要进行预编译即可被运行)中用React(一种设计思想)抽象操作系统元素的用户接口组件,代替文档对象模型进行渲染,利用React-Native开发应用为开发者们提供了便利。应当说明的是,本专利技术实施例中所称React-Native应用即由开发者利用React-Native开发的应用。在本专利技术实施例中,终端(比如智能手机、笔记本电脑、平板电脑等)对React-Native应用的启动进行侦测,以确定是否存在启动的React-Native应用。比如,可以侦测是否存在新增的React-Native应用的进程,若存在,则确定存在启动的React-Native应用。其中,React-Native应用可以是各种类型的React-Native应用,包括但不限于游戏类React-Native应用、影音娱乐类React-Native应用、实用工具类React-Native应用以及社交通信类React-Native应用等。当侦测到有启动的React-Native应用时,终端获取该React-Native应用的第一版本本文档来自技高网...

【技术保护点】
1.一种应用更新方法,其特征在于,包括:/n当React-Native应用启动时,获取所述React-Native应用的当前功能模块的第一版本信息,以及获取所述React-Native应用的当前更新原生模块的第二版本信息;/n生成包括所述第一版本信息和所述第二版本信息的查询请求,并将所述查询请求发送至更新服务器,用于查询所述更新服务器是否存在更新功能模块以及实现所述更新功能模块的功能所需的更新原生模块;/n当接收到所述更新服务器返回的用于指示存在所述更新功能模块以及所述更新原生模块的应答信息时,根据所述应答信息从所述更新服务器获取所述更新功能模块以及所述更新原生模块;/n根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用。/n

【技术特征摘要】
1.一种应用更新方法,其特征在于,包括:
当React-Native应用启动时,获取所述React-Native应用的当前功能模块的第一版本信息,以及获取所述React-Native应用的当前更新原生模块的第二版本信息;
生成包括所述第一版本信息和所述第二版本信息的查询请求,并将所述查询请求发送至更新服务器,用于查询所述更新服务器是否存在更新功能模块以及实现所述更新功能模块的功能所需的更新原生模块;
当接收到所述更新服务器返回的用于指示存在所述更新功能模块以及所述更新原生模块的应答信息时,根据所述应答信息从所述更新服务器获取所述更新功能模块以及所述更新原生模块;
根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用。


2.根据权利要求1所述的应用更新方法,其特征在于,所述React-Native应用包括React-Native框架和插件框架,所述更新原生模块被封装为插件应用,所述根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用的步骤,包括:
基于所述插件框架安装所述插件应用,并在安装完成所述插件应用时,基于所述React-Native框架加载所述更新功能模块中的代码。


3.根据权利要求1所述的应用更新方法,其特征在于,所述更新原生模块被封装为补丁包,所述根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用的步骤之后,还包括:
当所述React-Native应用需要实现所述更新功能模块的功能时,调用预设钩子函数,使得所述React-Native应用调用所述补丁包以实现所述更新功能模块的功能。


4.根据权利要求1-3任一项所述的应用更新方法,其特征在于,所述应答信息包括所述更新功能模块的第一下载地址和所述更新原生模块的第二下载地址,所述根据所述应答信息获取所述更新功能模块以及所述更新原生模块的步骤,包括:
根据所述第一下载地址从所述更新服务器下载所述更新功能模块,以及根据所述第二下载地址从所述更新服务器下载所述更新原生模块。


5.根据权利要求1-3任一项所述的应用更新方法,其特征在于,所述根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用的步骤之前,还包括:
对所述更新功能模块和所述更新原生模块进行安全校验;
当所述更新功能模块和所述更新原生模块通过安全校验时,根据所述更新功能模块以及所述更新原生模块更新所述React-Native应用。

【专利技术属性】
技术研发人员:冯俊
申请(专利权)人:腾讯音乐娱乐科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1