一种高效更新离线包的方法、电子设备及存储介质技术

技术编号:36962724 阅读:10 留言:0更新日期:2023-03-22 19:23
本发明专利技术公开了一种高效更新离线包的方法、电子设备及存储介质。该方法包括APP打包时将需要预置的离线包下载、整合,一并投放到应用市场,下载到客户端本地;APP启动阶段,主动更新启动时下载且状态非正常的离线包;APP使用阶段,用户触发了状态非正常的离线包,客户端直接启用线上地址,确保用户正常使用。客户端后台更新此离线包且状态维护为正常,最后客户端启用本地离线包,线上线下无感切换。客户端后台基于配置中的调度规则,主动最新本地已存在的离线包,确保用户可以直接启用本地离线包内的资源。本发明专利技术通过多种场景解决离线包实时性问题,并有效保障高吞吐量的性能诉求,有效解决发布新包后,无法及时同步到客户端的问题。题。题。

【技术实现步骤摘要】
一种高效更新离线包的方法、电子设备及存储介质


[0001]本专利技术涉及离线包更新
,具体涉及一种高效更新离线包的方法、电子设备及存储介质。

技术介绍

[0002]为了解决Webview加载H5引起的白屏问题,现主流技术当中,离线包技术应用比较广泛。通过将所需静态资源打包、压缩、下载、安装到客户端本地,直接访问本地资源,从而降低网络的影响,解决白屏问题。但同时也引起资源同步实效性的问题,以致新离线包发布后,但客户端本地仍旧使用老包的情况。

技术实现思路

[0003]本专利技术的目的是针对现有技术存在的不足,提供一种高效更新离线包的方法、电子设备及存储介质。
[0004]为实现上述目的,在第一方面,本专利技术提供了一种高效更新离线包的方法,包括:
[0005]1)APP打包阶段
[0006]将需要预置的离线包下载整合,一并投放到应用市场,以供下载到客户端本地;
[0007]2)APP启动阶段
[0008]比对线上、本地的全局版本号是否一致,若不一致,则主动更新离线包配置,所述离线包配置包括离线包版本号、离线包状态、全局版本号和线上资源地址,并基于配置中的离线包版本号是否一致,在配置中主动维护本地离线包状态,所述离线包状态包括不存在、过期和正常,所述客户端下载状态为非正常、启动时下载的离线包,然后将离线包状态维护为正常;
[0009]3)APP使用阶段
[0010]若用户触发的离线包状态正常,则直接启用本地离线包,否则,客户端直接启用离线包配置中的离线包线上资源地址,客户端后台更新此离线包,然后将状态维护为正常,最后客户端启用本地离线包,实现线上线下无感切换;
[0011]客户端后台根据配置中的调度规则比对线上、本地全局版本号是否一致,若不一致,则获取所有离线包最新的配置,并将最新的配置中的离线包版本号与本地离线包版本号进行比对,若不一致,则在配置中主动维护本地离线包状态为过期,然后客户端主动更新状态过期的离线包,下载安装成功后并将离线包状态维护为正常。
[0012]进一步的,所述离线包配置还包括离线包id、离线包名称、离线包下载地址、离线包是否预置、离线包是否启动时下载、离线包启用开关、离线包适用SDK版本、离线包适用应用APP版本和离线包启动参数项。
[0013]进一步的,当线上有离线包发生变更时,所述全局版本号同步变更,客户端通过检测全局版本号,及时感知是否有离线包发生变更。
[0014]进一步的,通过离线包配置将公共包、热点包设置为APP启动时下载。
[0015]进一步的,所述调度规则为在运维时段内以第一频率比对线上、本地全局版本号是否一致,其它时间段以第二频率比对线上、本地全局版本号是否一致,第一频率大于第二频率。
[0016]在第二方面,本专利技术提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。
[0017]在第三方面,本专利技术提供了一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述方法。
[0018]有益效果:本专利技术通过多种场景解决离线包实时性问题,并有效保障高吞吐量的性能诉求,有效解决发布新包后,无法及时同步到客户端的问题。
附图说明
[0019]图1为本专利技术实施例的预置加载的流程示意图;
[0020]图2为本专利技术实施例的APP启动更新离线包流程示意图;
[0021]图3为本专利技术实施例的访问时更新离线包流程示意图;
[0022]图4为本专利技术实施例的调度更新离线包流程示意图。
具体实施方式
[0023]下面结合附图和具体实施例,进一步阐明本专利技术,本实施例在以本专利技术技术方案为前提下进行实施,应理解这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围。
[0024]如图1至4所示,本专利技术实施例提供了一种高效更新离线包的方法,包括:
[0025]1)APP打包阶段
[0026]将需要预置的离线包下载整合,一并投放到应用市场,以供下载到客户端本地。上述预置包括离线包配置新增是否需要预置,将公共包、热点包等设置为预置,APP打包时才会将其整合,降低APP启动时更新的负荷。通过控制预置数量,也能避免所有离线包都整合到APP中而引起APP打包过大问题。需要说明的是,上述公共包和热点包是将离线包根据其业务功能进行划分的,除此之外离线包还包括普通包,公共包是将APP公共资源文件打包成的数据包,热点包是指将APP内点击率较高的功能对应的文件打包成的数据包。
[0027]具体可参见图1,该阶段包括步骤S101

