CN108717359A - 一种基于离线包的app模块的更新方法 - Google Patents
一种基于离线包的app模块的更新方法 Download PDFInfo
- Publication number
- CN108717359A CN108717359A CN201810445293.2A CN201810445293A CN108717359A CN 108717359 A CN108717359 A CN 108717359A CN 201810445293 A CN201810445293 A CN 201810445293A CN 108717359 A CN108717359 A CN 108717359A
- Authority
- CN
- China
- Prior art keywords
- offline
- file
- server end
- pages
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种基于离线包的APP模块的更新方法,包括如下步骤:获取构成一个或一组H5页面的资源,将所述资源统一存储于一个文件夹下,对所述文件夹进行压缩,打包成压缩文件,并传输到服务器端,服务器端为每一个压缩文件分派唯一的id号,分派版本号,形成离线包,服务器端生成统一的配置文件,用于存储、查询离线包的信息,客户端APP启动时,获取服务器端的配置文件,确定是否有新的离线包被发布,如果有,则尝试从服务器端获取新的离线包,存储于客户端本地,如果无,则读取存储于客户端本地的最后一版的离线包。本发明,能按需快速更新H5页面,节省流量,提高客户端的加载速度,提升用户体验,提升后期维护的便利性,提高开发效率。
Description
技术领域
本发明涉及APP模块管理技术领域,具体说是一种基于离线包的APP模块的更新方法。
背景技术
现在的APP,很多是Native和H5混合开发的,主要的实现思想是:用H5做页面,以JS为桥梁,调用Native方法,Native用WebView装载H5页面,控制H5页面,这样实现了H5与Native的交互。这样做的好处是各个端只需要一套页面,维护成本低,而且H5可以随便修改,APP不用升级也可以更新,曲线实现了“热更新”。但是在性能上,肯定没有纯Native好,而且在体验上也没有Native那么好。
H5是html5的简称。HTML最新的修订版本,是一种超文本标记语言。H5先调用系统的浏览器内核,相当于是在网页中进行操作,较Native稳定性稍差、速度较慢。优点在于可以跨平台,同时开发容易、效率高、方便调试。
Native使用原生系统内核,相当于直接在系统上操作,更加稳定、快速,可以使用非常非常多的API,因此开发出来的功能较佳。
通常,Native和H5混合开发采用以下方案:
重要模块是Native开发,保证了APP的流畅度和比较好的用户体验;
要求及时更新的模块是H5开发,如比赛页面,广告活动页面,因为用H5开发的好处是开发周期短,可以在线更新。
Native和H5混合开发的APP的更新目前没有统一的方案,为提高开发效率,提升后期维护的便利性,减少BUG的出现,有必要对APP模块的更新进行优化。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于离线包的APP模块的更新方法,能按需快速更新H5页面,节省流量,提高客户端的加载速度,提升用户体验,提升后期维护的便利性,提高开发效率。
为达到以上目的,本发明采取的技术方案是:
一种基于离线包的APP模块的更新方法,其特征在于,包括如下步骤:
获取构成一个或一组H5页面的资源,
所述资源包括:HTML代码,CSS代码,JS代码和静态图片,
将所述资源统一存储于一个文件夹下,
对所述文件夹进行压缩,打包成压缩文件,并传输到服务器端,
服务器端为每一个压缩文件分派唯一的id号,分派版本号,形成离线包,
服务器端生成统一的配置文件,用于存储、查询离线包的信息,
客户端APP启动时,获取服务器端的配置文件,确定是否有新的离线包被发布,
如果有,则尝试从服务器端获取新的离线包,存储于客户端本地,
如果无,则读取存储于客户端本地的最后一版的离线包。
在上述技术方案的基础上,对所述文件夹进行压缩,打包成zip格式的压缩文件。
在上述技术方案的基础上,客户端APP启动后,当用户需访问的H5页面,在离线包中有更新的对应版本时,直接从客户端本地的离线包获取。
在上述技术方案的基础上,当用户需访问H5页面时,根据离线包id号查询是否H5页面存储于某离线包中。
在上述技术方案的基础上,如果用户需访问H5页面不在离线包中,则APP发起网络请求,在线获取H5页面。
本发明所述的基于离线包的APP模块的更新方法,能按需快速更新H5页面,节省流量,提高客户端的加载速度,提升用户体验,提升后期维护的便利性,提高开发效率。
附图说明
本发明有如下附图:
图1 本发明的流程图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
如图1所示,本发明所述的基于离线包的APP模块的更新方法,包括如下步骤:
获取构成一个或一组H5页面的资源,
所述资源包括:HTML代码,CSS代码,JS代码和静态图片,
将所述资源统一存储于一个文件夹下,
对所述文件夹进行压缩,打包成压缩文件,并传输到服务器端,
服务器端为每一个压缩文件分派唯一的id号,分派版本号,形成离线包,
服务器端生成统一的配置文件,用于存储、查询离线包的信息,
客户端APP启动时,获取服务器端的配置文件,确定是否有新的离线包被发布,
如果有,则尝试从服务器端获取新的离线包,存储于客户端本地,
如果无,则读取存储于客户端本地的最后一版的离线包。
在上述技术方案的基础上,对所述文件夹进行压缩,打包成zip格式的压缩文件。
在上述技术方案的基础上,客户端APP启动后,当用户需访问的H5页面,在离线包中有更新的对应版本时,直接从客户端本地的离线包获取。
由于离线包存储于客户单本地,对H5页面的访问,不再需要走网络请求,仅需打开本地网页即可,大大提高了访问速度、访问效率,也非常易于维护。只要离线包没有更新,仅需下载很少量的配置文件即可,节省流量,有利于提高客户端的加载速度,可以在一定程度上避免DNS劫持问题对用户的影响,提升用户体验。
在上述技术方案的基础上,当用户需访问H5页面时,根据离线包id号查询是否H5页面存储于某离线包中。
在上述技术方案的基础上,如果用户需访问H5页面不在离线包中,则APP发起网络请求,在线获取H5页面。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (5)
1.一种基于离线包的APP模块的更新方法,其特征在于,包括如下步骤:
获取构成一个或一组H5页面的资源,
所述资源包括:HTML代码,CSS代码,JS代码和静态图片,
将所述资源统一存储于一个文件夹下,
对所述文件夹进行压缩,打包成压缩文件,并传输到服务器端,
服务器端为每一个压缩文件分派唯一的id号,分派版本号,形成离线包,
服务器端生成统一的配置文件,用于存储、查询离线包的信息,
客户端APP启动时,获取服务器端的配置文件,确定是否有新的离线包被发布,
如果有,则尝试从服务器端获取新的离线包,存储于客户端本地,
如果无,则读取存储于客户端本地的最后一版的离线包。
2.如权利要求1所述的基于离线包的APP模块的更新方法,其特征在于:对所述文件夹进行压缩,打包成zip格式的压缩文件。
3.如权利要求1所述的基于离线包的APP模块的更新方法,其特征在于:客户端APP启动后,当用户需访问的H5页面,在离线包中有更新的对应版本时,直接从客户端本地的离线包获取。
4.如权利要求3所述的基于离线包的APP模块的更新方法,其特征在于:当用户需访问H5页面时,根据离线包id号查询是否H5页面存储于某离线包中。
5.如权利要求4所述的基于离线包的APP模块的更新方法,其特征在于:如果用户需访问H5页面不在离线包中,则APP发起网络请求,在线获取H5页面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810445293.2A CN108717359A (zh) | 2018-05-10 | 2018-05-10 | 一种基于离线包的app模块的更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810445293.2A CN108717359A (zh) | 2018-05-10 | 2018-05-10 | 一种基于离线包的app模块的更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108717359A true CN108717359A (zh) | 2018-10-30 |
Family
ID=63899708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810445293.2A Pending CN108717359A (zh) | 2018-05-10 | 2018-05-10 | 一种基于离线包的app模块的更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108717359A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109697069A (zh) * | 2018-11-26 | 2019-04-30 | 福建天泉教育科技有限公司 | 一种h5应用的打包方法及终端 |
CN109962972A (zh) * | 2018-12-25 | 2019-07-02 | 阿里巴巴集团控股有限公司 | 一种离线包重组方法及系统 |
CN111078257A (zh) * | 2019-12-19 | 2020-04-28 | 杭州安恒信息技术股份有限公司 | 一种h5应用包的加载方法及相关装置 |
CN111538926A (zh) * | 2020-04-20 | 2020-08-14 | 北京达佳互联信息技术有限公司 | 一种离线包自动发布方法、装置、电子设备及存储介质 |
CN111654428A (zh) * | 2020-06-05 | 2020-09-11 | 天津卓朗科技发展有限公司 | 离线消息处理方法、装置和服务器 |
CN113703815A (zh) * | 2021-10-29 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 离线资源更新方法、装置、终端和存储介质 |
CN117493716A (zh) * | 2023-11-08 | 2024-02-02 | 中建八局第一数字科技有限公司 | 移动端Web App的展示更新方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011062685A1 (en) * | 2009-11-23 | 2011-05-26 | Alibaba Group Holding Limited | Apparatus and method for loading and updating codes of cluster-based java application system |
CN106815370A (zh) * | 2017-01-24 | 2017-06-09 | 腾讯科技(深圳)有限公司 | 更新资源文件的方法、装置和系统 |
CN108008971A (zh) * | 2017-12-04 | 2018-05-08 | 科大国创软件股份有限公司 | 一种基于html5的离线压缩包下载实现移动app模块升级的方法 |
-
2018
- 2018-05-10 CN CN201810445293.2A patent/CN108717359A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011062685A1 (en) * | 2009-11-23 | 2011-05-26 | Alibaba Group Holding Limited | Apparatus and method for loading and updating codes of cluster-based java application system |
CN106815370A (zh) * | 2017-01-24 | 2017-06-09 | 腾讯科技(深圳)有限公司 | 更新资源文件的方法、装置和系统 |
CN108008971A (zh) * | 2017-12-04 | 2018-05-08 | 科大国创软件股份有限公司 | 一种基于html5的离线压缩包下载实现移动app模块升级的方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109697069A (zh) * | 2018-11-26 | 2019-04-30 | 福建天泉教育科技有限公司 | 一种h5应用的打包方法及终端 |
CN109697069B (zh) * | 2018-11-26 | 2022-07-26 | 福建天泉教育科技有限公司 | 一种h5应用的打包方法及终端 |
CN109962972A (zh) * | 2018-12-25 | 2019-07-02 | 阿里巴巴集团控股有限公司 | 一种离线包重组方法及系统 |
CN109962972B (zh) * | 2018-12-25 | 2021-07-30 | 创新先进技术有限公司 | 一种离线包重组方法及系统 |
CN113873013B (zh) * | 2018-12-25 | 2023-06-16 | 创新先进技术有限公司 | 一种离线包重组方法及系统 |
CN113873013A (zh) * | 2018-12-25 | 2021-12-31 | 创新先进技术有限公司 | 一种离线包重组方法及系统 |
CN111078257A (zh) * | 2019-12-19 | 2020-04-28 | 杭州安恒信息技术股份有限公司 | 一种h5应用包的加载方法及相关装置 |
CN111078257B (zh) * | 2019-12-19 | 2023-09-08 | 杭州安恒信息技术股份有限公司 | 一种h5应用包的加载方法及相关装置 |
CN111538926A (zh) * | 2020-04-20 | 2020-08-14 | 北京达佳互联信息技术有限公司 | 一种离线包自动发布方法、装置、电子设备及存储介质 |
CN111654428B (zh) * | 2020-06-05 | 2022-05-17 | 天津卓朗科技发展有限公司 | 离线消息处理方法、装置和服务器 |
CN111654428A (zh) * | 2020-06-05 | 2020-09-11 | 天津卓朗科技发展有限公司 | 离线消息处理方法、装置和服务器 |
CN113703815B (zh) * | 2021-10-29 | 2022-02-11 | 腾讯科技(深圳)有限公司 | 离线资源更新方法、装置、终端和存储介质 |
CN113703815A (zh) * | 2021-10-29 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 离线资源更新方法、装置、终端和存储介质 |
CN117493716A (zh) * | 2023-11-08 | 2024-02-02 | 中建八局第一数字科技有限公司 | 移动端Web App的展示更新方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108717359A (zh) | 一种基于离线包的app模块的更新方法 | |
CN110691136B (zh) | 数据交互方法、装置、电子设备及存储介质 | |
US6964051B1 (en) | Enabling and disabling remote features dynamically in software applications | |
EP2916243B1 (en) | Method, apparatus, server and system for implementing web application | |
US9471704B2 (en) | Shared script files in multi-tab browser | |
US9063765B2 (en) | System and methods for distributed execution of computer executable programs utilizing asymmetric translation | |
US20190243866A1 (en) | Mobile enablement of existing web sites | |
CN100421072C (zh) | 实现软件升级的方法 | |
US20080263052A1 (en) | Multi-format centralized distribution of localized resources for multiple products | |
CN109947433A (zh) | 一种小程序的生成方法、更新方法及装置 | |
CN104731589A (zh) | 用户界面的自动生成方法及自动生成装置 | |
CN104111855A (zh) | 一种基于Lua的iOS客户端功能动态更新的方法 | |
EP2486498A1 (en) | Shared script files in multi-tab browser | |
CN104657118A (zh) | Native+Web混合移动应用的实现方法及装置 | |
CN105763626A (zh) | 适用于应用客户端支付的sdk初始化方法 | |
CN112799663A (zh) | 页面显示方法、装置、计算机可读存储介质及电子设备 | |
CN108733388A (zh) | 一种基于Native离线包的H5页面解析方法 | |
CN109213536A (zh) | 资源展示方法、资源展示类控件的配置方法、装置及设备 | |
CN114297549A (zh) | 组件处理方法及装置 | |
US20150012819A1 (en) | Template-driven decoration engine | |
CN109634758A (zh) | 基于json文件控制事件和行为的方法及中间件平台 | |
CN113220339A (zh) | 一种页面生成方法和装置 | |
CN102999360A (zh) | 基于嵌入式web-omt页面动态时钟的实现方法 | |
CN109240673B (zh) | 一种基于react-native的视图动态加载更新方法及系统 | |
CN105574114A (zh) | 基于电信资源管理标准控件库的在线绘图方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |