[发明专利]更新手机软件、获取补丁文件的方法及设备有效
申请号: | 201611180774.2 | 申请日: | 2016-12-20 |
公开(公告)号: | CN106775873B | 公开(公告)日: | 2021-02-23 |
发明(设计)人: | 王晓晖 | 申请(专利权)人: | 北京五八信息技术有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/71;G06F8/73 |
代理公司: | 工业和信息化部电子专利中心 11010 | 代理人: | 吴永亮 |
地址: | 100083 北京市海淀区学清*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 更新 手机软件 获取 补丁 文件 方法 设备 | ||
本发明公开了一种更新手机软件、获取补丁文件的方法及设备,其中,更新方法包括:移动终端接收来自IOS推送服务器的静默消息,其中,静默消息携带有预定APP补丁文件的补丁ID;移动终端根据补丁ID向预定APP对应的服务器下载预定APP的补丁文件;当预定APP被启动时,移动终端加载补丁文件,以更新预定APP。本发明移动终端可以直接加载补丁文件了,整个过程中,在用户毫无察觉的情况下就能够完成软件更新,在APP完全启动前就修复好各种bug,APP不会遇到crash风险,系统性能整体提高,用户体验也较好。
技术领域
本发明涉及通讯领域,特别是涉及一种更新手机软件、获取补丁文件的方法及设备。
背景技术
目前市面上的各种APP(手机软件)或多或少都会遇到线上版本有重大bug(漏洞)的情况。有时我们的bug修复需要更新程序,但在苹果商店中发布新版本的时间是很长的,因此,我们需要有一套可利用的机制,以便在不发版的情况下就能修复线上的bug。
大多数开发者的做法是使用热修复技术,也就是在APP刚一启动的时候去下载一段修复脚本,利用Objective-C的动态特性将有问题的代码替换掉,从而使APP能够正常运行,其技术细节如下:
(1)如果APP存在bug,则开发者把正确的代码作为补丁文件上传到APP对应的服务器。当前主流的补丁文件,一种是JSPatch,一种是lua脚本。
(2)当APP启动时,首先加载本地已经下载了的补丁文件,APP把补丁文件中的代码解析出来,利用IOS系统专用语言objective-c的动态性和运行时机制,替换APP包中旧的错误代码。
(3)APP启动时,同时发送接口请求,询问服务器是否有新的补丁文件,如果有,则下载这个补丁文件到本地。此时,APP处于等待状态,同时APP继续执行启动流程,以开启APP进行使用。
当APP等到第(3)步下载完成补丁文件后,在下一次重新启动该APP时,会向步骤(2)的过程一样,重新去加载新的补丁文件。
上述过程中,由于APP启动时已经加载了已下载的补丁文件,因此,当APP执行到出现bug的页面时,会执行被替换后的正确代码,而非有问题的旧代码,因此,通过以上方法,不需要发版,就可实现修复线上APP的bug。
然而,如果当前APP的bug发生在启动过程中,导致来不及下载服务器上新的补丁文件,在刚启动的过程中就会crash(崩溃),则当前APP的bug将得不到修复,将会一启动就crash,用户将无法使用当前APP,必须等到重新发版才可以使用,用户体验较低。
发明内容
本发明提供一种更新手机软件、获取补丁文件的方法及设备,用以解决现有技术的如下问题:如果当前APP的bug发生在启动过程中,会导致来不及下载服务器上新的补丁文件,在刚启动的过程中APP就会crash,用户将无法使用当前APP,必须等到重新发版才可以使用,用户体验较低。
为解决上述技术问题,一方面,本发明提供一种更新手机软件的方法,包括:移动终端接收来自IOS推送服务器的静默消息,其中,所述静默消息携带有预定APP补丁文件的补丁ID;所述移动终端根据所述补丁ID向所述预定APP对应的服务器下载所述预定APP的补丁文件;当所述预定APP被启动时,所述移动终端加载所述补丁文件,以更新所述预定APP。
可选的,所述移动终端加载所述补丁文件,包括:所述移动终端检测内存中是否存在已下载的补丁文件;在存在所述已下载的补丁文件的情况下,所述移动终端加载所述补丁文件。
可选的,所述移动终端加载所述补丁文件,包括:所述移动终端检测所述已下载的补丁文件的数量是否大于一个;在所述已下载的补丁文件的数量大于一个的情况下,加载时间上距离所述预定APP开启时间最近的补丁文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京五八信息技术有限公司,未经北京五八信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611180774.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:终端设备控制方法及装置
- 下一篇:终端设备的系统升级方法