iOS应用程序的更新方法、装置、设备及存储介质制造方法及图纸

技术编号:19489033 阅读:29 留言:0更新日期:2018-11-17 12:01
本发明专利技术实施例公开了一种iOS应用程序的更新方法、装置、设备及存储介质。该方法包括:获取应用程序的补丁修复包,所述补丁修复包为通过第一编程语言编写的脚本程序代码文件;获取所述应用程序中与所述补丁修复包对应的待替换函数;采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,完成所述应用程序的更新。本发明专利技术实施例提供的iOS应用程序的更新方法,无需等到应用程序新版本发布,通过采用设定补丁引擎用补丁修复包替换待替换函数进行执行,就能够实现对应用程序的更新,可以提高应用程序更新的可靠性,缩短应用程序更新的周期。

【技术实现步骤摘要】
iOS应用程序的更新方法、装置、设备及存储介质
本专利技术实施例涉及互联网
,尤其涉及一种iOS应用程序的更新方法、装置、设备及存储介质。
技术介绍
随着互联网的快速发展,移动终端已经成为人们生活中不可或缺的工具之一。为了增加移动终端的使用灵活性,第三方服务器基于移动终端的运行系统开发出多种实现不同功能的应用程序(Application,APP),用户只需要在移动终端中安装能够实现某种功能的APP,就可以通过移动终端进行相应功能的活动。对于iOS系统,由于APP为第三方服务器开发的第三方应用程序,在第三方服务器开发出APP后,只有在客户端的iOS系统审核通过后,该APP才能在AppStore中发布,当用户需要使用该APP时,可以从AppStore中下载。现有技术中,当发布后的APP的某些功能存在错误时,无法使用更新动态链接库的方式对应用程序进行修复或更新,必须依赖APP新版本的发布才能更新。不仅用户体验差,而且APP更新周期长。
技术实现思路
本专利技术实施例提供一种iOS应用程序的更新方法、装置、设备及存储介质,可以提高应用程序更新的可靠性,缩短应用程序更新的周期。第一方面,本专利技术实施例提供了一种iOS应用程序的更新方法,该方法包括:获取应用程序的补丁修复包,所述补丁修复包为通过第一编程语言编写的脚本程序代码文件;获取所述应用程序中与所述补丁修复包对应的待替换函数;采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,完成所述应用程序的更新。进一步地,所述获取所述应用程序中与所述补丁修复包对应的待替换函数,包括:获取所述补丁修复包中的定义的类中的函数;根据所述定义的类中的函数在所述应用程序中查找与所述补丁修复包对应的待替换函数。进一步地,所述采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,包括:用替换函数替换所述待替换函数;所述替换函数通过第二编程语言编写;建立所述替换函数与所述补丁修复包的调用接口;在执行所述替换函数时,通过所述调用接口调用所述补丁修复包中的定义的类中的函数进行执行。进一步地,建立所述替换函数与所述补丁修复包的调用接口,包括:将所述待替换函数的函数调用信息通过第二编程语言接口传送至所述替换函数;根据所述函数调用信息建立所述替换函数与所述补丁修复包的调用接口。进一步地,所述获取应用程序的补丁修复包,包括:在应用程序启动时,通过网络数据接口从服务器获取所述应用程序的补丁修复包。第二方面,本专利技术实施例还提供了一种iOS应用程序的更新装置,该装置包括:补丁修复包获取模块,用于获取应用程序的补丁修复包,所述补丁修复包为通过第一编程语言编写的脚本程序代码文件;待替换函数获取模块,用于获取所述应用程序中与所述补丁修复包对应的待替换函数;加载模块,用于采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,完成所述应用程序的更新。进一步地,所述待替换函数获取模块,还用于:获取所述补丁修复包中的定义的类中的函数;根据所述定义的类中的函数在所述应用程序中查找与所述补丁修复包中的定义的类中的函数对应的待替换函数。进一步地,所述加载模块,还用于:用替换函数替换所述待替换函数;所述替换函数通过第二编程语言编写;建立所述替换函数与所述补丁修复包的调用接口;在执行所述替换函数时,通过所述调用接口调用所述补丁修复包中的定义的类中的函数进行执行。第三方面,本专利技术实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本专利技术实施例所述的iOS应用程序的更新方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术实施例所述的iOS应用程序的更新方法本专利技术实施例,首先获取应用程序的补丁修复包,然后获取应用程序中与补丁修复包对应的待替换函数,最后采用设定补丁引擎用补丁修复包替换待替换函数进行执行,完成应用程序的更新。本专利技术实施例提供的iOS应用程序的更新方法,无需等到应用程序新版本发布,通过采用设定补丁引擎用补丁修复包替换待替换函数进行执行,就能够实现对应用程序的更新,可以提高应用程序更新的可靠性,缩短应用程序更新的周期。附图说明图1是本专利技术实施例一中的一种iOS应用程序的更新方法的流程图;图2是本专利技术实施例二中的一种iOS应用程序的更新装置的结构示意图;图3是本专利技术实施例三中的一种计算机设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。iOS系统是由苹果公司开发的移动操作系统,当安装在iOS系统中的APP需要进行更新时,客户端从服务器下载补丁修复包。现有技术中,补丁修复包是通过JS代码编写的脚本程序代码文件,JS代码就是JavaScript编写的脚本文件的代码,采用单独文件保存,扩展名为.JS。该方法基于JSPatch引擎,是由国内开发者开发的开源引擎,而目前苹果公司已经命令禁止采用该引擎实现APP的更新,因为该方法已经不再具有实用性。实施例一图1为本专利技术实施例一提供的一种iOS应用程序的更新方法的流程图,本实施例可适用于对iOS系统中的应用程序进行更新的情况,该方法可以由iOS应用程序更新装置来执行,该装置可由硬件和/或软件组成,并一般可集成在电脑、服务器以及所有包含iOS应用程序更新功能的终端中。如图1所示,该方法具体包括如下步骤。步骤110,获取应用程序的补丁修复包。其中,补丁修复包为通过第一编程语言编写的脚本程序代码文件。第一编程语言可以是任意的能够进行编程的语言,在本实施例中,第一编程语言优选的为Ruby语言。本应用场景下,当已经发布的应用程序出现漏洞或异常时,应用程序开发者根据漏洞或异常采用Ruby语言编写补丁程序包,并将补丁程序包录入应用程序对应的服务器的数据库中。当应用程序在终端设备启动时,终端设备通过服务器提供的网络数据接口获取应用程序的补丁修复包。本应用场景下,服务器会将数据库中存储的补丁修复包下发至终端设备。步骤120,获取应用程序中与补丁修复包对应的待替换函数。其中,待替换函数可以是已经安装于已经发布的应用程序的代码文件中定义的类的函数,待替换函数和补丁修复包的定义的类中的函数具有相同的函数名。可选的,获取应用程序中与补丁修复包对应的待替换函数,可通过下述方式实施:获取补丁修复包中的定义的类中的函数;根据定义的类中的函数在应用程序中查找与补丁修复包对应的待替换函数。具体的,获取补丁修复包中的定义的类中的函数可以是获取补丁修复包中的定义的类中的函数的名称,然后根据定义的类中的函数的名称在应用程序的代码文件中查找具有相同名称的待替换函数,即为与补丁修复包对应的待替换函数。步骤130,采用设定补丁引擎用补丁修复包替换待替换函数进行执行,完成应用程序的更新。本实施例中,设定补丁引擎可以是采用Ruby语言开发的补丁引擎,可以称之为MRubyCocoaPatch。具体的,采用设定补丁引擎将补丁修复包替换与之对应的待替换函数,当应用程序在运行过程中,调用上述定义的类中的函数时本文档来自技高网...

