An application program updating method and device

By generating identification information based on signature and channel information, the problem of time-consuming MD5 value calculation in differential updates of large applications is solved, enabling fast and accurate differential packet matching and updates.

CN115480789BActive Publication Date: 2025-11-28DOUYIN VISION CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110601661.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-05-31
Publication Date
2025-11-28
Estimated Expiration
2041-05-31

AI Technical Summary

Technical Problem

In the differential update process of large applications such as games, calculating the MD5 value of each file is time-consuming, resulting in low efficiency.

Method used

By obtaining the target application's signature and channel information, target identification information for the installation package is generated. This identification information is then used to request a differential package from the server and update it.

Benefits of technology

It improves the speed and accuracy of differential packet matching, reduces the time spent calculating MD5 values, and improves update efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115480789B_ABST
    Figure CN115480789B_ABST
Patent Text Reader

Abstract

The present disclosure provides an application program updating method and device, which obtains first target data under a storage path of signature information of a current version installation package of a target application program based on the storage path; the first target data comprises the signature information of the current version installation package and channel information; then, target identification information corresponding to the current version installation package is generated based on the first target data; then, in the case that there is an updating requirement, a differential package obtaining request is sent to a server according to the target identification information, the differential package obtaining request carries the target identification information, and a target differential package fed back by the server based on the target identification information is received; finally, the target application program is updated based on the target differential package and the current version installation package. The present disclosure does not need to calculate MD5 values of all files, and is efficient.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of computer, and in particular, to an application program updating method and device. BACKGROUND

[0002] When performing differential update for an application program such as a game, a server usually needs to send a corresponding differential package to a client according to a current installation package of the client. After receiving the differential package, the client can merge the differential package with the current installation package to generate a new installation package, and then update the application program with the newly generated installation package. When the server determines the current installation package of the client, the identification information of the current version installation package of the client needs to be obtained, and then the installation package is determined by using the identification information. In order to ensure that the newly generated installation package can correctly update the application program, the differential package needs to be accurately matched with the current installation package of the client. Therefore, the identification information of the installation package needs to be determined according to the files contained in the installation package.

[0003] Usually, the MD5 (Message-Digest Algorithm) value of each file in the installation package can be calculated, and then the identification information of the installation package can be generated according to the MD5 value of each file. However, the installation package of a large application program such as a game usually contains a large number of files, and calculating the MD5 value of each file will consume a large amount of time and is low in efficiency. SUMMARY

[0004] The present disclosure at least provides an application program updating method and device.

[0005] In a first aspect, an application program updating method is provided, comprising:

[0006] obtaining first target data under a storage path of signature information of a current version installation package of a target application program based on the storage path; the first target data comprising the signature information of the current version installation package and channel information;

[0007] generating target identification information corresponding to the current version installation package based on the first target data;

[0008] in a case where there is an update demand, sending a differential package acquisition request to a server according to the target identification information, the differential package acquisition request carrying the target identification information, and receiving a target differential package fed back by the server based on the target identification information;

[0009] updating the target application program based on the target differential package and the current version installation package.

[0010] In an optional implementation, the method further includes: obtaining first target data based on the storage path of the signature information of the current version installation package of the target application program.

[0011] determining the target storage path corresponding to the current version installation package based on the signature version of the current version installation package and the storage path of the signature information corresponding to each signature version.

[0012] obtaining full data in the target storage path, and taking the obtained full data as the first target data.

[0013] In an optional implementation, the method further includes: generating target identification information corresponding to the current version installation package based on the first target data.

[0014] performing calculation processing on the first target data according to a preset unique identification calculation algorithm to generate a unique identification of the first target data.

[0015] taking the unique identification as the target identification information corresponding to the current version installation package.

[0016] In an optional implementation, the method further includes: updating the target application program based on the target differential package and the current version installation package.

[0017] updating the current version installation package based on the target differential package to generate a target version installation package of the target application program.

[0018] reinstalling the target application program by using the target version installation package to obtain the updated target application program.

[0019] In a second aspect, the embodiments of the present disclosure provide another application program updating method, which includes:

[0020] receiving a differential package obtaining request sent by a client, the differential package obtaining request carrying identification information corresponding to an installation package of a version to be updated;

[0021] determining a target differential package uniquely corresponding to the identification information corresponding to the installation package from a mapping relationship table established in advance according to the identification information corresponding to the installation package, and sending the target differential package to the client, so that the client updates a target application program by using the target differential package; wherein the mapping relationship table is generated according to second target data in a storage path of signature information of at least one installation package of a version to be updated and differential packages corresponding to the at least one installation package of the version to be updated; the second target data includes signature information and channel information of the installation package of the version to be updated.