S104:
[0028]步骤S101,APP打包平台获取需要预置的离线包配置。
[0029]步骤S102,APP根据离线包配置中下载地址,从文件管理平台下载离线包。
[0030]步骤S103,APP将下载的离线包整合、打包。
[0031]步骤S104,APP与预置的离线包一起投放应用市场。
[0032]2)APP启动阶段
[0033]比对线上、本地的全局版本号是否一致,若不一致,则主动更新离线包配置,上述离线包配置至少包括离线包版本号、离线包状态、全局版本号和线上资源地址,另外,离线包配置还可包括离线包id、离线包名称、离线包下载地址、离线包是否预置、离线包是否启动时下载、离线包启用开关、离线包适用SDK版本、离线包适用应用APP版本和离线包启动参数项。并基于配置中的离线包版本号是否一致,在配置中主动维护本地离线包状态,离线包状态包括不存在、过期和正常,客户端下载状态为非正常、启动时下载的离线包,然后将离
线包状态维护为正常。上述不存在、过期均视为非正常状态,离线包状态由客户端本地自主维护,并基于此状态执行对应的操作,避免反复比对配置项的繁琐过程。另外,可通过离线包配置将公共包、热点包等设置为APP启动时下载,APP启动时会主动检查启动时下载的离线包状态,主动更新,同时也避免APP启动时更新所有离线包而引起的启动缓慢问题。
[0034]具体可参见图2,该阶段包括步骤S201

S206:
[0035]步骤S201,客户端启动APP。
[0036]步骤S202,客户端请求线上离线包联机系统,获取离线包全局版本号。
[0037]步骤S203,客户端请求线上离线包联机系统,获取所有离线包配置列表。
[0038]步骤S204,客户端比对本地离线包版本,在配置中主动维护本地离线包状态。
[0039]步骤S205,客户端下载状态为非正常、启动时下载的离线包。
[0040]步骤S206,客户端比对本地离线包版本,在配置中主动维护本地离线包状态。
[0041]3)APP使用阶段
[0042]若用户触发的离线包状态正常,则直接启用本地离线包,否则,客户端直接启用离线包配置中的离线包线上资源地址,客户端后台更新此本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种高效更新离线包的方法,其特征在于,包括:1)APP打包阶段将需要预置的离线包下载整合,一并投放到应用市场,以供下载到客户端本地;2)APP启动阶段比对线上、本地的全局版本号是否一致,若不一致,则主动更新离线包配置,所述离线包配置包括离线包版本号、离线包状态、全局版本号和线上资源地址,并基于配置中的离线包版本号是否一致,在配置中主动维护本地离线包状态,所述离线包状态包括不存在、过期和正常,所述客户端下载状态为非正常、启动时下载的离线包,然后将离线包状态维护为正常;3)APP使用阶段若用户触发的离线包状态正常,则直接启用本地离线包,否则,客户端直接启用离线包配置中的离线包线上资源地址,客户端后台更新此离线包,然后将状态维护为正常,最后客户端启用本地离线包,实现线上线下无感切换;客户端后台根据配置中的调度规则比对线上、本地全局版本号是否一致,若不一致,则获取所有离线包最新的配置,并将最新的配置中的离线包版本号与本地离线包版本号进行比对,若不一致,则在配置中主动维护本地离线包状态为过期,然后客户端主动更新状态过期的离线包,下载安装成功后并将离线包状态维护为正常。2.根据权利要求1所述的一种高效更新离线包的方...

【专利技术属性】
技术研发人员:徐江疆胡磊
申请(专利权)人:江苏苏宁银行股份有限公司
类型:发明
国别省市:

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

1