应用更新方法、装置、计算机设备及存储介质与流程

文档序号:29119221发布日期:2022-03-04 20:46阅读:来源:国知局

技术特征:
1.一种应用更新方法,其特征在于,所述方法包括:获取应用的更新信息,所述更新信息包括至少一个函数名称和每个函数名称对应的更新代码;在所述应用运行过程中,拦截携带目标函数名称的调用指令,所述目标函数名称为所述更新信息中的任一函数名称;执行所述目标函数名称对应的目标更新代码。2.根据权利要求1所述的方法,其特征在于,所述在所述应用运行过程中,拦截携带目标函数名称的调用指令,包括:在所述应用运行过程中,通过所述应用中的动态引擎,拦截携带目标函数名称的调用指令;所述执行所述目标函数名称对应的目标更新代码,包括:通过所述动态引擎,执行所述目标函数名称对应的目标更新代码。3.根据权利要求2所述的方法,其特征在于,所述动态引擎包括消息拦截器;所述在所述应用运行过程中,通过所述应用中的动态引擎,拦截携带目标函数名称的调用指令,包括:在所述应用运行过程中,通过所述消息拦截器,拦截携带目标函数名称的调用指令。4.根据权利要求3所述的方法,其特征在于,所述在所述应用运行过程中,通过所述消息拦截器,拦截携带目标函数名称的调用指令,包括:在所述应用运行过程中,通过所述消息拦截器监听到所述调用指令,将所述目标函数名称对应的函数指针指向消息转发函数指针;运行所述消息转发函数指针对应的接口拦截函数,对所述调用指令进行拦截。5.根据权利要求4所述的方法,其特征在于,所述运行所述消息转发函数指针对应的接口拦截函数,对所述调用指令进行拦截之后,所述执行所述目标函数名称对应的目标更新代码之前,所述方法还包括:将所述接口拦截函数的函数指针指向所述消息拦截器中的回调函数;运行所述回调函数,在所述更新信息中查询所述目标函数名称对应的目标更新代码。6.根据权利要求2所述的方法,其特征在于,所述更新代码包括多个字符,所述动态引擎包括词法分析器、语法解析器及语句执行器;所述通过所述动态引擎,执行所述目标函数名称对应的目标更新代码,包括:通过所述词法分析器,对所述更新代码进行分析处理,得到令牌token组合,所述token组合包括多个token,每个token包括字符组合及对应的字符类型,所述字符组合包括至少一个字符;通过所述语法解析器,对所述多个token进行语法解析,得到抽象语法树,所述抽象语法树包括单行语句或控制语句中的至少一种;通过所述语句执行器,执行所述抽象语法树中的语句。7.根据权利要求6所述的方法,其特征在于,所述通过所述词法分析器,对所述更新代码进行分析处理,得到令牌token组合,包括:通过所述词法分析器,按照所述多个字符的顺序,对所述更新代码进行分析处理,得到多个字符组合;
根据所述多个字符组合及每个字符组合对应的字符类型,生成所述多个token;对所述多个token进行组合处理,得到所述token组合。8.根据权利要求6所述的方法,其特征在于,所述抽象语法树包括多个节点,每个节点包括所述单行语句或所述控制语句;所述通过所述语句执行器,执行所述抽象语法树中的语句,包括:通过所述语句执行器,遍历所述抽象语法树中的每个节点,确定所述调用指令对应的路径,所述路径包括至少一个节点;按照所述路径,执行所述路径中每个节点的语句。9.根据权利要求1所述的方法,其特征在于,所述获取应用的更新信息,包括:向服务器发送更新信息获取请求;接收所述服务器根据所述更新信息获取请求返回的所述更新信息。10.根据权利要求1所述的方法,其特征在于,所述获取应用的更新信息,包括:向服务器发送更新信息获取请求,以使所述服务器按照目标协议对所述更新信息进行处理,得到更新响应数据,将所述更新响应数据返回至所述应用;接收所述服务器返回的所述更新响应数据;按照所述目标协议,从所述更新响应数据中提取所述更新信息。11.一种应用更新装置,其特征在于,所述装置包括:更新信息获取模块,用于获取应用的更新信息,所述更新信息包括至少一个函数名称和每个函数名称对应的更新代码;指令拦截模块,用于在所述应用运行过程中,拦截携带目标函数名称的调用指令,所述目标函数名称为所述更新信息中的任一函数名称;代码执行模块,用于执行所述目标函数名称对应的目标更新代码。12.根据权利要求11所述的装置,其特征在于,所述指令拦截模块,用于在所述应用运行过程中,通过所述应用中的动态引擎,拦截携带目标函数名称的调用指令;所述代码执行模块,用于通过所述动态引擎,执行所述目标函数名称对应的目标更新代码。13.根据权利要求12所述的装置,其特征在于,所述更新代码包括多个字符,所述动态引擎包括词法分析器、语法解析器及语句执行器;所述代码执行模块,包括:分析处理单元,用于通过所述词法分析器,对所述更新代码进行分析处理,得到token组合,所述token组合包括多个token,每个token包括字符组合及对应的字符类型,所述字符组合包括至少一个字符;语法解析单元,用于通过所述语法解析器,对所述多个token进行语法解析,得到抽象语法树,所述抽象语法树包括单行语句或控制语句中的至少一种;语句执行单元,用于通过所述语句执行器,执行所述抽象语法树中的语句。14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现如权利要求1至10任一权利要求所述的应用更新方法中所执行的操作。15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一
条程序代码,所述至少一条程序代码由处理器加载并执行以实现如权利要求1至10任一权利要求所述的应用更新方法中所执行的操作。

技术总结
本申请实施例公开了一种应用更新方法、装置、计算机设备及存储介质,属于计算机技术领域。该方法包括:获取应用的更新信息,在应用运行过程中,拦截携带目标函数名称的调用指令,目标函数名称为更新信息中的任一函数名称,执行目标函数名称对应的目标更新代码。实现了目标函数的在线更新,无需设备下载并安装应用的应用程序包,提高了应用更新的效率。在线更新过程用户无感知,减小了应用更新对用户的影响。在应用具有更新信息时,即可在应用运行过程中实现自动更新,无需用户主动触发再对应用进行更新,从而有效提高了应用更新的覆盖率,保持应用的当前版本为最新的版本,降低了后台需要维护的应用的版本数量,从而降低了维护成本。本。本。


技术研发人员:陈贝
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.09.03
技术公布日:2022/3/3
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1