[0022] In an alternative embodiment, the mapping relationship table is generated by the following steps:

[0023] obtaining a difference package between the installation package of the at least one version to be updated and the installation package of the target version;

[0024] for the installation package of the at least one version to be updated, obtaining second target data in the installation package of the version to be updated under a storage path of signature information; the second target data includes signature information and channel information of the installation package of the version to be updated;

[0025] generating identification information corresponding to the installation package of the version to be updated based on the second target data;

[0026] generating a mapping relationship between the difference package and the identification information based on the identification information corresponding to the installation package and the difference package corresponding to the installation package.

[0027] In an alternative embodiment, the difference package is generated by the following steps:

[0028] generating a difference package corresponding to the installation package of the at least one version to be updated based on the installation package of the at least one version to be updated and the installation package of the target version of the target application; the version of the version to be updated is lower than the target version corresponding to the installation package of the target version.

[0029] In a third aspect, the embodiments of the present disclosure further provide an application program updating device, comprising:

[0030] an obtaining module, configured to obtain first target data under a storage path of signature information of an installation package of a current version of a target application based on the storage path; the first target data includes signature information and channel information of the installation package of the current version;

[0031] a first generating module, configured to generate target identification information corresponding to the installation package of the current version based on the first target data;

[0032] a first sending module, configured to send a difference package obtaining request to a server according to the target identification information in a case where there is an updating demand, the difference package obtaining request carrying the target identification information, and receive a target difference package fed back by the server based on the target identification information;

[0033] an updating module, configured to update the target application based on the target difference package and the installation package of the current version.

[0034] In an alternative embodiment, the obtaining module is specifically configured to:

[0035] determine a target storage path corresponding to the current version installation package based on a signed version of the current version installation package and storage paths of signature information corresponding to the plurality of signed versions respectively;

[0036] obtain full data under the target storage path, and use the obtained full data as the first target data.

[0037] In an optional implementation, the first generation module is specifically configured to:

[0038] perform calculation processing on the first target data according to a preset unique identifier calculation algorithm, to generate a unique identifier of the first target data;

[0039] use the unique identifier as target identifier information corresponding to the current version installation package.

[0040] In an optional implementation, the update module is specifically configured to:

[0041] update the current version installation package based on the target differential package, to generate a target version installation package of the target application program;

[0042] reinstall the target application program by using the target version installation package, to obtain the updated target application program.

[0043] In a fourth aspect, the embodiments of the present disclosure further provide another application program updating apparatus, which comprises:

[0044] a receiving module configured to receive a differential package obtaining request sent by a client, the differential package obtaining request carrying identifier information corresponding to an installation package of a version to be updated;

[0045] a second sending module configured to determine a target differential package uniquely corresponding to the identifier information corresponding to the installation package from a mapping relationship table established in advance according to the identifier information corresponding to the installation package, and send the target differential package to the client; wherein the mapping relationship table is generated according to second target data under a storage path of signature information of at least one installation package of a version to be updated and differential packages corresponding to the at least one installation package of the version to be updated; and the second target data comprises the signature information and channel information of the installation package of the version to be updated.

[0046] In an optional implementation, the apparatus further comprises a second generation module configured to:

[0047] obtain a differential package between the at least one installation package of the version to be updated and an installation package of a target version;

[0048] For the installation package under the at least one to-be-updated version, second target data under a storage path of signature information in the installation package of the to-be-updated version is acquired; the second target data includes signature information and channel information of the installation package of the to-be-updated version.

[0049] Based on the second target data, identification information corresponding to the installation package of the to-be-updated version is generated.

[0050] Based on the identification information corresponding to the installation package and the differential package corresponding to the installation package, the mapping relationship table is generated.

[0051] In an optional implementation, the apparatus further includes a third generation module configured to:

[0052] Based on the installation package under the at least one to-be-updated version and the target version installation package of the target application program, a differential package corresponding to the installation package under the at least one to-be-updated version is respectively generated; the version of the to-be-updated version is lower than the target version corresponding to the target version installation package.

[0053] In a fifth aspect, the embodiments of the present disclosure further provide an electronic device, including a processor, a memory and a bus, the memory stores machine readable instructions executable by the processor, when the electronic device is running, the processor and the memory communicate through the bus, and the machine readable instructions are executed by the processor to perform the steps in the application program updating method.

