首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

应用程序更新方法、系统、计算机设备和存储介质 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:中国平安人寿保险股份有限公司

摘要:本申请涉及基于数据处理的一种应用程序更新方法、系统、计算机设备和存储介质。所述方法包括:第一终端接收服务器发送的应用程序的更新提示信息;根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应;获取解析引擎,通过解析引擎对修复包进行解析,得到对应的修复代码;修复包携带修复包标识和函数接口,根据修复包标识检测应用程序的待修复内容的函数接口,将待修复内容的函数接口修改为修复包的函数接口;将修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行应用程序,以对应用程序进行更新。采用本方法能够能够有效提高应用程序的修复效率。

主权项:1.一种应用程序更新方法,其特征在于,所述方法包括:第一终端接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;绑定所述修复包的侦听端口,对所述待修复内容的权重进行重置,并删除所述待修复内容对应的代码;其中,所述修复包的侦听端口是所述服务器通过调用负载均衡器为所述修复包绑定的;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,当待修复内容对应的连接断开后,关闭所述待修复内容对应的旧进程,以对所述应用程序进行更新。

全文数据:应用程序更新方法、系统、计算机设备和存储介质技术领域本申请涉及计算机技术领域,特别是涉及基于数据处理的一种应用程序更新方法、系统、计算机设备和存储介质。背景技术随着互联网技术的迅速发展,出现了越来越多的应用程序。这些应用程序在应用的过程中可能会出现一些问题和漏洞,则需要对应用程序进行修复。目前出现了线上热修复的方式。这种热修复方式可以直接在线上对应用程序进行修复,不需要在应用商店重新发布该应用程序对应修复后的新版本,也不需要用户重新下载新版本的应用程序。然而,这种传统的热修复方式中,服务器获取到更新的代码后,当执行到原代码时,对原代码进行拦截,再执行更新的代码。然而这种热修复的方式,更新的代码和原代码会共存一段时间,导致修复的效率较低。因此,如何有效提高应用程序的修复效率成为目前需要解决的技术问题。发明内容基于此,有必要针对上述技术问题,提供一种能够有效提高修复效率的应用程序更新方法、系统、计算机设备和存储介质。一种应用程序更新方法,包括:第一终端接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。在其中一个实施例中,所述修复包中包括代码标识,所述根据所述更新提示信息从服务器中获取对应的修复包之后,包括:获取所述修复包的签名信息;当所述修复包的签名信息和所述应用程序的签名信息一致时,遍历所述应用程序的代码标识;将所述修复包的代码标识与所述应用程序中的代码标识进行匹配;当匹配到一致的代码标识时,则验证通过。在其中一个实施例中,所述应用程序包括应用程序标识,所述根据所述更新提示信息从服务器中获取对应的修复包之后,还包括:根据所述应用程序标识从所述服务器中获取对应的密钥文件;按照预设方式从所述密钥文件中解析出密钥;利用所述密钥对所述修复包进行解密。在其中一个实施例中,所述方法还包括:检测所述更新后的应用程序在运行过程中的异常情况;当所述应用程序存在异常情况时,对所述异常情况进行拦截,并根据所述异常情况生成异常提示信息;将所述异常提示信息发送至所述服务器。一种应用程序更新方法,包括:服务器接收第二终端上传的与应用程序对应的修复包,所述修复包中包括修复包标识;根据所述修复包标识获取所述应用程序中对应的待修复内容;利用所述待修复内容对所述修复包进行验证;验证通过后,对所述修复包进行加密,并对加密后的修复包进行发布。在其中一个实施例中,所述利用所述待修复内容对所述修复包进行验证,包括:识别所述待修复内容对应的业务功能;验证所述修复包的业务功能是否与所述待修复内容对应的业务功能相匹配;当所述修复包的业务功能与所述待修复内容对应的业务功能相匹配时,则验证通过。在其中一个实施例中,所述应用程序包括应用程序标识,所述对所述修复包进行加密,包括:根据所述应用程序标识获取预设文件和密钥;对所述密钥进行编码,得到编码后的密钥;根据编码后的密钥对所述修复包进行加密;将所述密钥添加至所述预设文件的预设位置中,生成密钥文件并存储。一种应用程序更新系统,包括:服务器,用于接收第二终端上传的与应用程序对应的修复包,所述修复包中包括修复包标识;根据所述修复包标识获取所述应用程序中对应的待修复内容;利用所述待修复内容对所述修复包进行验证;验证通过后,对所述修复包进行加密,并对加密后的修复包进行发布。第一终端,用于接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:第一终端接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:服务器接收第二终端上传的与应用程序对应的修复包,所述修复包中包括修复包标识;根据所述修复包标识获取所述应用程序中对应的待修复内容;利用所述待修复内容对所述修复包进行验证;验证通过后,对所述修复包进行加密,并对加密后的修复包进行发布。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:第一终端接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:第一终端接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。上述应用程序更新方法、系统、计算机设备和存储介质,服务器发布应用程序的修复包后,第一终端接收服务器发送的应用程序的更新提示信息,根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应。第一终端获取修复包后获取解析引擎,并通过解析引擎对修复包进行解析,得到对应的修复代码。修复包携带了修复包标识和函数接口,第一终端则根据修复包标识检测应用程序的待修复内容的函数接口,并将待修复内容的函数接口修改为修复包的函数接口。第一终端进一步将解析得到的修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行该应用程序,由此对应用程序进行更新。通过对修复包进行解析后,同时替换原始的待修复内容,由此能够有效提高对应用程序的更新效率。附图说明图1为一个实施例中应用程序更新方法的应用场景图;图2为一个实施例中应用程序更新方法的流程示意图;图3为一个实施例中对修复包进行验证的步骤的流程示意图;图4为另一个实施例中应用程序更新方法的流程示意图;图5为一个实施例中对修复包进行加密的步骤的流程示意图;图6为一个实施例中应用程序更新系统的结构框图;图7为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请提供的应用程序更新方法,可以应用于如图1所示的应用环境中。其中,第一终端102通过网络与服务器104通过网络进行通信。其中,第一终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。第一终端102接收服务器104发送的应用程序的更新提示信息,并根据更新提示信息从服务器104中获取对应的修复包,修复包与应用程序的待修复内容相对应。第一终端102获取修复包后获取解析引擎,并通过解析引擎对修复包进行解析,得到对应的修复代码。修复包携带修复包标识和函数接口,第一终端102则根据修复包标识检测应用程序的待修复内容的函数接口,并将待修复内容的函数接口修改为修复包的函数接口。第一终端102进一步将解析得到的修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行该应用程序,由此对应用程序进行更新。通过对修复包进行解析后,同时替换原始的待修复内容,由此能够有效提高对应用程序的更新效率。在一个实施例中,如图2所示,提供了一种应用程序更新方法,以该方法应用于图1中的第一终端为例进行说明,包括以下步骤:步骤202,第一终端接收服务器发送的应用程序的更新提示信息。应用程序发布后,在应用的过程中可能会出现一些问题。当应用程序出现问题时,开发人员会根据出现的问题开发出修复包,并将开发的修复包上传至服务器,以使得服务器对修复包进行发布。其中,第一终端可以是应用程序的用户所对应的终端。具体地,当服务器接收到修复包后,则会向对应的第一终端发送应用程序的更新提示信息,以通知第一终端该应用程序有对应的修复包。进而使得第一终端能够通过服务器发送的更新提示信息了解到该应用程序需要进行更新。步骤204,根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应。第一终端接收到服务器发送的更新提示信息后,则可以根据更新提示信息从服务器中获取对应的修复包,修复包中携带了修复包标识和函数接口。其中,修复包可以是开发人员根据应用程序的修复需求开发,并通过对应的第二终端上传至服务器中进行发布,且修复包与应用程序的待修复内容相对应。进一步地,第一终端获取到对应的修复包后,还可以对该修复包进行验证。具体地,修复包中还可以携带有签名信息,将该修复包中携带的签名信息与应用程序的签名信息进行校验,校验通过则表示该修复包与应用程序相匹配,即该修复包是这个应用程序修复包。通过对修复包进行校验,可以有效地对修复包的有效性进行验证。例如,可以有效地防止修复包的版本与应用程序的版本不对应的情况等。进一步地,服务器在发布修复包之前还可以对修复包中的内容进行加密,以增加修复包的安全性。具体地,服务器可以根据应用程序标识获取预设文件和密钥,并对密钥进行编码,得到编码后的密钥。根据编码后的密钥对修复包进行加密。服务器并将密钥添加至预设文件的预设位置中,生成密钥文件并存储。第一终端获取到修复包后,则根据应用程序标识从服务器中获取对应的密钥文件,进而根据预设规则从密钥文件中获取密钥,由此可以根据密钥对修复包进行解密。步骤206,获取解析引擎,通过解析引擎对修复包进行解析,得到对应的修复代码。第一终端对修复包进行解密后,则获取解析引擎,解析引擎用于解析出修复包中的修复代码。第一终端通过解析引擎对该修复包进行解析,由此可以有效地解析得到修复包中所包含的修复代码。步骤208,修复包携带修复包标识和函数接口,根据修复包标识检测应用程序的待修复内容的函数接口,将待修复内容的函数接口修改为修复包的函数接口。其中,修复包与应用程序的待修复内容相对应,修复包携带了修复包标识和函数接口。第一终端通过解析引擎解析出修复包中的修复代码后,则进一步根据修复包中携带的修复包标识检测该应用程序中对应的待修复内容的函数接口,并将待修复内容的函数接口修改为修复包的函数接口。由此对待修复内容的函数接口进行替换。进一步地,服务器在对该修复包进行验证并加密后,还可以调用一个负载均衡器,为该修复包分配一个新的进程并绑定一个新的侦听端口。第一终端从服务器中获取对应的修复包,对该修复包进行验证后,绑定该修复包的侦听端口,将该修复包对应的应用程序中待修复内容的权重进行重置,例如,可以将待修复部分的权重置为零。并删除待修复内容对应的代码。当待修复内容对应的连接都断开后,则关掉旧进程,由此实现对修复包的热更新。通过替换待修复部分的代码,应用程序在利用修复包进行更新的过程中原代码和修复代码不会共存,由此能够有效提高热修复的效率。步骤210,将修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行应用程序,以对应用程序进行更新。第一终端修改待修复内容的函数接口后,进一步将修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行该应用程序,进而对应用程序进行更新。第一终端利用修复包对该应用程序进行更新后,则启动该应用程序更新后的界面。通过利用修复包替换并删除待修复内容对应的原代码,以对应用程序进行更新,有效地提高了应用程序的更新效率。上述应用程序更新方法中,第一终端接收服务器发送的应用程序的更新提示信息后,根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应。第一终端获取修复包后获取解析引擎,并通过解析引擎对修复包进行解析,得到对应的修复代码。修复包携带修复包标识和函数接口,第一终端则根据修复包标识检测应用程序的待修复内容的函数接口,并将待修复内容的函数接口修改为修复包的函数接口。第一终端进一步将解析得到的修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行该应用程序,由此对应用程序进行更新。通过对修复包进行解析后,同时替换原始的待修复内容,由此能够有效提高对应用程序的更新效率。在一个实施例中,修复包中包括代码标识,根据更新提示信息从服务器中获取对应的修复包之后,包括对修复包进行验证的步骤,该步骤具体包括以下内容:步骤302,获取修复包的签名信息。步骤304,当修复包的签名信息和应用程序的签名信息一致时,遍历应用程序的代码标识。开发人员通过对应的第二终端开发修复包后,对修复包添加对应的签名信息代码标识,并上传至服务器,以使得服务器将该修复包进行发布。其中,签名信息是修复包所对应的应用程序的签名信息。代码标识可以是与应用程序中待修复内容相对应的业务功能的标识。第一终端从服务器中获取到该修复包后,获取修复包的签名信息,并对修复包的签名信息进行验证,验证修复包的签名信息与该应用程序的签名信息是否一致。当修复包的签名信息和应用程序的签名信息一致时,则表示修复包是该应用程序所对应版本的修复包。通过对修复包的签名信息进行验证,能够有效地验证修复包的有效性。步骤306,将修复包的代码标识与应用程序中的代码标识进行匹配。步骤308,当匹配到一致的代码标识时,则验证通过。当修复包的签名信息和应用程序的签名信息一致时,第一终端遍历该应用程序中所包含的代码标识,并将修复包的代码标识与应用程序中的代码标识进行匹配,以检测修复包的代码标识是否在该应用程序的代码标识中。当匹配到一致的代码标识时,则表示修复包是针对该应用程序的相关业务功能的修复包。通过对修复包的签名信息和代码标识对修复包进行验证,能够有效地防止修复包的内容与应用程序不相关,例如插入广告,恶意捆绑等。进而能够有效地保证修复包的有效性。在一个实施例中,应用程序包括应用程序标识,第一终端从服务器中获取对应的修复包之后,还包括:根据应用程序标识从服务器中获取对应的密钥文件;按照预设方式从密钥文件中解析出密钥;利用密钥对修复包进行解密。服务器在发布修复包之前还可以对修复包中的内容进行加密,以增加修复包的安全性。具体地,服务器中部署了数据库。数据库中存储了多种预设文件以及与应用程序标识对应的密钥。不同的密钥可以通过不同预设文件生成相应的密钥文件。服务器可以根据修复包对应的应用程序标识获取预设文件和密钥,并对密钥进行编码,得到编码后的密钥。其中,密钥可以是预设字符串,也可以是预设图形。具体的,服务器可以按照预设编码方式对预设字符串进行编码,也可以按照预设编码方式对预设图形进行编码,由此得到编码后的密钥。预设的编码方式可以有多种,例如,预设的编码方式可以是base64的编码方式。编码后的密钥包括编码后的密钥字符串以及密钥图形等。进而服务器根据编码后的密钥对修复包进行加密。服务器并将密钥添加至预设文件的预设位置中,生成密钥文件并存储。第一终端获取到修复包后,则根据应用程序标识从服务器中获取对应的密钥文件,按照预设方式从密钥文件中解析出密钥,进而从密钥文件中获取对应密钥,由此可以利用密钥对修复包进行解密。通过对修复包按照特殊的方式进行加密和解密,从而能够有效地提高修复包的安全性。在一个实施例中,该方法还包括:检测更新后的应用程序在运行过程中的异常情况;当应用程序存在异常情况时,对异常情况进行拦截,并根据异常情况生成异常提示信息;将异常提示信息发送至服务器。第一终端获取修复包,并利用修复包对该应用程序进行更新后,检测更新后的应用程序在运行过程中的异常情况。例如,异常情况可以包括应用程序的兼容性和稳定性较低和功能逻辑存在问题等异常情况。当检测到该应用程序存在异常情况时,对异常情况进行拦截。第一终端则根据拦截的异常情况生成对应的异常提示信息,并将异常提示信息反馈至服务器,以使得服务器生成对应的日志信息。服务器还可以向对应的第二终端发送提示信息,以使得第二终端获取该异常情况对应的日志信息,并对该应用程序进行维护。进一步地,第一终端将异常提示信息反馈至服务器后,同时还可以重启该应用程序,以缓解该应用程序所遇到的异常情况。通过对应用程序的运行状况进行有效地监测,能够及时地了解到该应用程序所存在的问题,以使得对应的开发人员能够及时地开发出修复包,以对应用程序进行修复,由此能够有效地提高应用程序的修复效率。在一个实施例中,如图4所示,提供了一种应用程序更新方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:步骤402,服务器接收第二终端上传的与应用程序对应的修复包,修复包中包括修复包标识。应用程序发布后,在应用的过程中可能会出现一些问题。当应用程序出现问题时,开发人员会根据出现的问题开发出修复包,修复包与该应用程序的待修复内容相对应,并将开发的修复包上传至服务器,以使得服务器对修复包进行发布。开发人员通过对应的第二终端开发修复包后,对修复包添加对应的签名信息代码标识,并上传至服务器。其中,签名信息是修复包所对应的应用程序的签名信息。代码标识可以是与应用程序中待修复内容相对应的业务功能的标识。服务器获取到该修复包后,获取修复包的签名信息,并对修复包的签名信息进行验证,验证修复包的签名信息与该应用程序的签名信息是否一致。当修复包的签名信息和应用程序的签名信息一致时,则表示修复包是该应用程序所对应版本的修复包。通过对修复包的签名信息进行验证,能够有效地验证修复包的有效性。步骤404,根据修复包标识获取应用程序中对应的待修复内容。步骤406,利用待修复内容对修复包进行验证。服务器对修复包的签名验证通过后,进一步根据修复包标识获取应用程序中对应的待修复内容,待修复内容包括对应的业务功能,并利用待修复内容的业务功能对修复包进行验证。具体地,服务器获取待修复包的业务功能后,将修复包的业务功能与待修复内容对应的业务功能进行匹配,当匹配一致则验证通过。即表示修复包的业务功能与该应用程序中待修复内容对应的业务功能相对应。通过对修复包的签名信息和业务功能对修复包进行验证,能够有效地防止修复包的内容与应用程序不相关,例如插入广告,恶意捆绑等。进而能够有效地保证修复包的有效性。步骤408,验证通过后,对修复包进行加密,并对加密后的修复包进行发布。服务器对修复包验证通过后,需要进一步对修复包进行加密。具体地,服务器中部署了数据库。数据库中存储了多种预设文件以及与应用程序标识对应的密钥。不同的密钥可以通过不同预设文件生成相应的密钥文件。服务器可以根据修复包对应的应用程序标识获取预设文件和密钥,并对密钥进行编码,得到编码后的密钥。其中,密钥可以是预设字符串,也可以是预设图形。具体的,服务器可以按照预设编码方式对预设字符串进行编码,也可以按照预设编码方式对预设图形进行编码,由此得到编码后的密钥。预设的编码方式可以有多种,例如,预设的编码方式可以是base64的编码方式。编码后的密钥包括编码后的密钥字符串以及密钥图形等。进而服务器根据编码后的密钥对修复包进行加密。服务器并将密钥添加至预设文件的预设位置中,生成密钥文件并存储。通过对修复包按照特殊的方式进行加密,从而能够有效地提高修复包的安全性。进一步地,服务器对该修复包进行验证并加密后,还可以调用一个负载均衡器,为该修复包分配一个新的进程并绑定一个新的侦听端口。第一终端从服务器中获取对应的修复包,对该修复包进行验证后,绑定该修复包的侦听端口,将该修复包对应的应用程序中待修复内容的权重置为零,并删除待修复内容对应的代码。当待修复内容对应的连接都断开后,则关掉旧进程,由此实现对修复包的热更新。通过替换待修复部分的代码,使得在运行应用程序时新旧代码不会共存,由此能够有效提高热修复的效率。在一个实施例中,利用待修复内容对修复包进行验证,包括:识别待修复内容对应的业务功能;验证修复包的业务功能是否与待修复内容对应的业务功能相匹配;当修复包的业务功能与待修复内容对应的业务功能相匹配时,则验证通过。服务器对修复包的签名验证通过后,进一步根据修复包标识获取应用程序中对应的待修复内容,待修复内容包括对应的业务功能,并利用待修复内容的业务功能对修复包进行验证。具体地,服务器获取待修复包的业务功能后,将修复包的业务功能与待修复内容对应的业务功能进行匹配,当匹配一致则验证通过。即表示修复包的业务功能与该应用程序中待修复内容对应的业务功能相对应。进一步地,还可以用代码标识表示出对应的业务功能。服务器还可以通过遍历该应用程序中所包含的代码标识,并将修复包的代码标识与应用程序中的代码标识进行匹配,以检测修复包的代码标识是否在该应用程序的代码标识中。当匹配到一致的代码标识时,则表示修复包是针对该应用程序的相关业务功能的修复包。通过对修复包的代码标识和业务功能对修复包进行验证,能够有效地防止修复包的内容与应用程序不相关,例如插入广告,恶意捆绑等。进而能够有效地保证修复包的有效性。在一个实施例中,如图5所示,应用程序包括应用程序标识,对修复包进行加密的步骤,具体包括以下内容:步骤502,根据应用程序标识获取预设文件和密钥。服务器对修复包验证通过后,需要进一步对修复包进行加密。具体地,服务器中部署了数据库。数据库中存储了多种预设文件以及与应用程序标识对应的密钥。不同的密钥可以通过不同预设文件生成相应的密钥文件。步骤504,对密钥进行编码,得到编码后的密钥。步骤506,根据编码后的密钥对修复包进行加密。服务器可以根据修复包对应的应用程序标识获取预设文件和密钥,并对密钥进行编码,得到编码后的密钥。其中,密钥可以是预设字符串,也可以是预设图形。具体的,服务器可以按照预设编码方式对预设字符串进行编码,也可以按照预设编码方式对预设图形进行编码,由此得到编码后的密钥。预设的编码方式可以有多种,例如,预设的编码方式可以是base64的编码方式。编码后的密钥包括编码后的密钥字符串以及密钥图形等。进而服务器可以利用编码后的密钥对修复包进行加密,通过对修复包按照特殊的方式进行加密,从而能够有效地提高修复包的安全性。步骤508,将密钥添加至预设文件的预设位置中,生成密钥文件并存储。服务器得到编码后的密钥后,通过在预设文件中的预设位置添加编码后的密钥。具体地,服务器从预设文件对应的字符串的第一位置开始,删除多个字符,被删除的字符的数量与密钥字符数量相同。其中,服务器可以从第一位置开始连续删除与密钥字符数量相同数量的字符。也可以从第一位置开始,按照预设规则分散的删除多个字符,被删除的字符的数量与密钥字符数量相同。例如,密钥字符串的字符数量为20。服务器可以在预设文件对应的字符串中,从第一位置开始连续删除20个字符。服务器还可以从第一位置开始分散删除多个字符,比如,从第一位置开始删除5个字符,然后跳过10个字符继续删除5个字符,再跳过10个字符继续删除5个字符,依次类推,直到被删除的字符数量达到20个。当服务器分散删除字符时,在不同位置连续删除的部分字符的数量可以相同也可以不同。服务器将编码后的密钥字符串添加至被删除的字符对应的位置。服务器可以将编码后的密钥字符串从第一位置开始连续添加,也可以将编码后的密钥字符串从第一位置开始分散添加,使得编码后的字符串替换掉预设文件中原有的多个字符,生成与对应的密钥文件,并进行存储。通过将密钥按照预设方式添加至预设文件中,由此能够有效地隐藏密钥,从而有效地提高了修复包的安全性。应该理解的是,虽然图2-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。在一个实施例中,如图6所示,提供了一种应用程序更新系统,包括服务器602和第一终端604,其中:服务器602,用于接收第二终端上传的与应用程序对应的修复包,修复包中包括修复包标识;根据修复包标识获取应用程序中对应的待修复内容;利用待修复内容对修复包进行验证;验证通过后,对修复包进行加密,并对加密后的修复包进行发布。第一终端604,用于接收服务器发送的应用程序的更新提示信息;根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应;获取解析引擎,通过解析引擎对修复包进行解析,得到对应的修复代码;修复包携带修复包标识和函数接口,根据修复包标识检测应用程序的待修复内容的函数接口,将待修复内容的函数接口修改为修复包的函数接口;将修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行应用程序,以对应用程序进行更新。在一个实施例中,服务器602还用于识别待修复内容对应的业务功能;验证修复包的业务功能是否与待修复内容对应的业务功能相匹配;当修复包的业务功能与待修复内容对应的业务功能相匹配时,则验证通过。在一个实施例中,应用程序包括应用程序标识,服务器602还用于根据应用程序标识获取预设文件和密钥;对密钥进行编码,得到编码后的密钥;根据编码后的密钥对修复包进行加密;将密钥添加至预设文件的预设位置中,生成密钥文件并存储。在一个实施例中,修复包中包括代码标识,第一终端602还用于获取修复包的签名信息;当修复包的签名信息和应用程序的签名信息一致时,遍历应用程序的代码标识;将修复包的代码标识与应用程序中的代码标识进行匹配;当匹配到一致的代码标识时,则验证通过。在一个实施例中,应用程序包括应用程序标识,第一终端602还用于根据应用程序标识从服务器中获取对应的密钥文件;按照预设方式从密钥文件中解析出密钥;利用密钥对修复包进行解密。在一个实施例中,第一终端602还用于检测更新后的应用程序在运行过程中的异常情况;当应用程序存在异常情况时,对异常情况进行拦截,并根据异常情况生成异常提示信息;将异常提示信息发送至服务器。关于应用程序更新系统的具体限定可以参见上文中对于应用程序更新方法的限定,在此不再赘述。上述应用程序更新系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入系统。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种应用程序更新方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入系统可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储修复包、预设文件和密钥文件等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种应用程序更新方法。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:第一终端接收服务器发送的应用程序的更新提示信息;根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应;获取解析引擎,通过解析引擎对修复包进行解析,得到对应的修复代码;修复包携带修复包标识和函数接口,根据修复包标识检测应用程序的待修复内容的函数接口,将待修复内容的函数接口修改为修复包的函数接口;将修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行应用程序,以对应用程序进行更新。在一个实施例中,修复包中包括代码标识,处理器执行计算机程序时还实现以下步骤:获取修复包的签名信息;当修复包的签名信息和应用程序的签名信息一致时,遍历应用程序的代码标识;将修复包的代码标识与应用程序中的代码标识进行匹配;当匹配到一致的代码标识时,则验证通过。在一个实施例中,应用程序包括应用程序标识,处理器执行计算机程序时还实现以下步骤:根据应用程序标识从服务器中获取对应的密钥文件;按照预设方式从密钥文件中解析出密钥;利用密钥对修复包进行解密。在一个实施例中,处理器执行计算机程序时还实现以下步骤:检测更新后的应用程序在运行过程中的异常情况;当应用程序存在异常情况时,对异常情况进行拦截,并根据异常情况生成异常提示信息;将异常提示信息发送至服务器。在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:服务器接收第二终端上传的与应用程序对应的修复包,修复包中包括修复包标识;根据修复包标识获取应用程序中对应的待修复内容;利用待修复内容对修复包进行验证;验证通过后,对修复包进行加密,并对加密后的修复包进行发布。在一个实施例中,处理器执行计算机程序时还实现以下步骤:识别待修复内容对应的业务功能;验证修复包的业务功能是否与待修复内容对应的业务功能相匹配;当修复包的业务功能与待修复内容对应的业务功能相匹配时,则验证通过。在一个实施例中,应用程序包括应用程序标识,处理器执行计算机程序时还实现以下步骤:根据应用程序标识获取预设文件和密钥;对密钥进行编码,得到编码后的密钥;根据编码后的密钥对修复包进行加密;将密钥添加至预设文件的预设位置中,生成密钥文件并存储。在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:第一终端接收服务器发送的应用程序的更新提示信息;根据更新提示信息从服务器中获取对应的修复包,修复包与应用程序的待修复内容相对应;获取解析引擎,通过解析引擎对修复包进行解析,得到对应的修复代码;修复包携带修复包标识和函数接口,根据修复包标识检测应用程序的待修复内容的函数接口,将待修复内容的函数接口修改为修复包的函数接口;将修复代码存储至本地待修复内容对应的位置,并根据函数接口和修复代码运行应用程序,以对应用程序进行更新。在一个实施例中,修复包中包括代码标识,计算机程序被处理器执行时还实现以下步骤:获取修复包的签名信息;当修复包的签名信息和应用程序的签名信息一致时,遍历应用程序的代码标识;将修复包的代码标识与应用程序中的代码标识进行匹配;当匹配到一致的代码标识时,则验证通过。在一个实施例中,应用程序包括应用程序标识,计算机程序被处理器执行时还实现以下步骤:根据应用程序标识从服务器中获取对应的密钥文件;按照预设方式从密钥文件中解析出密钥;利用密钥对修复包进行解密。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:检测更新后的应用程序在运行过程中的异常情况;当应用程序存在异常情况时,对异常情况进行拦截,并根据异常情况生成异常提示信息;将异常提示信息发送至服务器。在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:服务器接收第二终端上传的与应用程序对应的修复包,修复包中包括修复包标识;根据修复包标识获取应用程序中对应的待修复内容;利用待修复内容对修复包进行验证;验证通过后,对修复包进行加密,并对加密后的修复包进行发布。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:识别待修复内容对应的业务功能;验证修复包的业务功能是否与待修复内容对应的业务功能相匹配;当修复包的业务功能与待修复内容对应的业务功能相匹配时,则验证通过。在一个实施例中,应用程序包括应用程序标识,计算机程序被处理器执行时还实现以下步骤:根据应用程序标识获取预设文件和密钥;对密钥进行编码,得到编码后的密钥;根据编码后的密钥对修复包进行加密;将密钥添加至预设文件的预设位置中,生成密钥文件并存储。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和或易失性存储器。非易失性存储器可包括只读存储器ROM、可编程ROMPROM、电可编程ROMEPROM、电可擦除可编程ROMEEPROM或闪存。易失性存储器可包括随机存取存储器RAM或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAMSRAM、动态RAMDRAM、同步DRAMSDRAM、双数据率SDRAMDDRSDRAM、增强型SDRAMESDRAM、同步链路SynchlinkDRAMSLDRAM、存储器总线Rambus直接RAMRDRAM、直接存储器总线动态RAMDRDRAM、以及存储器总线动态RAMRDRAM等。以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

