CN104111856A - A software upgrade method and system based on resource pack - Google Patents
A software upgrade method and system based on resource pack Download PDFInfo
- Publication number
- CN104111856A CN104111856A CN201410367964.XA CN201410367964A CN104111856A CN 104111856 A CN104111856 A CN 104111856A CN 201410367964 A CN201410367964 A CN 201410367964A CN 104111856 A CN104111856 A CN 104111856A
- Authority
- CN
- China
- Prior art keywords
- resource
- packs
- pack
- package
- software upgrade
- 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
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000009434 installation Methods 0.000 claims abstract description 21
- 238000013475 authorization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
Description
技术领域 technical field
本发明属于移动技术领域,具体涉及一种基于资源包的无需人工干预的Android软件自动安装升级方法和系统,适合于Android移动设备终端。 The invention belongs to the field of mobile technology, and in particular relates to a method and system for automatically installing and upgrading Android software based on resource packs without manual intervention, and is suitable for Android mobile device terminals.
背景技术 Background technique
现有技术中,Android客户端软件升级是最常见的问题,目前最常用方法是: In the prior art, the Android client software upgrade is the most common problem, and the most commonly used method is at present:
利用程序自带版本控制和自动升级功能,这种办法对于更新不是很频繁的一般场景没什么问题,但针对海量公众用户群的时候,客户端的频繁升级给客户带来的影响的很大的,会影响软件的用户体验和推广,因为Android系统本身要求安装应用必须人工干预。 Using the program's built-in version control and automatic upgrade functions, this method is fine for general scenarios where updates are not very frequent, but for a large number of public user groups, frequent client upgrades will have a great impact on customers, and will Affect the user experience and promotion of the software, because the Android system itself requires manual intervention to install applications.
为了解决易于更新,不需要客户端变动,衍生出利用HTML5方式开发应用,这样功能更新直接在服务器端更新即可,但基于浏览器的原因,很多设备本身的功能难以发挥,对于客户端体验要求高的场景不太合适。 In order to solve the problem of easy update without changing the client side, the development of applications using HTML5 is derived, so that the function update can be updated directly on the server side. However, due to browser reasons, many device functions are difficult to play. High scenes are not suitable.
另外,还有一种方式就是利用插件方式,把新功能做成独立的apk安装包,安装后自动集成进入原程序,这样更新新功能,就不需要升级已经装的程序,只需要安装一个功能插件,这种方式虽然在一定程度上解决更新问题,但每一次加新功能都需要安装附加包,即系统要求的安装授权的过程,就需人工干预来执行,同时产生一堆小应用,影响用户体验。 In addition, there is another way to use the plug-in method to make the new function into an independent apk installation package. After installation, it will be automatically integrated into the original program. In this way, there is no need to upgrade the installed program to update the new function, and only need to install a functional plug-in , although this method solves the update problem to a certain extent, every time a new function is added, an additional package needs to be installed, that is, the process of installing authorization required by the system requires manual intervention to execute, and at the same time, a bunch of small applications are generated, affecting users. experience.
发明内容 Contents of the invention
为解决上述技术问题,本发明旨在提供一种基于资源包的无需人工干预的Android软件自动安装升级方法和系统。 In order to solve the above technical problems, the present invention aims to provide a method and system for automatically installing and upgrading Android software based on resource packs without manual intervention.
本发明采用的技术方案是: The technical scheme adopted in the present invention is:
一种基于资源包的软件升级方法,其特征在于包括以下步骤: A method for upgrading software based on resource packs, characterized in that it comprises the following steps:
A、 制作包含升级内容的资源包; A. Make a resource pack containing upgrade content;
B、 发布并更新资源包; B. Publish and update resource packs;
C、 运行该资源包以完成软件升级。 C. Run the resource pack to complete the software upgrade.
进一步的,所述步骤A将图片布局和代码一起编译并打包成二进制资源包。 Further, in the step A, the image layout and the code are compiled together and packaged into a binary resource package.
其中,所述步骤B包括: Wherein, the step B includes:
B1、给资源包命名,加上版本号,并发布到服务器; B1. Name the resource package, add a version number, and publish it to the server;
B2、客户端程序定时检测服务器以发现资源包; B2. The client program regularly detects the server to discover the resource package;
B3、客户端自动下载资源包并安装更新。 B3. The client automatically downloads the resource package and installs the update.
进一步的,所述步骤C包括: Further, the step C includes:
C1、解析资源包; C1, analyze the resource package;
C2、通过反射技术动态分析并执行资源包所包含的模块功能。 C2. Dynamically analyze and execute the module functions contained in the resource package through reflection technology.
基于与上述方法的同一个发明构思,本技术方案还包括一种基于资源包的软件升级系统,其特征在于包括: Based on the same inventive concept as the above-mentioned method, the technical solution also includes a resource package-based software upgrade system, which is characterized in that it includes:
一软件基础框架,该软件基础框架与系统的功能模块分离; A software basic framework, which is separated from the functional modules of the system;
若干资源包,该资源包为所述功能模块存在形式; Several resource packages, the resource package is the existence form of the functional module;
一资源包管理引擎,该资源包管理引擎用于负责资源包的自动下载、版本管理、安装以及升级管理; A resource pack management engine, which is used for automatic download, version management, installation and upgrade management of resource packs;
一资源包解析引擎,该资源包解析引擎将资源包解析成可以执行的功能模块。 A resource pack parsing engine, which parses the resource pack into executable functional modules.
进一步的,所述资源包包括日常开发程序功能模块的资源和代码。 Further, the resource package includes the resources and codes of the functional modules of the daily development program.
其中,所述资源包管理引擎从服务器上下载实时更新的资源包。 Wherein, the resource package management engine downloads the resource package updated in real time from the server.
进一步的,所述资源包解析引擎对资源包分析,并通过反射技术从编译后的资源包动态分析出可执行的代码。 Further, the resource package parsing engine analyzes the resource package, and dynamically analyzes the executable code from the compiled resource package through reflection technology.
本发明的有益效果: Beneficial effects of the present invention:
本发明Android软件自动安装升级方法和系统将程序框架和功能模块分离,而将所有功能模块,制作成资源包,通过资源包解析引擎将资源包解析成可以执行的功能模块,从而实现程序正常工作。 The Android software automatic installation and upgrading method and system of the present invention separate the program framework from the functional modules, and make all functional modules into resource packages, and resolve the resource packages into executable functional modules through the resource package analysis engine, thereby realizing the normal operation of the program .
而资源包管理引擎主要负责资源包的版本管理,安装,升级管理等,由于资源包不是apk,下载安装资源包和下载普通文件没有区别,从而将程序升级变成普通文件管理一样简单,所有安装升级都可以跳过系统要求的安装授权过程,从而无需人工干预自动执行,实现静默安装,也不会产生小应用; The resource pack management engine is mainly responsible for resource pack version management, installation, upgrade management, etc. Since the resource pack is not an apk, there is no difference between downloading and installing a resource pack and downloading ordinary files, so upgrading the program is as simple as ordinary file management. The upgrade can skip the installation authorization process required by the system, so that it can be executed automatically without manual intervention, realizing silent installation, and no small application will be generated;
这种方法解决普通升级需要人工参与的弊端,又改良了用户体验,特别适合更新比较频繁,用户群大的Android应用。 This method solves the drawbacks of ordinary upgrades that require manual participation, and improves the user experience. It is especially suitable for Android applications that are updated frequently and have a large user base.
附图说明 Description of drawings
下面结合附图对本发明的具体实施方式做进一步的说明。 The specific embodiments of the present invention will be further described below in conjunction with the accompanying drawings.
图1是本发明Android软件自动安装升级的方法流程图; Fig. 1 is the method flowchart of automatic installation and upgrade of Android software of the present invention;
图2是本发明发布并更新资源包的流程图; Fig. 2 is a flow chart of the present invention issuing and updating resource packs;
图3是本发明运行该资源包的流程图; Fig. 3 is a flow chart of the present invention running the resource pack;
图4是本发明Android软件自动安装升级系统的工作原理图。 Fig. 4 is a working principle diagram of the Android software automatic installation and upgrading system of the present invention.
具体实施方式 Detailed ways
参考图1所示,为本发明的一种基于资源包的软件升级方法,包括以下步骤: With reference to shown in Fig. 1, be a kind of software upgrade method based on resource pack of the present invention, comprise the following steps:
A、 制作包含升级内容的资源包; A. Make a resource pack containing upgrade content;
即将图片布局和代码(软件升级内容)一起编译并打包成二进制资源包; That is to compile and package the image layout and code (software upgrade content) together into a binary resource package;
B、 发布并更新资源包; B. Publish and update resource packs;
其中,所述步骤B包括:(见图2) Wherein, the step B includes: (see Figure 2)
B1、给资源包命名,加上版本号,并发布到服务器; B1. Name the resource package, add a version number, and publish it to the server;
B2、客户端程序定时检测服务器以发现资源包; B2. The client program regularly detects the server to discover the resource package;
B3、客户端自动下载资源包并安装更新。 B3. The client automatically downloads the resource package and installs the update.
C、 运行该资源包以完成软件升级。 C. Run the resource pack to complete the software upgrade.
其中,所述步骤C包括:(见图3) Wherein, the step C includes: (see Figure 3)
C1、解析资源包; C1, analyze the resource package;
C2、通过反射技术动态分析并执行资源包所包含的模块功能。 C2. Dynamically analyze and execute the module functions contained in the resource package through reflection technology.
本技术方案的软件升级方法利用资源包方式绕开Android系统使用的apk安装包而必须人工干预的安装模式,实现完全自动化的静默安装和升级。 The software upgrading method of the technical solution utilizes the resource package mode to bypass the installation mode of the apk installation package used by the Android system and must be manually intervened, so as to realize completely automatic silent installation and upgrading.
基于与上述方法的同一个发明构思,本技术方案还包括一种基于资源包的软件升级系统,包括: Based on the same inventive concept as the above-mentioned method, the technical solution also includes a resource package-based software upgrade system, including:
一软件基础框架,该软件基础框架与系统的功能模块分离;该框架只包括基本不变程序公用功能和控制框架; A software basic framework, which is separated from the functional modules of the system; this framework only includes the common functions and control framework of basically unchanged programs;
若干资源包,该资源包为所述功能模块存在形式,即系统中传统的功能模块制作成资源包,该资源包包括日常开发程序功能模块的资源和代码; Several resource packages, the resource package is the existence form of the functional modules, that is, the traditional functional modules in the system are made into resource packages, and the resource packages include the resources and codes of the functional modules of the daily development program;
一资源包管理引擎,该资源包管理引擎用于从服务器上下载实时更新的资源包、版本管理、安装以及升级管理; A resource pack management engine, which is used for downloading real-time updated resource packs from the server, version management, installation and upgrade management;
一资源包解析引擎,该资源包解析引擎将资源包解析成可执行功能模块;其中,该资源包解析引擎对资源包分析,并通过反射技术从编译后的资源包动态分析出可执行的代码。 A resource pack parsing engine, which parses the resource pack into executable function modules; wherein, the resource pack parsing engine analyzes the resource pack, and dynamically analyzes the executable code from the compiled resource pack through reflection technology .
如上所述,本发明Android软件自动安装升级方法和系统将程序框架和功能模块分离,而将所有功能模块,制作成资源包,通过资源包解析引擎将资源包解析成可以执行的功能模块,从而实现程序正常工作。 As mentioned above, the Android software automatic installation and upgrading method and system of the present invention separate the program framework from the functional modules, and make all the functional modules into resource packages, and resolve the resource packages into executable functional modules through the resource package parsing engine, thereby Make the program work properly.
而资源包管理引擎主要负责资源包的版本管理,安装,升级管理等,由于资源包不是apk,下载安装资源包和下载普通文件没有区别,从而将程序升级变成普通文件管理一样简单,所有安装升级都可以跳过系统要求的安装授权过程,从而无需人工干预自动执行,实现静默安装,也不会产生小应用; The resource pack management engine is mainly responsible for resource pack version management, installation, upgrade management, etc. Since the resource pack is not an apk, there is no difference between downloading and installing a resource pack and downloading ordinary files, so upgrading the program is as simple as ordinary file management. The upgrade can skip the installation authorization process required by the system, so that it can be executed automatically without manual intervention, achieving silent installation, and no small applications will be generated;
这种方法解决普通升级需要人工参与的弊端,又改良了用户体验,特别适合更新比较频繁,用户群大的Android应用。 This method solves the drawbacks of ordinary upgrades that require manual participation, and improves the user experience. It is especially suitable for Android applications that are updated frequently and have a large user base.
以上所述仅为本发明的优先实施方式,本发明并不限定于上述实施方式,只要以基本相同手段实现本发明目的的技术方案都属于本发明的保护范围之内。 The above descriptions are only preferred implementations of the present invention, and the present invention is not limited to the above-mentioned implementations, as long as the technical solutions that achieve the purpose of the present invention by basically the same means fall within the protection scope of the present invention.
Claims (8)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201410367964.XA CN104111856A (en) | 2014-07-29 | 2014-07-29 | A software upgrade method and system based on resource pack |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201410367964.XA CN104111856A (en) | 2014-07-29 | 2014-07-29 | A software upgrade method and system based on resource pack |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN104111856A true CN104111856A (en) | 2014-10-22 |
Family
ID=51708656
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201410367964.XA Pending CN104111856A (en) | 2014-07-29 | 2014-07-29 | A software upgrade method and system based on resource pack |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN104111856A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106020906A (en) * | 2016-05-31 | 2016-10-12 | 广东能龙教育股份有限公司 | Client side hot updating method based on Cordova |
| CN110244957A (en) * | 2019-05-10 | 2019-09-17 | 阿里巴巴集团控股有限公司 | A kind of resource data updating method, apparatus and system |
| CN111212057A (en) * | 2019-12-30 | 2020-05-29 | 武汉联影医疗科技有限公司 | Resource packet transmission method and device, computer equipment and readable storage medium |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101094229A (en) * | 2007-07-24 | 2007-12-26 | 深圳市融合视讯科技有限公司 | Increment upgrading system and method for networked application programs |
| US20080077681A1 (en) * | 2006-09-26 | 2008-03-27 | Samsung Electronics Co., Ltd. | Method and apparatus for upgrading software of digital broadcasting receiver |
| CN102081532A (en) * | 2010-10-15 | 2011-06-01 | 福建新大陆通信科技股份有限公司 | Method for dynamically upgrading functions of set top box |
| CN102932441A (en) * | 2012-10-26 | 2013-02-13 | 北京小米科技有限责任公司 | Method and system for downloading application, terminal and server |
| CN103313231A (en) * | 2013-07-03 | 2013-09-18 | 百度在线网络技术(北京)有限公司 | Method, system and server for upgrading application program in mobile terminal |
-
2014
- 2014-07-29 CN CN201410367964.XA patent/CN104111856A/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080077681A1 (en) * | 2006-09-26 | 2008-03-27 | Samsung Electronics Co., Ltd. | Method and apparatus for upgrading software of digital broadcasting receiver |
| CN101094229A (en) * | 2007-07-24 | 2007-12-26 | 深圳市融合视讯科技有限公司 | Increment upgrading system and method for networked application programs |
| CN102081532A (en) * | 2010-10-15 | 2011-06-01 | 福建新大陆通信科技股份有限公司 | Method for dynamically upgrading functions of set top box |
| CN102932441A (en) * | 2012-10-26 | 2013-02-13 | 北京小米科技有限责任公司 | Method and system for downloading application, terminal and server |
| CN103313231A (en) * | 2013-07-03 | 2013-09-18 | 百度在线网络技术(北京)有限公司 | Method, system and server for upgrading application program in mobile terminal |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106020906A (en) * | 2016-05-31 | 2016-10-12 | 广东能龙教育股份有限公司 | Client side hot updating method based on Cordova |
| CN110244957A (en) * | 2019-05-10 | 2019-09-17 | 阿里巴巴集团控股有限公司 | A kind of resource data updating method, apparatus and system |
| CN111212057A (en) * | 2019-12-30 | 2020-05-29 | 武汉联影医疗科技有限公司 | Resource packet transmission method and device, computer equipment and readable storage medium |
| CN111212057B (en) * | 2019-12-30 | 2022-09-27 | 武汉联影医疗科技有限公司 | Resource packet transmission method and device, computer equipment and readable storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102118500B (en) | Software package-based online automatic updating method for open source operating system of mobile terminal | |
| US9513891B2 (en) | Method and device for publishing and implementing wireless application | |
| CN102289378B (en) | Method for automatically generating APP (Application) | |
| CN105224363A (en) | Method and device for loading application program | |
| CN104375849B (en) | Load the method and device of kernel | |
| CN104615462B (en) | Cross-platform Mobile solution generation service end and system | |
| TWI687867B (en) | Method for generating and installing trusted application for trusted execution environment | |
| CN103207794B (en) | The sharing method of application program between mobile terminal in LAN | |
| CN103701930A (en) | Mobile application program real-time updating method and system | |
| WO2017185606A1 (en) | Overlay mechanism-based apk development method and system | |
| CN105335173A (en) | Method, apparatus and system for initializing intelligent terminal device | |
| CN106648559A (en) | Android application pluggable development system and method | |
| WO2018040926A1 (en) | Method and system for maintaining software package dependency | |
| CN105487905A (en) | Updating method and device of hybrid application | |
| CN106569880B (en) | A method and system for dynamically sharing resources between Android applications | |
| WO2012142798A1 (en) | Method and apparatus for loading application program | |
| CN102455931B (en) | Method and system for developing Android platform engineering | |
| CN105468427A (en) | Implementation method and system of automatic compilation and release | |
| CN104636122B (en) | The sharing method and equipment of a kind of capability component | |
| CN104317573A (en) | Android installation package transformation method and device as well as method and device for operating application | |
| CN104111856A (en) | A software upgrade method and system based on resource pack | |
| CN105487874A (en) | Unified management method for HTML5 web application and native application in mobile terminal | |
| CN106775916B (en) | Method and device for reducing application installation packages and electronic equipment | |
| CN104239110B (en) | Reduce the method and apparatus of OTA delta package sizes | |
| CN105138327A (en) | Cross-platform web application packaging method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141022 |
|
| RJ01 | Rejection of invention patent application after publication |