[0054] In a sixth aspect, the embodiments of the present disclosure further provide a computer readable storage medium, the computer readable storage medium stores a computer program, and the computer program is executed by the processor to perform the steps in the application program updating method.

[0055] The application program updating method and device provided by the embodiments of the present disclosure obtain first target data under a storage path of signature information of a current version installation package of a target application program, wherein the first target data comprises the signature information of the current version installation package and channel information; generate target identification information corresponding to the current version installation package based on the first target data; in the case that there is an updating demand, send a differential package obtaining request to a server according to the target identification information, wherein the differential package obtaining request carries the target identification information, and receive a target differential package fed back by the server based on the target identification information; and update the target application program based on the target differential package and the current version installation package. The embodiments of the present disclosure generate the identification information corresponding to the installation package based on the first target data under the signature path. Since the first target data comprises the channel information and the signature information, the signature information itself is the unique identification of the initial file of the installation package, and the channel information belongs to the information of the installation package customized by the channel, so that the identification information generated according to the first target data can represent the signature part and the non-signature part of the current installation package at the same time, and play a role of uniquely identifying the whole current installation package. Moreover, since the storage space occupation of the first target data is much smaller than that of the whole installation package, the speed of determining the identification information is improved without calculating the MD5 value of all files, so that the server can quickly and accurately match the differential package corresponding to the installation package, and the efficiency is high.

[0056] In order to make the above objectives, features and advantages of the present disclosure more apparent, the following will specifically describe preferred embodiments in conjunction with the accompanying drawings, and make a detailed description as follows. BRIEF DESCRIPTION OF DRAWINGS

[0057] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the following will briefly introduce the drawings needed to be used in the embodiments. The drawings herein are incorporated into the description and form a part of the description, which show the embodiments consistent with the present disclosure, and are used to explain the technical solutions of the present disclosure together with the description. It should be understood that the following drawings only show some embodiments of the present disclosure, and therefore should not be considered as a limitation to the scope, and other related drawings can also be obtained by those skilled in the art without any creative effort.

[0058] Figure 1 A flow chart of an application program updating method provided by the embodiments of the present disclosure is shown;

[0059] Figure 2 A flow chart of another application program updating method provided by the embodiments of the present disclosure is shown;

[0060] Figure 3A schematic diagram of an application program updating apparatus is shown.

[0061] Figure 4 A schematic diagram of another application program updating apparatus is shown.

[0062] Figure 5 A schematic diagram of an electronic device is shown.

[0063] Figure 6 A schematic diagram of another electronic device is shown. DETAILED DESCRIPTION

[0064] In order to make the objects, technical solutions and advantages of the embodiments of the present disclosure clearer, the following will be combined with the accompanying drawings for the embodiments of the present disclosure to clearly and completely describe the technical solutions of the embodiments of the present disclosure. Obviously, the described embodiments are only a part of the embodiments of the present disclosure, rather than all the embodiments. The components of the embodiments of the present disclosure described and shown in the accompanying drawings can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present disclosure provided in the accompanying drawings is not intended to limit the scope of the claimed present disclosure, but only represents selected embodiments of the present disclosure. Based on the embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present disclosure.

[0065] It should be noted that: similar reference numerals and letters represent similar items in the following drawings, therefore, once an item is defined in one drawing, it does not need to be further defined and explained in the subsequent drawings.

[0066] The term "and / or" in the present disclosure is only used to describe an association relationship, which means that there can be three relationships, for example, A and / or B can mean that A exists alone, A and B exist together, and B exists alone. In addition, the term "at least one" in the present disclosure means any one of a plurality of combinations or any combination of at least two of a plurality of combinations, for example, including at least one of A, B and C can mean including any one or more elements selected from the set consisting of A, B and C.

[0067] It is found through research that when the server determines the differential package required by the client, the current installation package of the client is usually identified by using the identification information of the installation package. In order to ensure that the newly generated installation package can correctly update the application program, the differential package needs to be accurately matched with the current installation package of the client, and therefore the identification information of the installation package needs to be determined according to the files contained in the installation package. Usually, the MD5 value of each file in the installation package can be calculated, and then the identification information of the installation package can be generated according to the MD5 value of each file. However, the installation package of a large application program such as a game usually contains a large number of files, and calculating the MD5 value of each file will consume a large amount of time and is relatively low in efficiency.