权利要求:1.一种应用程序更新方法,包括:第一终端接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。2.根据权利要求1所述的方法,其特征在于,所述修复包中包括代码标识,所述根据所述更新提示信息从所述服务器中获取对应的修复包之后,还包括:获取所述修复包的签名信息;当所述修复包的签名信息和所述应用程序的签名信息一致时,遍历所述应用程序的代码标识;将所述修复包的代码标识与所述应用程序中的代码标识进行匹配;当匹配到一致的代码标识时,则验证通过。3.根据权利要求1所述的方法,其特征在于,所述应用程序包括应用程序标识,所述根据所述更新提示信息从所述服务器中获取对应的修复包之后,还包括:根据所述应用程序标识从所述服务器中获取对应的密钥文件;按照预设方式从所述密钥文件中解析出密钥;利用所述密钥对所述修复包进行解密。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:检测所述更新后的应用程序在运行过程中的异常情况;当所述应用程序存在异常情况时,对所述异常情况进行拦截,并根据所述异常情况生成异常提示信息;将所述异常提示信息发送至所述服务器。5.一种应用程序更新方法,包括:服务器接收第二终端上传的与应用程序对应的修复包,所述修复包中包括修复包标识;根据所述修复包标识获取所述应用程序中对应的待修复内容;利用所述待修复内容对所述修复包进行验证;验证通过后,对所述修复包进行加密,并对加密后的修复包进行发布。6.根据权利要求5所述的方法,其特征在于,所述利用所述待修复内容对所述修复包进行验证,包括:识别所述待修复内容对应的业务功能;验证所述修复包的业务功能是否与所述待修复内容对应的业务功能相匹配;当所述修复包的业务功能与所述待修复内容对应的业务功能相匹配时,则验证通过。7.根据权利要求5所述的方法,其特征在于,所述应用程序包括应用程序标识,所述对所述修复包进行加密,包括:根据所述应用程序标识获取预设文件和密钥;对所述密钥进行编码,得到编码后的密钥;根据编码后的密钥对所述修复包进行加密;将所述密钥添加至所述预设文件的预设位置中,生成密钥文件并存储。8.一种应用程序更新系统,包括:服务器,用于接收第二终端上传的与应用程序对应的修复包,所述修复包中包括修复包标识;根据所述修复包标识获取所述应用程序中对应的待修复内容;利用所述待修复内容对所述修复包进行验证;验证通过后,对所述修复包进行加密,并对加密后的修复包进行发布。第一终端,用于接收服务器发送的应用程序的更新提示信息;根据所述更新提示信息从所述服务器中获取对应的修复包,所述修复包与应用程序的待修复内容相对应;获取解析引擎,通过所述解析引擎对所述修复包进行解析,得到对应的修复代码;所述修复包携带修复包标识和函数接口,根据所述修复包标识检测应用程序的待修复内容的函数接口,将所述待修复内容的函数接口修改为所述修复包的函数接口;将所述修复代码存储至本地待修复内容对应的位置,并根据所述函数接口和所述修复代码运行所述应用程序,以对所述应用程序进行更新。9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4或5至7中任一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4或5至7中任一项所述的方法的步骤。

百度查询: 中国平安人寿保险股份有限公司 应用程序更新方法、系统、计算机设备和存储介质

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。