CN107797817B - Application updating method and device - Google Patents

Application updating method and device Download PDF

Info

Publication number
CN107797817B
CN107797817B CN201710147602.3A CN201710147602A CN107797817B CN 107797817 B CN107797817 B CN 107797817B CN 201710147602 A CN201710147602 A CN 201710147602A CN 107797817 B CN107797817 B CN 107797817B
Authority
CN
China
Prior art keywords
version
full
application
incremental
resource
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.)
Active
Application number
CN201710147602.3A
Other languages
Chinese (zh)
Other versions
CN107797817A (en
Inventor
金梦杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201710147602.3A priority Critical patent/CN107797817B/en
Publication of CN107797817A publication Critical patent/CN107797817A/en
Application granted granted Critical
Publication of CN107797817B publication Critical patent/CN107797817B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version 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)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to an application updating method, which specifically comprises the following steps: receiving an application version updating request sent by a user terminal, wherein the application version updating request carries a user version identifier; if the latest version identification corresponding to the application requesting updating is an incremental version identification, searching whether a historical full-scale version identification exists between the user version identification and the latest version identification, wherein the historical full-scale version identification is the application version identification of a deployed full-scale resource package; if yes, acquiring the full resource package corresponding to the historical full version identifier, and acquiring a pre-deployed incremental resource package from the historical full version identifier to the latest version identifier; and sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade. The method can ensure that the resource maintenance cost is low and the resource updating efficiency is higher.

Description