[0068] Based on the above research, the present disclosure provides an application program updating method and device. The identification information corresponding to the installation package is generated based on the first target data under the signature path. Since the first target data includes channel information and signature information, the signature information itself is a unique identifier of the initial file of the installation package, and the channel information belongs to the information of the installation package customized by the channel. Therefore, the identification information generated according to the first target data can represent the signature part and the non-signature part of the current installation package at the same time, and can uniquely identify the whole current installation package. In addition, since the storage space occupation of the first target data is much smaller than that of the whole installation package, the speed of determining the identification information is improved without the need to calculate the MD5 value of all files, so that the server can quickly and accurately match the differential package corresponding to the installation package, and the efficiency is relatively high.

[0069] Referring to Figure 1 As shown in the figure, a flowchart of an application program updating method provided by an embodiment of the present disclosure is provided. The execution subject of the method can be a client, and the method includes steps S101-S104.

[0070] S101, based on the storage path of the signature information of the current version installation package of the target application program, the first target data under the storage path is obtained; the first target data includes the signature information of the current version installation package and channel information.

[0071] In this step, the client can obtain the current version installation package of the target application program after detecting that the target application program is published for updating, or after receiving the identification information acquisition request sent by the server, and obtain the first target data under the storage path of the signature information of the current version installation package.

[0072] The target application program can be an application program running under the Android system, and the format of the current version installation package can be an apk format, which can be stored in a preset directory of the client. The storage path of the signature information (signature path) can be a path in the current version installation package, and the signature information, channel information, etc. of the current version installation package can be stored in the path. The signature information is generated based on each file in the installation package and a preset signature algorithm when the installation package is published, and is added to the signature path in the installation package after the signature information is generated, and is used to verify the security and integrity of each file in the installation package to prevent the installation package from being tampered with. In addition to the signature information, the storage path of the signature information can also include channel information corresponding to the installation package, etc.

[0073] For different signature versions, the signature algorithm used when signing the installation package is different, and the corresponding signature path is also different. The target storage path corresponding to the current version installation package can be determined based on the signature version of the current version installation package and the storage paths of the signature information corresponding to the plurality of signature versions, and then the full amount of data in the target storage path is obtained, and the obtained full amount of data is taken as the first target data.

[0074] S102, based on the first target data, generating target identification information corresponding to the current version installation package.

[0075] In this step, a preset unique identification calculation algorithm can be used to calculate and process the first target data to generate a unique identification of the first target data, and the unique identification can be taken as the target identification information corresponding to the current version installation package. Specifically, data features of the first target data in one or more dimensions can be extracted, and the extracted data features can be processed according to an identification generation algorithm to obtain the target identification information.

[0076] For example, the data features can be MD5 values or hash values of the first target data.

[0077] S103, in the case where there is an update requirement, sending a difference package acquisition request to the server according to the target identification information, the difference package acquisition request carrying the target identification information, and receiving a target difference package fed back by the server based on the target identification information.

[0078] In this step, after the target identification information is generated, the update requirement can be detected, and when there is an update requirement, a difference package acquisition request can be sent to the server, the difference package acquisition request carrying the target identification information. The server can determine the target difference package matched with the target identification after receiving the difference package acquisition request containing the target identification information, and feed back the target difference package to the terminal device.

[0079] Here, the update requirement can be detecting a higher installation package than the current version, or detecting a defect in the current version installation package.

[0080] S104, updating the target application based on the target differential package and the current version installation package.

[0081] In this step, the client can update the current version installation package based on the target differential package to generate a target version installation package of the target application. Specifically, the target differential package and the current version installation package can be merged to generate a target version installation package of the target application corresponding to the target differential package. Then, the target application can be reinstalled using the target version installation package to achieve the update of the target application.

[0082] The embodiments of the present disclosure generate identification information corresponding to the installation package based on the first target data under the signature path, without calculating the MD5 values of all files. In the case where the identification information can completely reflect the files in the installation package, the server accurately matches the differential package corresponding to the installation package, and the efficiency is higher.

[0083] Referring to Figure 2 The execution subject of the method can be a server, and the method includes steps S201-S203, wherein:

[0084] S201, receiving a differential package acquisition request sent by a client, wherein the differential package acquisition request carries identification information corresponding to an installation package of a to-be-updated version.

[0085] In this step, the server receives the differential package acquisition request sent by the client, and the target identification information in the differential package acquisition request can be generated based on the first target data under the signature path of the previous version installation package by the client. The first target data includes signature information and channel information of the current version installation package of the target application.

