CN107463405A - 一种应用程序的更新方法及装置 - Google Patents
一种应用程序的更新方法及装置 Download PDFInfo
- Publication number
- CN107463405A CN107463405A CN201710659574.3A CN201710659574A CN107463405A CN 107463405 A CN107463405 A CN 107463405A CN 201710659574 A CN201710659574 A CN 201710659574A CN 107463405 A CN107463405 A CN 107463405A
- Authority
- CN
- China
- Prior art keywords
- application program
- version numbers
- configuration file
- renewal
- app
- 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.)
- Granted
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
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)
- Stored Programmes (AREA)
Abstract
本发明提供一种应用程序的更新方法及装置,其中,方法包括,启动步骤,启动应用程序,获取应用程序的基本信息,并从服务器中加载预先存储的配置文件;判断步骤,根据基本信息和配置文件,判断是否需要对应用程序更新;更新步骤,根据配置文件对应用程序更新。本发明提供的应用程序的更新方法及装置,采用配置文件对应用程序进行更新,可替代反复大量的代码编写,简便且效率高。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用程序的更新方法及装置。
背景技术
React-Native是Facebook推出的框架,使用JS脚本语言开发应用程序(Application,APP)应用。由于JS脚本语言无法调用手机敏感信息,例如相机模块。因此,若APP需要调用***参数/功能,依然需要原生页面。也就是说,一款APP开发大多是混合开发环境,即原生页面、RN(React-Native,RN)页面、H5页面共存。
目前,RN框架下的APP开发,若要实现版本更新(例如,热更新,增量更新),需要编写大量的固定代码来实现,也就是说,开发者需要针对每一次更新编写大量代码,开发难度大,效率不够高。
发明内容
本发明要解决的技术问题是提供一种应用程序的更新方法及装置,采用配置文件对应用程序进行更新,可替代反复大量的代码编写,简便且效率高。
为解决上述技术问题,本发明提供的技术方案是:
一方面,本发明提供一种应用程序的更新方法,包括,
启动步骤,启动应用程序,获取应用程序的基本信息,并从服务器中加载预先存储的配置文件;
判断步骤,根据基本信息和配置文件,判断是否需要对应用程序更新;
更新步骤,根据配置文件对应用程序更新。
进一步地,应用程序的基本信息包括,当前APP版本号,当前RN版本号。
进一步地,配置文件中包括,APP版本号列表,RN版本号列表,增量表,APP版本号与RN版本号间的对应关系表,更新判断规则,RN更新文件下载路径。
进一步地,判断步骤具体为,根据配置文件中的APP版本号列表,RN版本号列表,和更新判断规则,以及根据基本信息中的当前APP版本号和当前RN版本号,判断是否需要对应用程序更新。
进一步地,更新步骤具体为,
根据配置文件中的增量表,对APP脚本进行更新;
根据配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,对RN页面进行更新;其中,
应用程序的更新包括APP脚本的更新和RN页面的更新。
另一方面,本发明还提供了一种应用程序的更新装置,包括,
启动单元,启动应用程序,获取应用程序的基本信息,并从服务器中加载预先存储的配置文件;
判断单元,根据基本信息和配置文件,判断是否需要对应用程序更新;
更新单元,根据配置文件对应用程序更新。
进一步地,应用程序的基本信息包括,当前APP版本号,当前RN版本号。
进一步地,配置文件中包括,APP版本号列表,RN版本号列表,增量表,APP版本号与RN版本号间的对应关系表,更新判断规则,RN更新文件下载路径。
进一步地,判断单元具体用于,根据配置文件中的APP版本号列表,RN版本号列表,和更新判断规则,以及根据基本信息中的当前APP版本号和当前RN版本号,判断是否需要对应用程序更新。
进一步地,更新单元具体用于,
根据配置文件中的增量表,对APP脚本进行更新;
根据配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,对RN页面进行更新;其中,
应用程序的更新包括APP脚本的更新和RN页面的更新。
本发明提供的应用程序的更新方法及装置,采用配置文件对应用程序进行更新,可替代反复大量的代码编写,简便且效率高。
附图说明
图1是本发明实施例提供的应用程序的更新方法的流程图;
图2是本发明实施例提供的应用程序的更新装置的框图。
具体实施方式
下面通过具体的实施例进一步说明本发明,但是,应当理解为,这些实施例仅仅是用于更详细具体地说明之用,而不应理解为用于以任何形式限制本发明。
实施例一
结合图1,本实施例提供的应用程序的更新方法,包括,
启动步骤S1,启动应用程序,获取应用程序的基本信息,并从服务器中加载预先存储的配置文件;
判断步骤S2,根据基本信息和配置文件,判断是否需要对应用程序更新;
更新步骤S3,根据配置文件对应用程序更新。
本发明实施例提供的应用程序的更新方法,采用配置文件对应用程序进行更新,可替代反复大量的代码编写,简便且效率高。
优选地,应用程序的基本信息包括,当前APP版本号,当前RN版本号。
进一步优选地,配置文件中包括,APP版本号列表,RN版本号列表,增量表,APP版本号与RN版本号间的对应关系表,更新判断规则,RN更新文件下载路径。
具体地,判断步骤S2具体为,根据配置文件中的APP版本号列表,RN版本号列表,和更新判断规则,以及根据基本信息中的当前APP版本号和当前RN版本号,判断是否需要对应用程序更新。更加具体地,本实施例中,将当前APP版本号和当前RN版本号,与配置文件中的APP版本号列表,RN版本号列表进行比对,并根据更新判断规则,判断是否处于更新范围内,以及下一次将更新至何版本,继而判断出是否对应用程序进行更新,以及应该更新至具体的哪一个版本。
本实施例中,根据当前应用程序的版本号来对应用程序进行更新,且是根据不同的版本更新对应的版本文件,需要说明的是,每一个版本的应用程序都对应具有一个版本文件。具体地,例如,对于如下的更新判断规则列表:
[{“6.5.+”,”0.35.1”},{”6.6.5.3”,”0.36.1”}]
对于更新判断规则列表里面的正则表达式“6.5.+”,表示当前应用程序的版本适配到的更新版本只要是6.5.开头的版本(例如,6.5.1.2,6.5.3.2,6.5.4.2等)都是对应同一个下载包,且该下载包的版本为0.35.1,且如果当前应用程序的版本适配到的更新版本是精确的版本6.6.5.3,则对应的文件下载包的版本为0.36.1。
需要说明的是,本实施例中,更新判断规则列表中的规则不止如上所列举的2条,且列表的长度需要结合项目需求来进行配制,本实施例不作具体限定。
更加具体地,更新步骤S3具体为,
根据配置文件中的增量表,对APP脚本进行更新;
根据配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,对RN页面进行更新;其中,
应用程序的更新包括APP脚本的更新和RN页面的更新。
需要说明的是,热更新就是在不重新安装的前提下进行代码和资源的更新,增量热更新,则是只需要把修改过和新增的代码和资源推送给用户下载,以实现应用程序的更新,增量部分的代码和资源都比较小,所以整个热更新流程可以在用户无感的情况下完成。
本实施例中,在对应用程序进行更新时,采用热更新的方式,具体为,根据配置文件中的增量表所指向的增量部分的代码对APP脚本进行更新,且根据配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,将RN页面所涉及的图片资源下载到RN更新文件下载路径,对RN页面进行更新。
实施例二
结合图2,本实施例提供的应用程序的更新装置,包括,
启动单元1,启动应用程序,获取应用程序的基本信息,并从服务器中加载预先存储的配置文件;
判断单元2,根据基本信息和配置文件,判断是否需要对应用程序更新;
更新单元3,根据配置文件对应用程序更新。
本发明实施例提供的应用程序的更新装置,采用配置文件对应用程序进行更新,可替代反复大量的代码编写,简便且效率高。
优选地,应用程序的基本信息包括,当前APP版本号,当前RN版本号。
进一步优选地,配置文件中包括,APP版本号列表,RN版本号列表,增量表,APP版本号与RN版本号间的对应关系表,更新判断规则,RN更新文件下载路径。
具体地,判断单元2具体用于,根据配置文件中的APP版本号列表,RN版本号列表,和更新判断规则,以及根据基本信息中的当前APP版本号和当前RN版本号,判断是否需要对应用程序更新。更加具体地,本实施例中,将当前APP版本号和当前RN版本号,与配置文件中的APP版本号列表,RN版本号列表进行比对,并根据更新判断规则,判断是否处于更新范围内,以及下一次将更新至何版本,继而判断出是否对应用程序进行更新,以及应该更新至具体的哪一个版本。
本实施例中,根据当前应用程序的版本号来对应用程序进行更新,且是根据不同的版本更新对应的版本文件,需要说明的是,每一个版本的应用程序都对应具有一个版本文件。具体地,例如,对于如下的更新判断规则列表:
[{“6.5.+”,”0.35.1”},{”6.6.5.3”,”0.36.1”}]
对于更新判断规则列表里面的正则表达式“6.5.+”,表示当前应用程序的版本适配到的更新版本只要是6.5.开头的版本(例如,6.5.1.2,6.5.3.2,6.5.4.2等)都是对应同一个下载包,且该下载包的版本为0.35.1,且如果当前应用程序的版本适配到的更新版本是精确的版本6.6.5.3,则对应的文件下载包的版本为0.36.1。
需要说明的是,本实施例中,更新判断规则列表中的规则不止如上所列举的2条,且列表的长度需要结合项目需求来进行配制,本实施例不作具体限定。
更加具体地,更新单元3具体用于,
根据配置文件中的增量表,对APP脚本进行更新;
根据配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,对RN页面进行更新;其中,
应用程序的更新包括APP脚本的更新和RN页面的更新。
需要说明的是,热更新就是在不重新安装的前提下进行代码和资源的更新,增量热更新,则是只需要把修改过和新增的代码和资源推送给用户下载,以实现应用程序的更新,增量部分的代码和资源都比较小,所以整个热更新流程可以在用户无感的情况下完成。
本实施例中,在对应用程序进行更新时,采用热更新的方式,具体为,根据配置文件中的增量表所指向的增量部分的代码对APP脚本进行更新,且根据配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,将RN页面所涉及的图片资源下载到RN更新文件下载路径,对RN页面进行更新。
尽管本发明已进行了一定程度的描述,明显地,在不脱离本发明的精神和范围的条件下,可进行各个条件的适当变化。可以理解,本发明不限于所述实施方案,而归于权利要求的范围,其包括所述每个因素的等同替换。
Claims (10)
1.一种应用程序的更新方法,其特征在于,包括,
启动步骤,启动应用程序,获取所述应用程序的基本信息,并从服务器中加载预先存储的配置文件;
判断步骤,根据所述基本信息和所述配置文件,判断是否需要对所述应用程序更新;
更新步骤,根据所述配置文件对所述应用程序更新。
2.根据权利要求1所述的应用程序的更新方法,其特征在于,所述应用程序的所述基本信息包括,当前APP版本号,当前RN版本号。
3.根据权利要求2所述的应用程序的更新方法,其特征在于,所述配置文件中包括,APP版本号列表,RN版本号列表,增量表,APP版本号与RN版本号间的对应关系表,更新判断规则,RN更新文件下载路径。
4.根据权利要求3所述的应用程序的更新方法,其特征在于,
所述判断步骤具体为,根据所述配置文件中的APP版本号列表,RN版本号列表,和更新判断规则,以及根据所述基本信息中的当前APP版本号和当前RN版本号,判断是否需要对所述应用程序更新。
5.根据权利要求3所述的应用程序的更新方法,其特征在于,所述更新步骤具体为,
根据所述配置文件中的增量表,对APP脚本进行更新;
根据所述配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,对RN页面进行更新;其中,
应用程序的更新包括APP脚本的更新和RN页面的更新。
6.一种应用程序的更新装置,其特征在于,包括,
启动单元,启动应用程序,获取所述应用程序的基本信息,并从服务器中加载预先存储的配置文件;
判断单元,根据所述基本信息和所述配置文件,判断是否需要对所述应用程序更新;
更新单元,根据所述配置文件对应用程序更新。
7.根据权利要求6所述的应用程序的更新装置,其特征在于,所述应用程序的所述基本信息包括,当前APP版本号,当前RN版本号。
8.根据权利要求7所述的应用程序的更新装置,其特征在于,所述配置文件中包括,APP版本号列表,RN版本号列表,增量表,APP版本号与RN版本号间的对应关系表,更新判断规则,RN更新文件下载路径。
9.根据权利要求8所述的应用程序的更新装置,其特征在于,
所述判断单元具体用于,根据所述配置文件中的APP版本号列表,RN版本号列表,和更新判断规则,以及根据所述基本信息中的当前APP版本号和当前RN版本号,判断是否需要对所述应用程序更新。
10.根据权利要求8所述的应用程序的更新装置,其特征在于,所述更新单元具体用于,
根据所述配置文件中的增量表,对APP脚本进行更新;
根据所述配置文件中的APP版本号与RN版本号间的对应关系表和RN更新文件下载路径,对RN页面进行更新;其中,
应用程序的更新包括APP脚本的更新和RN页面的更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710659574.3A CN107463405B (zh) | 2017-08-04 | 2017-08-04 | 一种应用程序的更新方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710659574.3A CN107463405B (zh) | 2017-08-04 | 2017-08-04 | 一种应用程序的更新方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107463405A true CN107463405A (zh) | 2017-12-12 |
CN107463405B CN107463405B (zh) | 2020-07-17 |
Family
ID=60548173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710659574.3A Active CN107463405B (zh) | 2017-08-04 | 2017-08-04 | 一种应用程序的更新方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107463405B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108572832A (zh) * | 2018-03-28 | 2018-09-25 | 福建天晴数码有限公司 | 应用版本动态更新的方法及其*** |
CN108776592A (zh) * | 2018-05-23 | 2018-11-09 | 北京五八信息技术有限公司 | 一种页面构建的方法、装置、设备及存储介质 |
CN108804132A (zh) * | 2018-06-06 | 2018-11-13 | 中国平安人寿保险股份有限公司 | 一种配置信息的热刷新方法、装置、电子设备及存储介质 |
CN109491695A (zh) * | 2018-10-19 | 2019-03-19 | 华南理工大学 | 一种集成安卓应用的增量更新方法 |
CN111679842A (zh) * | 2019-03-11 | 2020-09-18 | 阿里巴巴集团控股有限公司 | 应用程序热更新处理方法、装置及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104836843A (zh) * | 2015-03-31 | 2015-08-12 | 北京奇虎科技有限公司 | 客户端应用程序更新的方法及装置 |
CN105930185A (zh) * | 2016-04-19 | 2016-09-07 | 乐视控股(北京)有限公司 | 应用程序更新方法、装置、终端和服务器 |
CN106547569A (zh) * | 2016-11-28 | 2017-03-29 | 武汉斗鱼网络科技有限公司 | 一种应用内的页面访问方法和装置 |
CN106789249A (zh) * | 2016-12-22 | 2017-05-31 | 北京五八信息技术有限公司 | 热更新方法、客户端及服务器 |
-
2017
- 2017-08-04 CN CN201710659574.3A patent/CN107463405B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104836843A (zh) * | 2015-03-31 | 2015-08-12 | 北京奇虎科技有限公司 | 客户端应用程序更新的方法及装置 |
CN105930185A (zh) * | 2016-04-19 | 2016-09-07 | 乐视控股(北京)有限公司 | 应用程序更新方法、装置、终端和服务器 |
CN106547569A (zh) * | 2016-11-28 | 2017-03-29 | 武汉斗鱼网络科技有限公司 | 一种应用内的页面访问方法和装置 |
CN106789249A (zh) * | 2016-12-22 | 2017-05-31 | 北京五八信息技术有限公司 | 热更新方法、客户端及服务器 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108572832A (zh) * | 2018-03-28 | 2018-09-25 | 福建天晴数码有限公司 | 应用版本动态更新的方法及其*** |
CN108572832B (zh) * | 2018-03-28 | 2021-07-06 | 福建天晴数码有限公司 | 应用版本动态更新的方法及其*** |
CN108776592A (zh) * | 2018-05-23 | 2018-11-09 | 北京五八信息技术有限公司 | 一种页面构建的方法、装置、设备及存储介质 |
CN108776592B (zh) * | 2018-05-23 | 2022-04-05 | 北京五八信息技术有限公司 | 一种页面构建的方法、装置、设备及存储介质 |
CN108804132A (zh) * | 2018-06-06 | 2018-11-13 | 中国平安人寿保险股份有限公司 | 一种配置信息的热刷新方法、装置、电子设备及存储介质 |
CN109491695A (zh) * | 2018-10-19 | 2019-03-19 | 华南理工大学 | 一种集成安卓应用的增量更新方法 |
CN109491695B (zh) * | 2018-10-19 | 2021-08-06 | 华南理工大学 | 一种集成安卓应用的增量更新方法 |
CN111679842A (zh) * | 2019-03-11 | 2020-09-18 | 阿里巴巴集团控股有限公司 | 应用程序热更新处理方法、装置及*** |
CN111679842B (zh) * | 2019-03-11 | 2023-06-23 | 阿里巴巴集团控股有限公司 | 应用程序热更新处理方法、装置及*** |
Also Published As
Publication number | Publication date |
---|---|
CN107463405B (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107463405A (zh) | 一种应用程序的更新方法及装置 | |
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN106775723B (zh) | 基于Android平台的***固件定制的方法和Android设备 | |
CN105159788B (zh) | 一种Android应用间动态共享资源的方法及*** | |
CN101706725B (zh) | 一种可重定位程序的加载及调试方法及*** | |
CN104731589A (zh) | 用户界面的自动生成方法及自动生成装置 | |
CN106502725A (zh) | 应用程序的升级方法、设备及电子设备 | |
US20120173962A1 (en) | Online application providing apparatus | |
CN106325847B (zh) | 基于iOS平台获取应用程序功能的方法和装置 | |
CN103544005A (zh) | 一种Android自定义控件的扩展开发方法及装置 | |
CN105487905A (zh) | 一种混合应用的更新方法和装置 | |
CN105718313A (zh) | 应用操作方法和装置 | |
CN103365644A (zh) | 一种扩展软件功能的方法及装置 | |
CN106055330A (zh) | 一种应用程序的管理方法及*** | |
CN106020877A (zh) | ***环境配置自动更新方法及装置 | |
CN103761107B (zh) | 软件包定制的装置及方法 | |
CN105740033A (zh) | 一种终端设备、插件加载运行装置及插件加载运行方法 | |
CN105577813A (zh) | 一种web混合应用的更新方法和*** | |
CN104267981A (zh) | 一种加载桌面上的应用布局的方法及装置 | |
CN112286504A (zh) | 移动APP中基于ReactNative实现小程序开发并加载的方法 | |
CN108776592A (zh) | 一种页面构建的方法、装置、设备及存储介质 | |
CN109857432A (zh) | 一种游戏应用的热更新方法和装置 | |
CN110960855A (zh) | 一种通信协议代码更新方法、装置、电子设备及存储介质 | |
CN104484201A (zh) | 用于ios设备的软件工具开发包更新方法和装置 | |
CN112181432A (zh) | ReactNative框架中实现bundle的模块化打包处理的*** |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder |
Address after: 518000 2203/2204, Building 1, Huide Building, Beizhan Community, Minzhi Street, Longhua District, Shenzhen, Guangdong Patentee after: SHENZHEN AUDAQUE DATA TECHNOLOGY Ltd. Address before: 518000 units J and K, 12 / F, block B, building 7, Baoneng Science Park, Qinghu Industrial Zone, Qingxiang Road, Longhua New District, Shenzhen City, Guangdong Province Patentee before: SHENZHEN AUDAQUE DATA TECHNOLOGY Ltd. |
|
CP02 | Change in the address of a patent holder |