Application updating method and device
Technical Field
The invention relates to the technical field of computer application, in particular to an application updating method and device.
Background
In order to enable applications to adapt to changing markets, developers need to perform constant sophistication of applications, i.e., constant updating of versions of applications. When new application versions are developed with an increasing frequency of application delivery, engineers often spend enormous costs and heartburn to perform frequent application update deployment.
The application updating mode comprises an incremental updating mode and a full-scale updating mode. Incremental updating requires incremental deployment in advance, that is, deploying an increment between the extracted current version and the version to be deployed, and only updating the incremental part during updating. The full update is the deployment of all resources included in each version, and each update is the reinstallation and configuration of the application. For incremental deployment, the updating efficiency is high, but especially when the number of the released versions is large, the number of the incremental packages needs to be deployed is large, and due to the strong dependency relationship among the incremental packages, the subsequent incremental maintenance work is quite difficult. For full deployment, although the resource maintenance cost is low, the updating efficiency is low and the memory occupation is large due to large data volume of single downloading and installation. The traditional application updating method cannot give consideration to both the resource maintenance cost and the updating efficiency.
Disclosure of Invention
In view of the foregoing, it is desirable to provide an application update method and apparatus with low resource maintenance cost and high resource update efficiency.
An application update method, the method comprising:
receiving an application version updating request sent by a user terminal, wherein the application version updating request carries a user version identifier;
if the latest version identification corresponding to the application requesting updating is an incremental version identification, searching whether a historical full-scale version identification exists between the user version identification and the latest version identification, wherein the historical full-scale version identification is the application version identification of a deployed full-scale resource package;
if yes, acquiring the full resource package corresponding to the historical full version identifier, and acquiring a pre-deployed incremental resource package from the historical full version identifier to the latest version identifier;
and sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade.
In one embodiment, the method further comprises:
if the historical full version identification is not included between the user version identification and the latest version identification, acquiring the incremental resource package between the user version identification and the latest application version identification;
pushing the acquired incremental resource package to the terminal so that the terminal updates the application to the latest version through incremental upgrading.
In an embodiment, before the step of obtaining an application version update request sent by a user terminal, where the application version update request carries a user version identifier, the method further includes:
acquiring configuration information of an application version to be deployed, and deploying a full resource package corresponding to the application version if the configuration information indicates that the application version is a full version;
if the configuration information indicates that the application version to be deployed is an incremental version, determining a historical full-scale version closest to the application version to be deployed;
deploying an incremental resource package corresponding to the application version according to the determined historical full-scale version, wherein the incremental resource package comprises an incremental resource package from the historical full-scale version to the application version and an incremental resource package from each intermediate application version between the historical full-scale version and the application version to the application version.
In one embodiment, the method further comprises:
pushing the latest version identification and the closest historical full-scale version identification corresponding to the latest version identification, and the application version identification between the closest historical full-scale version identification and the latest version identification to the user terminal;
receiving an appointed application version identification selected by the user terminal according to the pushed version identification;
and acquiring the full resource package and/or the incremental resource package corresponding to the specified application version identifier, and pushing the acquired full resource package and/or the incremental resource package to the terminal.
In one embodiment, the step of sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade includes:
encrypting the acquired full resource package and the acquired incremental resource package by using a pre-agreed encryption key;
and pushing the encrypted full resource package and the encrypted incremental resource package to the terminal so as to perform full upgrade and incremental upgrade of the application version after the terminal is decrypted.
An application update apparatus, the apparatus comprising:
the update request receiving module is used for receiving an application version update request sent by a user terminal, wherein the application version update request carries a user version identifier;
the historical full-version searching module is used for searching whether a historical full-version identifier exists between the user version identifier and the latest version identifier or not if the latest version identifier corresponding to the application requesting updating is an incremental version identifier, wherein the historical full-version identifier is the application version identifier of a deployed full-resource package;
a resource package obtaining module, configured to, if yes, obtain the full resource package corresponding to the historical full version identifier, and obtain a pre-deployed incremental resource package from the historical full version identifier to the latest version identifier;
and the cross-full updating module is used for sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrading and incremental upgrading.
In one embodiment, the apparatus further comprises:
an incremental update module, configured to obtain the incremental resource packet between the user version identifier and the latest application version identifier if the historical full version identifier is not included between the user version identifier and the latest version identifier; pushing the acquired incremental resource package to the terminal so that the terminal updates the application to the latest version through incremental upgrading.
In one embodiment, the apparatus further comprises:
the full resource package deployment module is used for acquiring configuration information of an application version to be deployed, and if the configuration information indicates that the application version is a full version, deploying a full resource package corresponding to the application version;
an incremental resource package deployment module, configured to determine, if the configuration information indicates that the application version to be deployed is an incremental version, a historical full-scale version closest to the application version to be deployed; deploying an incremental resource package corresponding to the application version according to the determined historical full-scale version, wherein the incremental resource package comprises an incremental resource package from the historical full-scale version to the application version and an incremental resource package from each intermediate application version between the historical full-scale version and the application version to the application version.
In one embodiment, the apparatus further comprises:
a specified update version module, configured to push, to the user terminal, the latest version identifier and the closest historical full-volume version identifier corresponding to the latest version identifier, and all application version identifiers between the closest historical full-volume version identifier and the latest version identifier; receiving an appointed application version identification selected by the user terminal according to the pushed version identification;
and the appointed updating version updating module is used for acquiring the full resource packet and/or the incremental resource packet corresponding to the appointed application version identification and pushing the acquired full resource packet and/or the incremental resource packet to the terminal.
In an embodiment, the cross-total update module is further configured to encrypt the acquired total resource package and the acquired incremental resource package by using a pre-agreed encryption key; and pushing the encrypted full resource package and the encrypted incremental resource package to the terminal so as to perform full upgrade and incremental upgrade of the application version after the terminal is decrypted.
According to the application updating method and device, the full resource package is alternately deployed in the incremental resource package, and when the terminal requests to update the version, whether the historical full version identification exists in the user version identification and the latest version identification is searched for at first; if yes, acquiring a total resource package corresponding to the searched historical total version identification, and acquiring the resource package from the historical total version to the latest version. And sending the acquired full resource package and the incremental resource package to the user terminal so that the user terminal firstly updates the full resource package to the historical full version and then updates the historical full version to the latest version, namely the 'cross-full' update. In the updating mode, because the resource packages of the versions before the historical full version are not required to be maintained, the maintenance cost is obviously reduced compared with the incremental upgrading version; compared with a full-volume updating mode with low updating efficiency, the 'cross-full-volume' updating mode divides the application updating into two steps of updating, the updating difficulty is reduced, and the updating efficiency is higher.
Drawings
FIG. 1 is a diagram of an application environment in which an update method is applied in one embodiment;
FIG. 2 is a diagram illustrating an internal architecture of a server according to an embodiment;
FIG. 3 is a flow diagram of an application update method in one embodiment;
FIG. 4 is a schematic diagram of incremental update and resource package deployment corresponding to cross-full update.
FIG. 5 is a flow diagram that illustrates the components involved in configuring a resource package, according to one embodiment;
FIG. 6 is a "span-full" resource package deployment diagram that sets a version span in one embodiment;
FIG. 7 is a flow chart of an application update method in another embodiment;
FIG. 8 is a block diagram of an application update apparatus in one embodiment;
FIG. 9 is a block diagram of the architecture involved in resource package deployment in one embodiment;
FIG. 10 is a block diagram showing the structure of an application update apparatus according to another embodiment;
fig. 11 is a block diagram showing the structure of an application update apparatus according to still another embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
As shown in fig. 1, in one embodiment, an application environment diagram of an application update method is provided, and the application environment diagram includes a user terminal 110 and a server 120, and the user terminal 110 may communicate with the server 120 through a network. The user terminal may be at least one of a smart phone, a tablet computer, a notebook computer, and a desktop computer, but is not limited thereto. The server 120 is used to store the full resource package and the incremental resource package. When receiving a version update request sent by a user terminal, the server 120 searches for a resource package meeting the condition, and pushes the searched resource package to the user terminal, so that the user terminal updates the application program.
As shown in FIG. 2, in one embodiment, a server 120 is provided, the server 120 comprising a processor, a storage medium, a memory, and a network interface connected by a system bus. The storage medium of the server 120 stores an operating system, a database, and an application updating apparatus, which is used to implement an application updating method. The database is used for storing data. The processor is used to provide computing and control capabilities, supporting the operation of the entire server 120. The memory provides an environment for the operation of the application update apparatus in the storage medium. The network interface is used to establish a network connection with the user terminal 110.
As shown in fig. 3, in an embodiment, an application update method is provided, which specifically includes the following steps:
step S202: and acquiring an application version updating request sent by a user terminal, wherein the application version updating request carries a user version identifier.
And a version update button is arranged on the application page, and an application version update request is sent to the server by triggering the version update button. The application may be a standalone application client or a browser/server architecture Web application.
And the user version identification carried in the application version updating request is the version identification of the application currently installed by the user terminal. For example, the user version identification may be v 3.0.
Step S204: if the latest version identification corresponding to the application requesting updating is the incremental version identification, searching whether a historical full-volume version identification exists between the user version identification and the latest version identification, wherein the historical full-volume version identification is the application version identification of the deployed full-volume resource package.
Specifically, the server responds to an application version update request of the user terminal, searches for a latest version identifier corresponding to an application requesting version update, and judges whether the latest version identifier is an incremental version identifier. Specifically, the server configures corresponding attributes for each delivered application version in advance, where the attributes include an incremental attribute and a full attribute, and a version identifier of the full attribute is inserted into a version identifier of the incremental attribute.
For example, the server configures the following attributes for each version: v1.0 is full version identification, v2.0-v5.0 is incremental version identification, v6.0 is incremental version identification, v7.0-v9.0 is incremental version identification, and v10.0 is full version identification. That is, the full version identifier is interleaved in the incremental version identifier, and may be an equal-span interleaving or an irregular-span interleaving, and specific configuration may be performed according to actual conditions.
If the latest version identification corresponding to the application requesting the version update is the incremental version identification, the server searches whether a full version identification exists in all intermediate versions between the user version identification and the latest version identification, wherein the full version identification is a historical full version identification relative to the latest version identification. And if the intermediate version identification has a history full version identification, acquiring a full resource package corresponding to the history full version identification from a storage database. The full resource package refers to a complete resource package of the application version corresponding to the full version identifier, and the application version corresponding to the full version identifier can be installed only through the full resource package.
Step S206: if the historical full version identification is found between the user version identification and the latest version identification, the full resource package corresponding to the historical full version identification is obtained, and the pre-deployed incremental resource package from the historical full version identification to the latest version identification is obtained.
In this embodiment, the deployed incremental resource package is based on the previous full resource package, that is, the deployed incremental package is the incremental package between the previous full version identifier and the incremental version identifier. Thus, the delta resource package deployed for the latest version as the delta version is the delta resource package between the historical full version and the latest version. The incremental data package is resource data added from the full version to the latest version, and can be added code, executable files and the like.
Step S210: and sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade.
And the server pushes the obtained full resource package and the obtained incremental resource package to the user terminal requesting for version updating. And the user terminal downloads the full resource package and the incremental resource package to the local, and upgrades the full application to the corresponding full version through the full resource package. Then, on the basis of the full version, the application is upgraded from the full version to the latest version through the incremental resource package.
In this embodiment, the update of the application version is to update the full application version to the intermediate full application version first, and to update the "cross-full" application version of the latest version incrementally based on the full application version.
Compared with a pure incremental updating mode which needs to maintain the incremental resource packages among all versions, the 'span-full' updating mode in the embodiment has the advantages that the incremental resource packages of the versions before the full version do not need to be maintained, and the version maintenance cost is greatly reduced. Compared with a full-volume updating mode requiring larger flow consumption, the method organically divides the application updating into two steps of full-volume updating and incremental updating, is less in downloading and updating difficulty and low in updating efficiency.
As can be seen more intuitively in fig. 4: with the incremental update (a), 11 incremental packages need to be maintained. And the traditional incremental updating mode is only suitable for updating between two adjacent versions, such as v1.0 to v2.0, and v2.0 to v3.0 … from v11.0 to v 12.0.
In the "cross-full" update (b) in this embodiment, the version before the full version v7.0 requests an update, and there are only two resource packages to be maintained, one is the v7.0 full package, and the other is the increment package 1. For the update between the full version and the intermediate version (v8.0-11.0) between the latest version, the incremental package update in (a) can be adopted, and the incremental update across versions as shown in (b) can also be adopted, and the two incremental update modes generate the same number of incremental packages which need to be maintained. In summary, 6 packets need to be maintained for the "cross-full" update, which is a significant reduction from the conventional incremental update.
In addition, the 'cross-full' update in the embodiment has full update, so that the method has the advantages of high stability of the full update and high update success rate; meanwhile, the incremental updating is carried out, so that the method has the advantage of high updating efficiency of the incremental updating.
In one embodiment, as shown in fig. 5, before the updating steps (step S202-step S208) are applied, the updating resources required for updating also need to be deployed accordingly. The deployment of the resource package comprises the following steps:
step S302: and acquiring configuration information of the application version to be deployed, and deploying a full resource package corresponding to the application version if the configuration information indicates that the application version is a full version.
During application version development, a corresponding configuration file is associated with each developed application version. The configuration information in the configuration file indicates whether the application version is a full version or a delta version. And if the application version to be deployed is the full version, deploying the full resource package of the version. If the full version is the latest version, the application version can be updated to the latest version in full through the deployed full resource package of the version.
In one embodiment, the full version is regularly interspersed with the incremental version. That is, the server presets the version span, the application versions at the version span nodes are configured as full versions, and the versions between the span nodes are configured as incremental versions. For example, as shown in fig. 6, the span of the default version is 3, V1.0 is substantially the full version, then V2.0, V3.0 are incremental versions, V4.0 is the full version, V5.0, V6.0 are incremental versions, V7.0 is the full version, and so on.
According to the preset rule, specific configuration does not need to be carried out for each version in the form of a configuration file, and the fact that whether the version identification is located in the version span node or not can be judged to judge whether the application version to be deployed is a full version or an incremental version.
Step S304: and if the configuration information indicates that the to-be-deployed application version is the incremental version, determining the historical full-scale version closest to the to-be-deployed application version.
Specifically, if the configuration information of the application version to be deployed indicates that the application version is an incremental version or the identifier of the application version to be deployed is not located in the preset span node, the incremental resource package needs to be deployed for the application version.
In this embodiment, when incremental resource package deployment is performed, a historical full-scale version closest to an application version deployed this time is first searched for from historical application versions of application versions to be deployed. More specifically: and acquiring configuration information of all historical versions corresponding to the application version deployed at this time, and determining the historical full-scale version which is closest to the application version deployed at this time and is deployed with the full-scale resource package according to the configuration information of the historical versions.
For example, referring to FIG. 6, the most recent historical full version of V2.0, V3.0 is V1.0; the most approximate historical full version of V5.0 and V6.0 is V4.0; the historical full version of V8.0 and V9.0 is V7.0, and so on.
Step S306: and deploying the incremental resource package corresponding to the application version according to the determined historical full version, wherein the incremental resource package comprises the incremental resource package from the historical full version to the application version and the incremental resource package from each intermediate application version between the historical full version and the application version to the application version.
The deployed incremental resource packages comprise the incremental resource packages from all historical versions (including the determined historical full versions) between the determined historical full versions and the current application version to be deployed to the current application version to be deployed. With continued reference to fig. 6, assuming that the incremental application version to be currently deployed is v6.0, the incremental resource package corresponding to v6.0 includes a v4.0-v6.0 incremental resource package and a v5.0-v6.0 incremental resource package.
Further, a full resource package corresponding to the historical full version and an incremental data package based on the historical full version can be used as a set of resource packages. For example, a full amount of packets corresponding to v4.0 and incremental resource packets corresponding to v4.0-v5.0, v4.0-v6.0, and v5.0-v6.0 are a set of resource packets.
With the continuous release of new application versions, the previous set of resource packages may be deleted or maintenance of the previous set of resource packages may be stopped as the latest version progresses from one set of resource packages to the next. When the latest version is updated from v6.0 to v7.0 (i.e. the latest version enters from group a to group b), the resource package corresponding to the deployed group a is deleted. Similarly, when the latest version is updated from v10.0 to v11.0, the resource package corresponding to the group b is deleted. That is, only one set of resource packages or only a portion of the resource packages in a set of resource packages are maintained at a time.
In this embodiment, an incremental resource package or a full resource package is configured for each application version by configuring an incremental/full attribute of each application version, so that a user terminal requesting version update can update an application to the latest version by using a resource package deployed by a server. In this embodiment, the resource packages that need to be maintained at the same time are only one group of resource packages at most, the resource package maintenance cost is low, and cross-version updating can be realized.
Further, the latest resource packet group is marked as "activated", and the historical resource packet group before the activated resource packet group is marked as "inactivated". Further, "0" means "not activated" and "1" means "activated". There is only one resource packet group labeled "1" at the same time. The resource packages in the resource package group marked as "1" can be pushed to the user terminal to enable the user terminal to update the application version. Based on this, the application update method may further include the following steps:
acquiring an application version updating request sent by a user terminal, wherein the application version updating request carries a user version identifier; searching the resource packet group where the latest version identification is located, and acquiring the full resource packet and the corresponding incremental resource packet of the searched resource packet group; and sending the obtained full resource package and the obtained incremental resource package to the user terminal so that the terminal updates the application version through full upgrade and incremental upgrade.
Referring to fig. 6, if v9.0 is the latest version, the resource packet group in which the latest version is located is group b, and group b includes v7.0 full resource packets, v7.0-v8.0, v7.0-v9.0, and v8.0-v9.0 incremental data packets.
If the user application version is the historical version before v7.0, the application version can be updated to the latest version by using the v7.0 full resource packet and the v7.0-v9.0 incremental data packet.
If the application version of the user is v7.0, the application version can be updated to the latest version by using a v7.0-v9.0 incremental data packet.
If the user application version is an application version between the full version and the latest version, such as v8.0, the application version can be updated to the latest version by using the v8.0-v9.0 incremental data packet.
That is, if the user version identifier does not include the full version identifier with the latest version identifier, the user version identifier is the intermediate application version identifier between the closest historical full version and the latest version, and the incremental resource package between the intermediate application version corresponding to the deployed intermediate application version identifier and the latest application version is obtained; and pushing the acquired incremental resource package to the terminal so as to enable the terminal to carry out incremental upgrading of the application version.
In this embodiment, the user application version is divided into two stages: historical application versions prior to activation of the resource package group, intermediate application versions contained in the activation of the resource package group (intermediate application versions are also historical application versions relative to the latest version). And for the application version of the previous stage, the application updating is carried out in a mode of 'cross-full volume' updating, and for the application version of the next stage, the application updating can be carried out in a mode of incremental updating directly according to the deployed incremental data packet. That is, in this embodiment, on the basis of ensuring less maintenance cost, different update modes are adopted for application versions at different stages, so that the update of the application versions is simpler and more reasonable.
In one embodiment, as shown in fig. 7, an application update method is provided, which specifically includes the following steps:
step S402: receiving an application version updating request sent by a user terminal, wherein the application version updating request carries a user version identifier.
Step S404: and acquiring the latest version identification, and searching the nearest historical full version identification corresponding to the latest version identification.
Step S406: and pushing the latest version identification, the closest historical full version identification and the application version identification between the closest historical full version identification and the latest version identification to the user terminal.
Step S408: and receiving the appointed application version identification selected by the user terminal according to the pushed version identification.
Step S410: and acquiring a full resource package and/or an incremental resource package corresponding to the specified application version identifier, and pushing the acquired full resource package and/or incremental resource package to the terminal.
Specifically, if the application version identifier is specified to be the closest historical full version identifier (v 7.0 in fig. 6), the full resource package corresponding to the closest historical full version is pushed to the user terminal, and the user terminal updates the closest historical full version by the full resource package.
If the specified application version is the latest version and the user version is before the historical full version, then the "cross-full" update is performed according to steps S204-S280. And if the specified application version is the latest version and the user version is an intermediate version between the historical full version and the latest version, acquiring an incremental resource package between the user version and the latest version and performing incremental updating. This is described in detail herein and will not be described further herein.
If the designated application version is identified as an intermediate version between the historical full-scale version and the latest version, and the user version is before the historical full-scale version, acquiring a full-scale resource package corresponding to the historical full-scale version and an incremental resource package between the historical full-scale version and the designated application version, and sending the acquired full-scale resource package and the incremental resource package to the user terminal so that the terminal updates the application version through full-scale upgrading and incremental upgrading. And if the specified application version is identified as an intermediate version between the historical full version and the latest version and the user version is also an intermediate version between the historical full version and the latest version, acquiring an incremental resource package between the user version and the specified updating version and performing incremental updating.
In this embodiment, the user may specify the application version that the user wants to update, and the update of the application version is more flexible. In this embodiment, the resource package group in which the latest version is located is the activated resource package group, and therefore, the application version identifier that is pushed to the user terminal and can be selected by the user is the application version identifier in the activated resource package group.
In another embodiment, multiple resource package groups may also be set as active resource package groups at the same time, so that the range of the alternative application version identifiers pushed to the user terminal is wider.
In one embodiment, step S208: sending the obtained full resource package and the obtained incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade, including:
encrypting the obtained full resource packet and the obtained incremental resource packet by using a pre-agreed encryption key; and pushing the encrypted full resource package and the encrypted incremental resource package to the terminal so as to perform full upgrade and incremental upgrade of the application version after the terminal is decrypted.
And when the full resource packet and the incremental resource packet are pushed to the terminal, encrypting the pushed full resource packet and the pushed incremental resource packet. The authorized terminal stores the decryption key in advance and can decrypt the resource package through the decryption key. And malicious modification is avoided by encryption processing, and the safety and reliability of data are ensured.
In one embodiment, as shown in fig. 8, there is provided an application update apparatus including:
an update request receiving module 502, configured to receive an application version update request sent by a user terminal, where the application version update request carries a user version identifier.
A historical full version searching module 504, configured to search whether a historical full version identifier exists between the user version identifier and the latest version identifier if a latest version identifier corresponding to the application requesting updating is an incremental version identifier, where the historical full version identifier is an application version identifier to which a full resource package has been deployed.
A resource package obtaining module 506, configured to, if yes, obtain the full resource package corresponding to the historical full version identifier, and obtain a pre-deployed incremental resource package from the historical full version identifier to the latest version identifier.
And a cross-full update module 508, configured to send the obtained full resource package and the obtained incremental resource package to the user terminal, so that the terminal updates the application to the latest version through full upgrade and incremental upgrade.
In one embodiment, as shown in fig. 9, the application updating apparatus further includes:
an incremental update module 602, configured to obtain the incremental resource packet between the user version identifier and the latest application version identifier if the historical full version identifier is not included between the user version identifier and the latest version identifier; pushing the acquired incremental resource package to the terminal so that the terminal updates the application to the latest version through incremental upgrading.
In one embodiment, as shown in fig. 10, the application updating apparatus further includes:
the full resource package deployment module 702 is configured to obtain configuration information of the application version to be deployed, and deploy the full resource package corresponding to the application version if the configuration information indicates that the application version is the full version.
An incremental resource package deployment module 704, configured to determine, if the configuration information indicates that the to-be-deployed application version is an incremental version, a historical full-scale version closest to the to-be-deployed application version; and deploying the incremental resource package corresponding to the application version according to the determined historical full version, wherein the incremental resource package comprises the incremental resource package from the historical full version to the application version and the incremental resource package from each intermediate application version between the historical full version and the application version to the application version.
In one embodiment, as shown in fig. 11, the application updating apparatus further includes:
a specified update version module 802, configured to push the latest version identifier and the closest historical full version identifier corresponding to the latest version identifier, and all application version identifiers between the closest historical full version identifier and the latest version identifier to the user terminal; and receiving the appointed application version identification selected by the user terminal according to the pushed application version identification.
And the update specification module 804 is configured to acquire a full resource package and/or an incremental resource package corresponding to the application specification identifier, and push the acquired full resource package and/or incremental resource package to the terminal.
In an embodiment, the cross-total updating module 508 is further configured to encrypt the acquired total resource package and the acquired incremental resource package by using a pre-agreed encryption key; and pushing the encrypted full resource package and the encrypted incremental resource package to the terminal so as to perform full upgrade and incremental upgrade of the application version after the terminal is decrypted.
It will be understood by those skilled in the art that all or part of the processes in the methods of the embodiments described above may be implemented by hardware related to instructions of a computer program, and the program may be stored in a computer readable storage medium, for example, in the storage medium of a computer system, and executed by at least one processor in the computer system, so as to implement the processes of the embodiments including the methods described above. The storage medium may be a magnetic disk, an optical disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), or the like.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above examples only show some embodiments of the present invention, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the inventive concept, which falls within the scope of the present invention. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. An application update method, the method comprising:
acquiring configuration information of an application version to be deployed, and deploying a full resource package corresponding to the application version if the configuration information indicates that the application version is a full version;
if the configuration information indicates that the application version to be deployed is an incremental version, determining a historical full-scale version closest to the application version to be deployed;
deploying an incremental resource package corresponding to the application version according to the determined historical full version, wherein the incremental resource package comprises an incremental resource package from the historical full version to the application version and incremental resource packages from intermediate application versions between the historical full version and the application version to the application version; taking the total resource packets and the incremental resource packets corresponding to the historical total version as a group of resource packets, and deleting the previous group of resource packets or stopping maintaining the previous group of resource packets when the latest version enters the next group of resource packets from the group of resource packets;
receiving an application version updating request sent by a user terminal, wherein the application version updating request carries a user version identifier;
if the latest version identification corresponding to the application requesting updating is an incremental version identification, searching whether a historical full-volume version identification exists between the user version identification and the latest version identification, wherein the historical full-volume version identification is an application version identification of a deployed full-volume resource package, and each application version of the application is preconfigured according to the following attribute configuration modes: the full version identification is inserted into the incremental version identification in an equal span or an irregular span;
if yes, acquiring the full resource package corresponding to the historical full version identifier, and acquiring a pre-deployed incremental resource package from the historical full version identifier to the latest version identifier;
and sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade.
2. The method of claim 1, further comprising:
if the historical full version identification is not included between the user version identification and the latest version identification, acquiring the incremental resource package between the user version identification and the latest application version identification;
pushing the acquired incremental resource package to the terminal so that the terminal updates the application to the latest version through incremental upgrading.
3. The method of claim 1, further comprising:
pushing the latest version identification and the closest historical full-scale version identification corresponding to the latest version identification, and the application version identification between the closest historical full-scale version identification and the latest version identification to the user terminal;
receiving an appointed application version identification selected by the user terminal according to the pushed version identification;
and acquiring the full resource package and/or the incremental resource package corresponding to the specified application version identifier, and pushing the acquired full resource package and/or the incremental resource package to the terminal.
4. The method according to claim 1 or 2, wherein the step of sending the acquired full resource package and incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrade and incremental upgrade comprises:
encrypting the acquired full resource package and the acquired incremental resource package by using a pre-agreed encryption key;
and pushing the encrypted full resource package and the encrypted incremental resource package to the terminal so as to perform full upgrade and incremental upgrade of the application version after the terminal is decrypted.
5. An application update apparatus, the apparatus comprising:
the full resource package deployment module is used for acquiring configuration information of an application version to be deployed, and if the configuration information indicates that the application version is a full version, deploying a full resource package corresponding to the application version;
an incremental resource package deployment module, configured to determine, if the configuration information indicates that the application version to be deployed is an incremental version, a historical full-scale version closest to the application version to be deployed; deploying an incremental resource package corresponding to the application version according to the determined historical full version, wherein the incremental resource package comprises an incremental resource package from the historical full version to the application version and incremental resource packages from intermediate application versions between the historical full version and the application version to the application version; taking the total resource packets and the incremental resource packets corresponding to the historical total version as a group of resource packets, and deleting the previous group of resource packets or stopping maintaining the previous group of resource packets when the latest version enters the next group of resource packets from the group of resource packets;
the update request receiving module is used for receiving an application version update request sent by a user terminal, wherein the application version update request carries a user version identifier;
a historical full version searching module, configured to search whether a historical full version identifier exists between the user version identifier and the latest version identifier if a latest version identifier corresponding to an application requesting update is an incremental version identifier, where the historical full version identifier is an application version identifier in which a full resource package has been deployed, and each application version of the application is preconfigured according to the following attribute configuration modes: the full version identification is inserted into the incremental version identification in an equal span or an irregular span;
a resource package obtaining module, configured to, if yes, obtain the full resource package corresponding to the historical full version identifier, and obtain a pre-deployed incremental resource package from the historical full version identifier to the latest version identifier;
and the cross-full updating module is used for sending the acquired full resource package and the acquired incremental resource package to the user terminal so that the terminal updates the application to the latest version through full upgrading and incremental upgrading.
6. The apparatus of claim 5, further comprising:
an incremental update module, configured to obtain the incremental resource packet between the user version identifier and the latest application version identifier if the historical full version identifier is not included between the user version identifier and the latest version identifier; pushing the acquired incremental resource package to the terminal so that the terminal updates the application to the latest version through incremental upgrading.
7. The apparatus of claim 5, further comprising:
a specified update version module, configured to push, to the user terminal, the latest version identifier and the closest historical full-volume version identifier corresponding to the latest version identifier, and all application version identifiers between the closest historical full-volume version identifier and the latest version identifier; receiving an appointed application version identification selected by the user terminal according to the pushed version identification;
and the appointed updating version updating module is used for acquiring the full resource packet and/or the incremental resource packet corresponding to the appointed application version identification and pushing the acquired full resource packet and/or the incremental resource packet to the terminal.
8. The apparatus according to claim 5 or 6, wherein the cross-quantum update module is further configured to encrypt the acquired quantum resource packets and the incremental resource packets using a pre-agreed encryption key; and pushing the encrypted full resource package and the encrypted incremental resource package to the terminal so as to perform full upgrade and incremental upgrade of the application version after the terminal is decrypted.
9. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the steps of the method according to any of claims 1 to 4 are implemented when the processor executes the program.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 4.
CN201710147602.3A 2017-03-13 2017-03-13 Application updating method and device Active CN107797817B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710147602.3A CN107797817B (en) 2017-03-13 2017-03-13 Application updating method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710147602.3A CN107797817B (en) 2017-03-13 2017-03-13 Application updating method and device