[0086] S202, determining a target differential package corresponding to the identification information of the installation package uniquely from a pre-established mapping relationship table according to the identification information of the installation package, and sending the target differential package to the client, so that the client updates the target application using the target differential package.

[0087] The mapping relationship table is generated according to second target data under a storage path of signature information of at least one installation package of a to-be-updated version and a differential package corresponding to the at least one installation package of the to-be-updated version. The second target data includes signature information and channel information of the installation package of the to-be-updated version.

[0088] In this step, after the server obtains the target identification information, the server can determine the corresponding target differential package through the mapping relationship table, the mapping relationship table can reflect the mapping relationship between the differential package and the identification information, and the target differential package corresponding to the target identification information is screened out from the plurality of differential packages by using the mapping relationship.

[0089] The differential package is obtained based on the installation package of the target application program in two different versions. Since the channels and versions of the target application program installed on different clients can be different, to update the application program of different versions to the target version, the difference files between the installation package of each to-be-updated version and the installation package of the target version can be determined based on the installation package of at least one to-be-updated version of the target application program and the installation package of the target version of the target application program, and the differential package corresponding to the installation package of each to-be-updated version can be generated based on the difference files.

[0090] Specifically, the mapping relationship table can be generated through the following steps:

[0091] Obtaining the differential package between the installation package of the at least one to-be-updated version and the installation package of the target version;

[0092] For the installation package of the at least one to-be-updated version, obtaining second target data in the installation package of the to-be-updated version under the storage path of the signature information; the second target data includes the signature information and the channel information of the installation package of the to-be-updated version;

[0093] Generating the identification information corresponding to the installation package of the to-be-updated version based on the second target data;

[0094] Generating the mapping relationship table based on the identification information corresponding to the installation package and the differential package corresponding to the installation package.

[0095] The second target data and the first target data are both data under the storage path of the signature information in the corresponding installation package, and the description of the second target data can refer to the description of the first target data.

[0096] After obtaining the second target data, the identification information of the installation package corresponding to the second target data can be generated in the same way as the generation of the target identification information, and the mapping relationship between the differential package corresponding to the installation package and the corresponding identification information is established, to obtain the mapping relationship between the differential package and the identification information.

[0097] Since the generation manner of the target identification information is the same as the generation manner of the identification information of the installation package under the to-be-updated version, if the current version installation package of the client is the same as the installation package under the to-be-updated version, the target identification information is also the same as the identification information corresponding to the installation package under the to-be-updated version. Therefore, the mapping relationship between the identification information of the installation package under the to-be-updated version and the differential package is used to determine the corresponding relationship between the current version installation package of the client and the differential package, so as to filter out the target differential package corresponding to the current version installation package.

[0098] After the target differential package corresponding to the identification information of the installation package is determined, the target differential package can be sent to the client, so that the target version installation package corresponding to the target differential package is generated based on the target differential package and the current version installation package, and the target application program is updated by using the target version installation package.

[0099] The application program updating method provided in the embodiments of the present disclosure receives a differential package acquisition request sent by a client, and the differential package acquisition request carries identification information corresponding to an installation package of a to-be-updated version. Then, according to the identification information corresponding to the installation package, a target differential package uniquely corresponding to the identification information corresponding to the installation package is determined from a mapping relationship table established in advance, and the target differential package is sent to the client, so that the target application program is updated by using the target differential package. The mapping relationship table is generated according to second target data under a storage path of signature information of at least one installation package of a to-be-updated version and differential packages corresponding to the at least one installation package of the to-be-updated version. The second target data includes the signature information of the installation package of the to-be-updated version and channel information. In the embodiments of the present disclosure, the identification information corresponding to the installation package is generated based on data under the signature path, and the mapping relationship between the identification information and the differential package is established, so that the server can quickly locate the differential package required by the client.

[0100] Those skilled in the art can understand that the writing order of each step in the above-mentioned method of the specific embodiment does not mean a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of each step should be determined by its function and possible internal logic.

[0101] Based on the same inventive concept, the embodiments of the present disclosure also provide an application program updating device corresponding to the application program updating method. Since the principle of solving problems of the device in the embodiments of the present disclosure is similar to the above-mentioned application program updating method, the implementation of the device can be referred to the implementation of the method, and the repeated parts will not be described herein.

[0102] Referring to Figure 3 FIG. 1 shows a schematic diagram of an application program updating device provided in the embodiments of the present disclosure. The device includes:

[0103] The obtaining module 310 is configured to obtain first target data in a storage path of signature information of a current version installation package of a target application program; the first target data comprises the signature information of the current version installation package and channel information.

