【技术实现步骤摘要】
应用热更新方法及装置
[0001]本专利技术涉及应用开发
,具体而言,涉及一种应用热更新方法及装置。
技术介绍
[0002]Hybrid应用是目前比较流行的一种应用,其从外观上来看是一个Native app,实则只有一个UIWebView,里面访问的是一个web app。Hybrid应用允许开发者仅使用一套网页语言代码(HTML5+CSS+JavaScript),即可开发能够在不同平台上部署的类原生应用,并通过更新网页内容实现应用内容的更新。此类APP的内容加载及更新依赖于网络状态,因此H5离线包技术应运而生。通过把网页静态资源预置至本地来减少网络环境的依赖,通过动态的更新离线包来实现热更新。
[0003]为了解决Hybrid应用的性能和资源加载问题,通常使用离线包技术进行优化。离线包技术也可以用于Hybrid应用的热更新,但是现有的离线包热更新技术往往不包含回滚机制,在资源加载失败后也没有相应的纠错措施。
[0004]由此可见,现有的热更新方法存在无资源回滚机制的缺点。
技术实现思路
[0005]本专利技术为了解决现有的热更新方法存在无资源回滚机制的缺点,提出了一种应用热更新方法及装置。
[0006]为了实现上述目的,根据本专利技术的一个方面,提供了一种应用热更新方法,该方法包括:
[0007]在每次启动应用时,检测是否存在所述应用对应的回滚标记;
[0008]若存在回滚标记,则进行回滚操作;若不存在回滚标记,则确定所述应用的热更新介质存储目录中是否含有 ...
【技术保护点】
【技术特征摘要】
1.一种应用热更新方法,其特征在于,包括:在每次启动应用时,检测是否存在所述应用对应的回滚标记;若存在回滚标记,则进行回滚操作;若不存在回滚标记,则确定所述应用的热更新介质存储目录中是否含有热更新介质;若含有热更新介质,则先设置所述应用对应的回滚标记,然后对热更新介质进行校验,若校验通过,则清除设置的所述回滚标记并且向服务器发送热更新请求;若不含有热更新介质,则对所述应用的原始介质文件进行校验,若校验通过,则向服务器发送热更新请求;根据服务器响应热更新请求发送的响应信息确定是否存在热更新版本,若存在,则从服务器下载热更新介质,并在所述热更新介质存储目录中含有热更新介质时,用从服务器下载的热更新介质替换所述热更新介质存储目录中含有的热更新介质,以及在所述热更新介质存储目录中不含有热更新介质时,将从服务器下载的热更新介质存储到所述热更新介质存储目录中,然后重启所述应用。2.根据权利要求1所述的应用热更新方法,其特征在于,所述进行回滚操作,具体包括:删除所述热更新介质存储目录中的热更新介质,并根据删除的热更新介质生成回滚版本签名;判断所述应用对应的回滚次数标记是否小于预设值;若小于所述预设值,则使所述回滚次数标记加1、清除回滚标记以及清除所述回滚版本签名,然后重启所述应用;若大于或等于所述预设值,则清除回滚标记以及将所述回滚次数标记清零,然后重启所述应用。3.根据权利要求1所述的应用热更新方法,其特征在于,所述重启所述应用,具体包括:若存在所述应用对应的回滚版本签名,则清除该回滚版本签名,若所述应用对应的回滚次数标记不为0,则将回滚次数标记清零,然后重启所述应用。4.根据权利要求1所述的应用热更新方法,其特征在于,所述响应信息中包含热更新介质签名;所述根据服务器响应所述热更新请求发送的响应信息确定是否存在热更新版本,具体包括:在所述热更新介质存储目录中含有热更新介质时,所述响应信息中的热更新介质签名与所述热更新介质存储目录中的热更新介质的签名不相同,并且在存在所述应用对应的回滚版本签名时,所述响应信息中的热更新介质签名与所述回滚版本签名也不相同,则确定存在热更新版本。5.根据权利要求4所述的应用热更新方法,其特征在于,所述根据服务器响应所述热更新请求发送的响应信息确定是否存在热更新版本,具体还包括:在所述热更新介质存储目录中不含有热更新介质时,所述响应信息中的热更新介质签名与所述原始介质文件的签名不相同,并且在存在所述回滚版本签名时,所述响应信息中的热更新介质签名与所述回滚版本签名也不相同,则确定存在热更新版本。6.根据权利要求1所述的应用热更新方法,其特征在于,还包括:若校验热更新介质不通过,则重启所述应用。7.根据权利要求1所述的应用热更新方法,其特征在于,还包括:
若校验所述原始介质文件不通过,则重启所述应用。8.一种应用热更新装置,其特征在于,包括:回滚标记检测模块,用于在每次启动应用时,检测是否存在所述应用对应的回滚标记;回滚处理模块,用于在存...
【专利技术属性】
技术研发人员:尚昱辰,杨新财,顾正之,王震,杜学智,王超,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。