【技术保护点】
1.一种iOS应用程序的更新方法,其特征在于,包括:获取应用程序的补丁修复包,所述补丁修复包为通过第一编程语言编写的脚本程序代码文件;获取所述应用程序中与所述补丁修复包对应的待替换函数;采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,完成所述应用程序的更新。

【技术特征摘要】
1.一种iOS应用程序的更新方法,其特征在于,包括:获取应用程序的补丁修复包,所述补丁修复包为通过第一编程语言编写的脚本程序代码文件;获取所述应用程序中与所述补丁修复包对应的待替换函数;采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,完成所述应用程序的更新。2.根据权利要求1所述的方法,其特征在于,所述获取所述应用程序中与所述补丁修复包对应的待替换函数,包括:获取所述补丁修复包中的定义的类中的函数;根据所述定义的类中的函数在所述应用程序中查找与所述补丁修复包对应的待替换函数。3.根据权利要求2所述的方法,其特征在于,所述采用设定补丁引擎用所述补丁修复包替换所述待替换函数进行执行,包括:用替换函数替换所述待替换函数;所述替换函数通过第二编程语言编写;建立所述替换函数与所述补丁修复包的调用接口;在执行所述替换函数时,通过所述调用接口调用所述补丁修复包中的定义的类中的函数进行执行。4.根据权利要求3所述的方法,其特征在于,建立所述替换函数与所述补丁修复包的调用接口,包括:将所述待替换函数的函数调用信息通过第二编程语言接口传送至所述替换函数;根据所述函数调用信息建立所述替换函数与所述补丁修复包的调用接口。5.根据权利要求1所述的方法,其特征在于,所述获取应用程序的补丁修复包,包括:在应用程序启动时...

【专利技术属性】
技术研发人员:徐可
申请(专利权)人:杭州贝购科技有限公司
类型:发明
国别省市:浙江,33

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

1