[0104] The first generating module 320 is configured to generate target identification information corresponding to the current version installation package based on the first target data.

[0105] The first sending module 330 is configured to send a differential package obtaining request to a server according to the target identification information in a case where there is an update requirement, the differential package obtaining request carrying the target identification information, and receive a target differential package fed back by the server based on the target identification information.

[0106] The updating module 340 is configured to update the target application program based on the target differential package and the current version installation package.

[0107] Embodiments of the present disclosure generate identification information corresponding to an installation package based on first target data in a signature path, without the need to calculate MD5 values of all files, and in a case where the identification information can completely reflect files in the installation package, the server accurately matches a differential package corresponding to the installation package, and the efficiency is relatively high.

[0108] In an optional implementation, the obtaining module 310 is specifically configured to:

[0109] determine a target storage path corresponding to the current version installation package based on a signature version of the current version installation package and storage paths of signature information corresponding to a plurality of signature versions;

[0110] obtain full data in the target storage path, and take the obtained full data as the first target data.

[0111] In an optional implementation, the first generating module 320 is specifically configured to:

[0112] perform calculation processing on the first target data according to a preset unique identification calculation algorithm, to generate a unique identification of the first target data;

[0113] take the unique identification as the target identification information corresponding to the current version installation package.

[0114] In an optional implementation, the updating module 340 is specifically configured to:

[0115] update the current version installation package based on the target differential package, to generate a target version installation package of the target application program;

[0116] reinstall the target application by using the target version installation package, to obtain the updated target application.

[0117] Referring to Figure 4 FIG. 2 shows a schematic diagram of another application program updating apparatus provided by an embodiment of the present disclosure, which comprises:

[0118] The receiving module 410 is configured to receive a difference package acquisition request sent by a client, the difference package acquisition request carrying identification information corresponding to an installation package of a version to be updated.

[0119] The second sending module 420 is configured to determine a target difference package corresponding to the identification information of the installation package uniquely from a mapping relationship table established in advance according to the identification information of the installation package, and send the target difference package to the client; wherein the mapping relationship table is generated according to second target data under a storage path of signature information of at least one installation package of a version to be updated, and difference packages corresponding to the at least one installation package of the version to be updated; the second target data comprises signature information and channel information of the installation package of the version to be updated.

[0120] In an optional implementation, the apparatus further comprises a second generating module configured to:

[0121] acquire a difference package between the at least one installation package of the version to be updated and an installation package of a target version;

[0122] For the installation package of the at least one version to be updated, acquire second target data under a storage path of signature information in the installation package of the version to be updated; the second target data comprises signature information and channel information of the installation package of the version to be updated.

[0123] generate identification information corresponding to the installation package of the version to be updated based on the second target data;

[0124] generate the mapping relationship table based on the identification information corresponding to the installation package, and the difference package corresponding to the installation package.

[0125] In an optional implementation, the apparatus further comprises a third generating module configured to:

[0126] generate difference packages corresponding to the at least one installation package of the version to be updated respectively based on the at least one installation package of the version to be updated and an installation package of a target version of the target application; the version of the version to be updated is lower than a target version corresponding to the installation package of the target version.

[0127] The description of the processing flow of each module in the device and the interaction flow between the modules can refer to the related description in the above method embodiments, and will not be described in detail here.

[0128] Corresponding to the application program updating method in Figure 1 The embodiments of the present disclosure also provide an electronic device 500, as shown in Figure 5 The structural schematic diagram of the electronic device 500 provided by the embodiments of the present disclosure includes:

[0129] The processor 51, the memory 52, and the bus 53; the memory 52 is used for storing execution instructions, including the internal memory 521 and the external memory 522; the internal memory 521 here is also called the internal memory, which is used for temporarily storing operation data in the processor 51 and data exchanged with the external memory 522 such as a hard disk; the processor 51 exchanges data with the external memory 522 through the internal memory 521; when the electronic device 500 is running, the processor 51 and the memory 52 communicate through the bus 53, so that the processor 51 executes the following instructions:

[0130] Based on the storage path of the signature information of the current version installation package of the target application program, first target data under the storage path is acquired; the first target data includes the signature information of the current version installation package and channel information;

[0131] Based on the first target data, target identification information corresponding to the current version installation package is generated;

[0132] In the case where there is an updating demand, a difference package acquisition request is sent to a server according to the target identification information, the difference package acquisition request carries the target identification information, and a target difference package fed back by the server based on the target identification information is received;