Publications (2)

Publication Number Publication Date
CN107797817A CN107797817A (en) 2018-03-13
CN107797817B true CN107797817B (en) 2021-02-19

Family

ID=61531004

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710147602.3A Active CN107797817B (en) 2017-03-13 2017-03-13 Application updating method and device

Country Status (1)

Country Link
CN (1) CN107797817B (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804195B (en) * 2018-06-14 2021-08-13 北京奇艺世纪科技有限公司 Page display method and device, server and client
CN109582329A (en) * 2018-09-29 2019-04-05 阿里巴巴集团控股有限公司 Data management and method for subscribing, device, system, electronic equipment and storage medium
CN109788027B (en) * 2018-12-13 2022-04-15 平安科技(深圳)有限公司 Data synchronization method, device, server and computer storage medium
CN110262827B (en) * 2019-05-20 2020-07-03 北京三快在线科技有限公司 Incremental updating method and device, storage medium and electronic equipment
CN110287723B (en) * 2019-05-21 2020-11-24 北京达佳互联信息技术有限公司 Resource information determination method and device, electronic equipment and storage medium
CN110727895B (en) * 2019-10-09 2022-07-22 北京达佳互联信息技术有限公司 Sensitive word sending method and device, electronic equipment and storage medium
CN110750547A (en) * 2019-10-21 2020-02-04 中国民航信息网络股份有限公司 Data acquisition method and device
CN112685061B (en) * 2020-12-28 2024-07-09 北京达佳互联信息技术有限公司 Access method and device
CN112882733B (en) * 2021-02-04 2023-09-08 网易(杭州)网络有限公司 Application updating method and device, electronic equipment and storage medium
CN113094063A (en) * 2021-03-02 2021-07-09 厦门亿联网络技术股份有限公司 Configuration file updating method and device
CN112994955B (en) * 2021-04-21 2021-08-10 恒生电子股份有限公司 Upgrade package sending management method, incremental upgrade package preparation method and related device
CN114338395A (en) * 2021-12-29 2022-04-12 武汉烽火信息集成技术有限公司 C/S communication network management method, storage medium, electronic equipment and system
CN116303514B (en) * 2023-04-03 2024-04-09 广州文石信息科技有限公司 User manual pushing method, device, equipment and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217363A (en) * 2007-12-28 2008-07-09 北京深思洛克数据保护中心 A remote upgrading method realized by shared secret key
CN103218239A (en) * 2013-04-09 2013-07-24 沈阳美行科技有限公司 Method for supporting version increment and upgrading version of navigator map
CN104090806A (en) * 2014-07-18 2014-10-08 百度在线网络技术(北京)有限公司 Method and device for processing upgrade patch and upgrade request
CN104991790A (en) * 2015-06-09 2015-10-21 北京奇虎科技有限公司 Upgrade release method and apparatus of file
CN105262627A (en) * 2015-10-30 2016-01-20 Tcl集团股份有限公司 Firmware upgrade method, device and system
CN105763369A (en) * 2016-02-04 2016-07-13 湖南长城信息金融设备有限责任公司 Terminal equipment remote software version distribution method and system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541596A (en) * 2011-12-22 2012-07-04 中标软件有限公司 Operating system upgrading method and device
US9652631B2 (en) * 2014-05-05 2017-05-16 Microsoft Technology Licensing, Llc Secure transport of encrypted virtual machines with continuous owner access

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217363A (en) * 2007-12-28 2008-07-09 北京深思洛克数据保护中心 A remote upgrading method realized by shared secret key
CN103218239A (en) * 2013-04-09 2013-07-24 沈阳美行科技有限公司 Method for supporting version increment and upgrading version of navigator map
CN104090806A (en) * 2014-07-18 2014-10-08 百度在线网络技术(北京)有限公司 Method and device for processing upgrade patch and upgrade request
CN104991790A (en) * 2015-06-09 2015-10-21 北京奇虎科技有限公司 Upgrade release method and apparatus of file
CN105262627A (en) * 2015-10-30 2016-01-20 Tcl集团股份有限公司 Firmware upgrade method, device and system
CN105763369A (en) * 2016-02-04 2016-07-13 湖南长城信息金融设备有限责任公司 Terminal equipment remote software version distribution method and system

Also Published As

Publication number Publication date
CN107797817A (en) 2018-03-13

Similar Documents

Publication Publication Date Title
CN107797817B (en) Application updating method and device
CN110737658B (en) Data fragment storage method, device, terminal and readable storage medium
CN104866336B (en) Silent in-vehicle software update
KR101201147B1 (en) Method and system for downloading updates
US20170068531A1 (en) Method of deploying a set of software application(s)
CN111381858B (en) Application program upgrading method, server and terminal equipment
CN107707584B (en) Application loading method, terminal and platform server
KR20060093022A (en) Publishing the status of and updating firmware components
CN104090806A (en) Method and device for processing upgrade patch and upgrade request
CN107239299B (en) Plug-in upgrading method and device
CN116107612B (en) Firmware air upgrading device, charging pile, device, method and program product
CN111399860B (en) Light application deployment method, light application deployment device, computer equipment and storage medium
EP3764224B1 (en) Resource permission processing method and apparatus, and storage medium and chip
CN115048181A (en) Heat deployment method and device based on Kubernetes container cloud platform and application
CN114710407A (en) Distributed system software version upgrading method and device
CN115878138B (en) Application pre-download method, device, computer and storage medium
CN101616002B (en) User identity authentication method and device thereof
CN114238240B (en) Distributed multi-cluster data storage method and device and storage medium
CN106325898B (en) Software upgrading method and system
CN112685102B (en) Gateway plug-in hot loading method, device, equipment and medium
CN114610366A (en) Difference package upgrading method and system, intelligent electronic equipment and storage medium
CN114489737A (en) Multi-firmware OTA (over the air) upgrading method and device, server and storage medium
CN114237633A (en) Application configuration method, device, equipment and storage medium
CN114143197A (en) OTA (over the air) upgrading method, device and equipment of Internet of things equipment and readable storage medium
CN109325057B (en) Middleware management method, device, computer equipment and storage medium

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