[0133] Based on the target difference package and the current version installation package, the target application program is updated.

[0134] Corresponding to the application program updating method in Figure 2 The embodiments of the present disclosure also provide another electronic device 600, as shown in Figure 6 The structural schematic diagram of the electronic device 600 provided by the embodiments of the present disclosure includes:

[0135] The processor 61, the memory 62, and the bus 63; the memory 62 is used for storing execution instructions, including the internal memory 621 and the external memory 622; the internal memory 621 here is also called the internal memory, used for temporarily storing operation data in the processor 61 and data exchanged with the external memory 622 such as a hard disk, the processor 61 exchanges data with the external memory 622 through the internal memory 621, when the electronic device 600 runs, the processor 61 and the memory 62 communicate through the bus 63, so that the processor 61 executes the following instructions:

[0136] Receiving target identification information of the target application program sent by the client; the target identification information is generated based on first target data under a signature path of a current version installation package of the target application program; the first target data includes signature information and channel information of the current version installation package of the target application program;

[0137] Receiving a difference package acquisition request sent by the client, the difference package acquisition request carrying identification information corresponding to an installation package of a to-be-updated version;

[0138] According to the identification information corresponding to the installation package, determining a target difference package corresponding to the identification information corresponding to the installation package from a pre-established mapping relationship table, and sending the target difference package to the client, so that the client updates the target application program by using the target difference package; wherein the mapping relationship table is generated according to second target data under a storage path of signature information of at least one installation package of a to-be-updated version, and difference packages corresponding to the at least one installation package of the to-be-updated version; the second target data includes signature information and channel information of the installation package of the to-be-updated version.

[0139] The embodiment of the disclosure also provides a computer readable storage medium, and the computer readable storage medium stores a computer program. When the computer program is run by a processor, the steps of the application program updating method described in the above method embodiment are executed. The storage medium can be a volatile or non-volatile computer readable storage medium.

[0140] The embodiment of the disclosure also provides a computer program product, which carries a program code. The instructions included in the program code can be used to execute the steps of the application program updating method described in the above method embodiment. For details, please refer to the above method embodiment, which will not be described here.

[0141] The computer program product can be implemented by hardware, software or a combination thereof. In an optional embodiment, the computer program product is embodied in a computer storage medium. In another optional embodiment, the computer program product is embodied in a software product, such as a software development kit (SDK) or the like.

[0142] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the apparatus described above can refer to the corresponding process in the foregoing method embodiments, which will not be repeated here. In several embodiments provided in the present disclosure, it should be understood that the disclosed system, apparatus and method can be implemented in other ways. The apparatus embodiments described above are merely schematic, for example, the division of the units is only a logical function division, and actual implementation can have another division manner, for example, a plurality of units or components can be combined or integrated into another system, or some features can be omitted or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some communication interfaces, apparatuses or units, which can be electrical, mechanical or other forms.

[0143] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, that is, they can be located in one place or distributed on a plurality of network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment scheme.

[0144] In addition, each functional unit in each embodiment of the present disclosure can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit.

[0145] If the functions are implemented in the form of software function units and sold or used as independent products, they can be stored in a nonvolatile computer readable storage medium executable by a processor. Based on this understanding, the technical solutions of the present disclosure essentially or the part that contributes to the prior art or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present disclosure. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0146] Finally, it should be noted that: the above-described embodiments are only specific embodiments of the present disclosure, used to illustrate the technical solutions of the present disclosure, and not to limit them. The protection scope of the present disclosure is not limited thereto. Although the present disclosure has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can make modifications or easily think of changes to the technical solutions described in the foregoing embodiments within the technical scope disclosed by the present disclosure, or make equivalent replacements to some of the technical features. The modifications, changes or replacements do not cause the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present disclosure, and should be covered within the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be subject to the protection scope of the claims.

Claims

1. An application update method, characterized in that, include: Based on the storage path of the signature information of the current version installation package of the target application, obtain the first target data under that storage path; The first target data includes the signature information and channel information of the current version installation package, wherein the signature information includes a unique identifier for the initial file of the current version installation package, and the channel information belongs to the information of the current version installation package after it has been customized by the channel. Based on the first target data, generate the target identification information corresponding to the current version installation package; If there is an update requirement, a differential packet acquisition request is sent to the server based on the target identification information. The differential packet acquisition request carries the target identification information, and the server receives the target differential packet based on the target identification information. Update the target application based on the target differential package and the current version installation package.

2. The method according to claim 1, characterized in that, The storage path of the signature information of the current version installation package of the target application is used to obtain the first target data under that storage path, including: Based on the signed version of the current version installation package and the storage paths of the signature information corresponding to multiple signed versions, determine the target storage path corresponding to the current version installation package; Obtain all data under the target storage path, and use the obtained full data as the first target data.

3. The method according to claim 1, characterized in that, The step of generating target identifier information corresponding to the current version installation package based on the first target data includes: The first target data is processed according to a preset unique identifier calculation algorithm to generate a unique identifier for the first target data. The unique identifier is used as the target identifier information corresponding to the current version installation package.

4. The method according to claim 1, characterized in that, The step of updating the target application based on the target differential package and the current version installation package includes: Based on the target differential package, the current version installation package is updated to generate the target version installation package of the target application; The target application is reinstalled using the target version installation package to obtain the updated target application.

5. An application update method, characterized in that, The method includes: Receive a differential packet retrieval request sent by the client, wherein the differential packet retrieval request carries the identification information corresponding to the installation package of the version to be updated; Based on the identification information corresponding to the installation package, a target differential package uniquely corresponding to the identification information of the installation package is determined from a pre-established mapping table, and the target differential package is sent to the client so that the client can use the target differential package to update the target application; wherein, the mapping table is generated based on second target data under the storage path of the signature information of at least one version of the installation package to be updated, and the differential package corresponding to the at least one version of the installation package to be updated; the second target data includes the signature information and channel information of the installation package to be updated, wherein the signature information is a unique identifier of the initial file of the installation package to be updated, and the channel information belongs to the information of the installation package to be updated after being customized by the channel. The mapping table is generated through the following steps: Obtain the differential package between the installation package of the at least one version to be updated and the installation package of the target version; For the installation package of the at least one version to be updated, obtain the second target data in the storage path of the signature information in the installation package of the version to be updated; the second target data includes the signature information and channel information of the installation package of the version to be updated. Based on the second target data, generate identification information corresponding to the installation package of the version to be updated; The mapping table is generated based on the identification information corresponding to the installation package and the differential package corresponding to the installation package.

6. An application update device, characterized in that, include: The acquisition module is used to acquire the first target data under the storage path of the current version installation package of the target application; The first target data includes the signature information and channel information of the current version installation package, wherein the signature information includes a unique identifier for the initial file of the current version installation package, and the channel information belongs to the information of the current version installation package after it has been customized by the channel. The first generation module is used to generate target identification information corresponding to the current version installation package based on the first target data; The first sending module is used to send a differential packet acquisition request to the server based on the target identification information when there is an update requirement. The differential packet acquisition request carries the target identification information, and the module receives the target differential packet fed back by the server based on the target identification information. The update module is used to update the target application based on the target differential package and the current version installation package.

7. An application update device, characterized in that, include: The receiving module is used to receive a differential packet acquisition request sent by the client, wherein the differential packet acquisition request carries the identification information corresponding to the installation package of the version to be updated; The second sending module is configured to determine, based on the identification information corresponding to the installation package, a target differential packet uniquely corresponding to the identification information corresponding to the installation package from a pre-established mapping table, and send the target differential packet to the client; wherein, the mapping table is configured according to the storage path of the signature information of at least one version of the installation package to be updated. The second target data, and the differential package corresponding to the at least one installation package to be updated; the second target data includes the signature information and channel information of the installation package to be updated, wherein the signature information is a unique identifier of the initial file of the installation package to be updated, and the channel information belongs to the information of the installation package to be updated after being customized by the channel. The mapping table is generated through the following steps: Obtain the differential package between the installation package of the at least one version to be updated and the installation package of the target version; For the installation package of the at least one version to be updated, obtain the second target data in the storage path of the signature information in the installation package of the version to be updated; the second target data includes the signature information and channel information of the installation package of the version to be updated. Based on the second target data, generate identification information corresponding to the installation package of the version to be updated; The mapping table is generated based on the identification information corresponding to the installation package and the differential package corresponding to the installation package.

8. An electronic device, characterized in that, include: The device includes a processor, a memory, and a bus. The memory stores machine-readable instructions executable by the processor. When the electronic device is running, the processor communicates with the memory via the bus. When the machine-readable instructions are executed by the processor, the steps of the application update method as described in any one of claims 1 to 5 are performed.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the application update method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Data updating method, device and system

    CN104657170A

  • Application installation package processing method and apparatus

    CN107797808A