CN111176679A - Application program updating method and device - Google Patents

Application program updating method and device Download PDF

Info

Publication number
CN111176679A
CN111176679A CN201911349448.3A CN201911349448A CN111176679A CN 111176679 A CN111176679 A CN 111176679A CN 201911349448 A CN201911349448 A CN 201911349448A CN 111176679 A CN111176679 A CN 111176679A
Authority
CN
China
Prior art keywords
package
application
information
bridging
bridge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911349448.3A
Other languages
Chinese (zh)
Other versions
CN111176679B (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.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
CCB Finetech 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 China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN201911349448.3A priority Critical patent/CN111176679B/en
Publication of CN111176679A publication Critical patent/CN111176679A/en
Application granted granted Critical
Publication of CN111176679B publication Critical patent/CN111176679B/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/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention discloses an application program updating method and device, and relates to the technical field of computers. A specific implementation mode of the method comprises the steps of decompressing and releasing a built-in bridge package into a sandbox, acquiring a common application data set and corresponding bridge package information of the latest version, and updating and storing the current system time into a memory; receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, and determining to download an application resource package and the bridging package by comparing the version information of the current application data with an application version number in a corresponding common application data set and comparing the version information of the current bridging package with the version information of a corresponding latest version, thereby completing updating. Therefore, the method and the device can solve the problems that time is wasted, flow is wasted, and user experience is poor in the conventional application updating.

Description

Application program updating method and device
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a method and an apparatus for updating an application program.
Background
The user experience is carried out in all design and innovation processes, such as the participation of users in the design and improvement of building design and working environment and living environment, the participation of users in the design and improvement of IT products, and the like. The user experience in the design of IT applications is mainly from the interactive process of the user and the human-computer interface.
With the increasing demand of users, the functions of the applications become more powerful and larger, and the versions of the applications are continuously iterated.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
in the prior art, the current application version can be checked before the application is opened each time, whether a new version exists is compared, and if the new version exists, the new version is updated immediately. The method has the disadvantage that each time the user opens the application, the user has a waiting time, and the waiting time is used for checking version updating and version comparison, so that resource waste and timeliness are caused. Even if the application does not have a new version, the application waits to be loaded, and the user experience is very poor.
In addition, in the last version check update, if a new version update is ready, the new version can be implicitly downloaded when the application is opened. The method has the disadvantages that the updating check of the user for exiting to the background and switching back to the foreground is not considered, and only the problem that the user is not in a waiting stage every time when the application is opened is simply solved. Although the problem of not having to wait each time when opening an application is solved, the timeliness becomes worse.
Disclosure of Invention
In view of this, embodiments of the present invention provide an application program updating method and apparatus, which can solve the problems of time waste, traffic waste, and poor user experience in the existing application updating.
In order to achieve the above object, according to an aspect of the embodiments of the present invention, an application program updating method is provided, including decompressing and releasing a built-in bridge packet into a sandbox, acquiring a common application data set and corresponding bridge packet information of a latest version, and updating and storing current system time into a memory;
receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, and determining to download an application resource package and the bridging package by comparing the version information of the current application data with an application version number in a corresponding common application data set and comparing the version information of the current bridging package with the version information of a corresponding latest version, thereby completing updating.
Optionally, downloading the application resource package and the bridging package includes:
downloading the application resource package from the application program downloading interface, calculating the MD5 value of the downloaded application resource package, and comparing the MD5 value with the MD5 value returned by the application program downloading interface; when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed;
downloading the bridging package from the bridging package downloading interface, calculating the MD5 value of the downloaded bridging package, and comparing the MD5 value with the MD5 value returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed.
Optionally, after receiving the instruction to start the application program, the method includes:
judging whether the cooling time of the first interface is greater than the minimum cooling time or not;
if so, calling the first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table and record the successful calling time of the interface; then, acquiring an application version number and corresponding bridge package information of the latest version from the updated local common application data table and the bridge package data table; the common application data set comprises a mapping relation between information of common applications and the latest version number of the applications;
if not, directly obtaining the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table.
Optionally, the obtaining the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table includes:
judging whether the latest application version number corresponding to the started application program exists in the local common application data table or not;
if yes, acquiring the latest version number of the application and the corresponding latest version bridge package information from the local common application data table and the bridge package data table;
if not, calling a second interface to acquire the started application program data and the corresponding bridge package information of the latest version; the started application program data comprises a mapping relation between application information and the latest version number of the application.
Optionally, after determining to download the application resource package and the bridge package, the method includes:
calling a first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table;
and updating and storing the current system time into a memory.
Optionally, determining to download the application resource package and the bridge package, and after completing the update, the method further includes:
when an instruction for selecting the started application program through the recently used program list is received, judging whether the cooling time of the first interface is greater than the minimum cooling time;
if so, calling a first interface, acquiring the started application program data and the corresponding bridge package information of the latest version, recording the current system time, updating and storing the current system time into a memory; then, the obtained current application data and the version information of the current bridging package are respectively compared to determine that the downloaded application resource package and the bridging package are updated;
if not, no operation is performed.
Optionally, determining the download application resource package and the bridge package includes:
and determining to download the application resource package and the bridging package, and acquiring a preset transition interface and displaying the preset transition interface until the updating is completed.
In addition, the invention also provides an application program updating device which comprises a processing module, a storage module and a processing module, wherein the processing module is used for decompressing and releasing the built-in bridge package into the sandbox, acquiring the common application data set and the corresponding bridge package information of the latest version, and updating and storing the current system time into the memory;
and the updating module is used for receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, comparing the version information with an application version number in a corresponding common application data set and comparing the version information with bridging package information of a corresponding latest version to determine to download an application resource package and the bridging package, and further finishing updating.
One embodiment of the above invention has the following advantages or benefits: the method comprises the steps that a built-in bridge package is decompressed and released into a sandbox, a common application data set and corresponding bridge package information of the latest version are obtained, and the current system time is updated and stored into a memory; the method comprises the steps of receiving an instruction for starting an application program, obtaining current application data and version information of a current bridging package, determining to download an application resource package and the bridging package by comparing the current application data with an application version number in a corresponding common application data set and comparing the current application data with the bridging package information of a corresponding latest version, and further completing the updating technical means.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
fig. 1 is a schematic view of a main flow of an application updating method according to a first embodiment of the present invention;
FIG. 2 is a diagram illustrating a main flow of an application update method according to a second embodiment of the present invention;
FIG. 3 is a diagram illustrating a main flow of an application update method according to a third embodiment of the present invention;
FIG. 4 is a diagram illustrating a main flow of an application update method according to a fourth embodiment of the present invention;
FIG. 5 is a schematic diagram of the main modules of an application update apparatus according to an embodiment of the present invention;
FIG. 6 is an exemplary system architecture diagram in which embodiments of the present invention may be employed;
fig. 7 is a schematic block diagram of a computer system suitable for use in implementing a terminal device or server of an embodiment of the invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 is a schematic diagram of a main flow of an application program updating method according to a first embodiment of the present invention, as shown in fig. 1, the application program updating method includes:
and step S101, decompressing and releasing the built-in bridge package into the sandbox, acquiring a common application data set and corresponding bridge package information of the latest version, and updating and storing the current system time into a memory.
In some embodiments, the Bridge package may be a Bridge package, and the Bridge package is used as a module for communication between the micro-application and the client. The common application refers to an application with the use frequency greater than a threshold value within a preset time.
In addition, after the common application data set and the corresponding bridge package information of the latest version are acquired, the common application data set and the bridge package information of the latest version can be stored into the common application data table DatebaseAppInfoTable and the bridge package data table DatebaseBridge.
Step S102, receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, comparing the version information with an application version number in a corresponding common application data set and comparing the version information with bridging package information of a corresponding latest version to determine to download an application resource package and the bridging package, and further completing updating.
In an embodiment, the common application data table DatebaseAppInfoTable and the bridging packet data table DatebaseBridge may be queried to obtain an application version number in the corresponding common application data set and bridging packet information corresponding to the latest version, respectively.
In some embodiments, the downloading of the application resource package and the bridging package may be performed by:
downloading an application resource package from an application program downloading interface (such as an ApiDownloadApp, an HTTPS interface provided by a server side and used for downloading the latest micro application resource package), calculating an MD5 value of the downloaded application resource package, and comparing the MD5 value with an MD5 value returned by the application program downloading interface; and when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed. Of course, if the comparison result is inconsistent, the application resource package is determined to have failed to download.
Downloading a bridging package from a bridging package downloading interface (such as an ApiDownloadBridge, an HTTPS interface provided by a server for downloading a latest Bridge bridging package), calculating a value of MD5 of the downloaded bridging package, and comparing the value with a value of MD5 returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed. Of course, if the comparison result is inconsistent, the downloading of the bridging package is considered to be failed.
As another embodiment, after receiving the instruction to start the application program in step S102, the method includes:
and judging whether the cooling time of the first interface is greater than the minimum cooling time. The minimum cooling time is the minimum time interval between two calls of a certain interface, and the data is issued by the server. The cooling time is the time interval between the current time and the last successful calling of a certain interface, and the time of calling a certain interface each time is recorded in the memory variable of the client.
Preferably, the first interface may be an ApiAppInfoTable interface, that is, an HTTPS interface provided by the server and used for acquiring a set of a plurality of commonly used micro application data (including micro application configuration, version number, and the like) and version information of the latest Bridge bridging packet.
And calling the first interface if the first interface is judged to be the latest version, respectively storing the returned common application data set and the bridge package data table in the corresponding bridge package information of the latest version to update the local common application data table and the bridge package data table, and recording the successful calling time of the interface. And then, acquiring an application version number and corresponding bridge package information of the latest version from the updated local common application data table and the bridge package data table. The common application data set comprises a mapping relation between the information of the common application and the latest version number of the application.
If not, directly obtaining the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table.
It should be noted that in the embodiments of the present invention, a silent mode may be adopted when a certain interface needs to be called.
In a further embodiment, the obtaining an application version number and corresponding bridge package information of a latest version from a local common application data table and a bridge package data table includes:
and judging whether the latest application version number corresponding to the started application program exists in the local common application data table.
And if so, acquiring the latest version number of the application and the corresponding latest version of the bridging packet information from the local common application data table and the bridging packet data table.
And if not, calling a second interface to acquire the started application program data and the corresponding bridge package information of the latest version. The started application program data comprises a mapping relation between application information and the latest version number of the application. Preferably, the second interface may be an ApiAppInfo interface, that is, an HTTPS interface provided by the server and used for acquiring a certain piece of micro application data and version information of the latest Bridge packet.
As still other embodiments, after determining to download the application resource package and the bridge package in step S102, the method includes:
and calling the first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into the common application data table and the bridge package data table so as to update the local common application data table and the bridge package data table. In addition, the current system time is updated and stored in the memory.
As still other embodiments, after determining to download the application resource package and the bridge package and further completing the update in step S102, the method further includes:
and when an instruction for selecting the started application program through the recently used program list is received (for example, after the micro application is opened and the user clicks a Home key of the mobile phone to switch to the desktop of the mobile phone, the user clicks the opened micro application program from the recently used program list of the system, and the micro application program wakes up again for display), judging whether the cooling time of the first interface is greater than the minimum cooling time.
If so, calling a first interface, acquiring the started application program data and the corresponding bridge package information of the latest version, recording the current system time, updating and storing the current system time into a memory; then, the obtained current application data and the current bridging package version information are respectively compared to determine that the downloaded application resource package and the bridging package are updated.
If not, no operation is performed.
It should be further noted that, after determining to download the application resource package and the bridge package, the embodiments of the present invention may obtain a preset transition interface and display the transition interface until the update is completed.
Fig. 2 is a schematic diagram of a main flow of an application program updating method according to a second embodiment of the present invention, where the application program updating method may include:
step S201, decompressing and releasing the built-in bridge package into the sandbox, obtaining the common application data set and the corresponding bridge package information of the latest version, respectively storing the common application data set and the bridge package data table, and updating and storing the current system time into the memory.
Step S202, receiving an instruction to start the application program, and determining whether the cooling time of the first interface is greater than the minimum cooling time, if so, performing step S203, otherwise, performing step S204.
Step S203, calling the first interface, storing the returned common application data set and the corresponding bridge package information of the latest version into the common application data table and the bridge package data table, respectively, to update the local common application data table and the bridge package data table, and recording the time when the interface is successfully called, and performing step S204.
Step S204, an application version number and corresponding bridge package information of the latest version are obtained from the local common application data table and the bridge package data table.
Preferably, if the application version number of the started application program cannot be obtained from the local common application data table, the second interface (ApiAppInfo interface) may be called to obtain the started application program data.
If the corresponding bridge package information of the latest version cannot be acquired from the bridge package data table, a second interface (ApiAppInfo interface) can be called to acquire the bridge package information of the latest version of the started application program.
Step S205, obtain the current application data and the current bridging packet version information, compare with the application version number in the corresponding common application data set and compare with the bridging packet information of the corresponding latest version.
In some embodiments, if the version number of the current application data is greater than the application version number in the common application data set when compared to the application version number in the corresponding common application data set and when compared to the corresponding latest version of the bridging package information, the application resource package does not need to be downloaded (i.e., the downloaded application resource package in step S206 does not need to be executed), and vice versa. If the current bridging package version information is greater than the corresponding latest version of bridging package information, the bridging package does not need to be downloaded (i.e., the downloading of the bridging package in step S206 does not need to be performed), and vice versa.
It should be noted that the comparison between the version number of the current application data and the application version number in the common application data set, and the comparison between the version information of the current bridging packet and the bridging packet information of the corresponding latest version may be performed simultaneously or sequentially (and the order is not specified).
Step S206, determining to download the application resource package and the bridging package, and finishing updating.
Preferably, when the application resource package is downloaded, the application resource package is downloaded from the application program downloading interface, the MD5 value of the downloaded application resource package is calculated, and is compared with the MD5 value returned by the application program downloading interface; and when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed.
When downloading the bridging package, downloading the bridging package from the bridging package downloading interface, calculating the MD5 value of the downloaded bridging package, and comparing the MD5 value with the MD5 value returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed.
It should be noted that, the downloading of the application resource package and the bridging package may be performed simultaneously or may be performed sequentially (and the order is not specified).
Fig. 3 is a schematic diagram of a main flow of an application program updating method according to a third embodiment of the present invention, where the application program updating method may include:
step S301, decompressing and releasing the built-in bridge package into the sandbox, acquiring a common application data set and corresponding bridge package information of the latest version, respectively storing the common application data set and the bridge package data table, and updating and storing the current system time into the memory.
In step S302, an instruction to start an application program is received.
Step S303, an application version number and corresponding bridge package information of the latest version are obtained from the local common application data table and the bridge package data table.
Preferably, if the application version number of the started application program cannot be obtained from the local common application data table, the second interface (ApiAppInfo interface) may be called to obtain the started application program data.
If the corresponding bridge package information of the latest version cannot be acquired from the bridge package data table, a second interface (ApiAppInfo interface) can be called to acquire the bridge package information of the latest version of the started application program.
Step S304, obtaining the current application data and the version information of the current bridging packet, comparing the version information with the application version number in the corresponding common application data set and comparing the version information with the bridging packet information of the corresponding latest version.
In some embodiments, if the version number of the current application data is greater than the application version number in the common application data set when compared to the application version number in the corresponding common application data set and when compared to the corresponding latest version of the bridging package information, the application resource package does not need to be downloaded (i.e., the downloaded application resource package in step S305 does not need to be executed), and vice versa. If the current bridging package version information is greater than the corresponding latest version of bridging package information, the bridging package does not need to be downloaded (i.e., the downloading of the bridging package in step S305 does not need to be performed), and vice versa.
It should be noted that the comparison between the version number of the current application data and the application version number in the common application data set, and the comparison between the version information of the current bridging packet and the bridging packet information of the corresponding latest version may be performed simultaneously or sequentially (and the order is not specified).
Step S305, determining to download the application resource package and the bridging package, and finishing updating.
Preferably, when the application resource package is downloaded, the application resource package is downloaded from the application program downloading interface, the MD5 value of the downloaded application resource package is calculated, and is compared with the MD5 value returned by the application program downloading interface; and when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed.
When downloading the bridging package, downloading the bridging package from the bridging package downloading interface, calculating the MD5 value of the downloaded bridging package, and comparing the MD5 value with the MD5 value returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed.
It should be noted that, the downloading of the application resource package and the bridging package may be performed simultaneously or may be performed sequentially (and the order is not specified).
Step S306, calling a first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table; and updating and storing the current system time into a memory.
Fig. 4 is a schematic diagram of a main flow of an application program updating method according to a fourth embodiment of the present invention, where the application program updating method may include:
step S401, decompressing and releasing the built-in bridge package into the sandbox, acquiring the common application data set and the corresponding bridge package information of the latest version, respectively storing the common application data set and the bridge package data table, and updating and storing the current system time into the memory.
In step S402, an instruction to start an application program is received.
Step S403, obtain the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table.
Step S404, obtaining the current application data and the version information of the current bridging packet, comparing the version information with the application version number in the corresponding common application data set and comparing the version information with the bridging packet information of the corresponding latest version.
In some embodiments, if the version number of the current application data is greater than the application version number in the common application data set when compared to the application version number in the corresponding common application data set and when compared to the corresponding latest version of the bridging package information, the application resource package does not need to be downloaded (i.e., the downloaded application resource package in step S405 does not need to be executed), and vice versa. If the current bridging package version information is greater than the corresponding bridging package information of the latest version, the bridging package does not need to be downloaded (i.e., the downloading of the bridging package in step S405 does not need to be performed), and vice versa.
It should be noted that the comparison between the version number of the current application data and the application version number in the common application data set, and the comparison between the version information of the current bridging packet and the bridging packet information of the corresponding latest version may be performed simultaneously or sequentially (and the order is not specified).
Step S405, determining to download the application resource package and the bridging package, and finishing updating.
Preferably, when the application resource package is downloaded, the application resource package is downloaded from the application program downloading interface, the MD5 value of the downloaded application resource package is calculated, and is compared with the MD5 value returned by the application program downloading interface; and when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed.
When downloading the bridging package, downloading the bridging package from the bridging package downloading interface, calculating the MD5 value of the downloaded bridging package, and comparing the MD5 value with the MD5 value returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed.
It should be noted that, the downloading of the application resource package and the bridging package may be performed simultaneously or may be performed sequentially (and the order is not specified).
In step S406, an instruction to select the started application program by using the most recently used program list is received.
Step S407, determining whether the cooling time of the first interface is greater than the minimum cooling time, if so, performing step S408, otherwise, deriving the flow.
Step S408, call the first interface, obtain the started application data and the corresponding bridge package information of the latest version, record the current system time update, and store the current system time update in the memory.
Step S409, comparing the obtained current application data with the version information of the current bridging package, to determine that the downloaded application resource package and the bridging package are updated.
In summary, the present invention provides various asynchronous update modes (i.e. updates at various times), which can reduce the amount of data interface calls triggered and obtained by the application portal, reduce the waiting time of most users on the portal interface, and improve the user experience. Meanwhile, when a certain time is reached and the updating is needed, the updating is triggered, otherwise, the module function is directly entered, frequent triggering and calling of an updating interface are reduced, the pressure of the server is reduced, and meanwhile, the user experience is improved. In addition, the detection process of background switching foreground can avoid the problem that the user can not trigger micro application updating when the user switches back the program after placing the program in the background for a long time, so as to ensure that the user can use the latest application in time. In addition, the cooling time issued by the server is configured, so that the cooling time can be adjusted at any time in the operation process, the client does not need to be updated, and the dynamic adjustment of the updating strategy according to market conditions, server states and the like in the operation process is facilitated, so that the optimal updating scheme under different conditions is achieved. And the invention adds MD5 integrity check, which can prevent packet loss in the downloading process, enhance program robustness and reduce error possibility.
Fig. 5 is a schematic diagram of main modules of an application updating apparatus according to an embodiment of the present invention, and as shown in fig. 5, the application updating apparatus 500 includes a processing module 501 and an updating module 502. The processing module 501 decompresses and releases the built-in bridge package into the sandbox, obtains the common application data set and the corresponding bridge package information of the latest version, and updates and stores the current system time into the memory. The update module 502 receives an instruction for starting an application program, obtains current application data and version information of a current bridging package, and determines to download an application resource package and a bridging package by comparing the current application data with an application version number in a corresponding common application data set and comparing the current application data with the bridging package information of a corresponding latest version, thereby completing updating.
In some embodiments, when downloading the application resource package and the bridge package, the update module 502 may download the application resource package from the application download interface, calculate an MD5 value of the downloaded application resource package, and compare the MD5 value with an MD5 value returned by the application download interface; and when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed. In addition, the bridging package can be downloaded from the bridging package downloading interface, the MD5 value of the downloaded bridging package is calculated, and the MD5 value is compared with the MD5 value returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed.
In some preferred embodiments, after receiving the instruction to start the application program, the update module 502 includes:
judging whether the cooling time of the first interface is greater than the minimum cooling time or not;
if so, calling the first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table and record the successful calling time of the interface; then, acquiring an application version number and corresponding bridge package information of the latest version from the updated local common application data table and the bridge package data table; the common application data set comprises a mapping relation between information of common applications and the latest version number of the applications;
if not, directly obtaining the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table.
In a further embodiment, when the updating module 502 obtains the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table, the method includes:
judging whether the latest application version number corresponding to the started application program exists in the local common application data table or not;
if yes, acquiring the latest version number of the application and the corresponding latest version bridge package information from the local common application data table and the bridge package data table;
if not, calling a second interface to acquire the started application program data and the corresponding bridge package information of the latest version; the started application program data comprises a mapping relation between application information and the latest version number of the application.
In other embodiments, the update module 502, after determining to download the application resource package and the bridge package, comprises:
calling a first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table; and updating and storing the current system time into a memory.
In still other embodiments, the updating module 502 further includes, after determining to download the application resource package and the bridge package, and further completing the updating:
when an instruction for selecting the started application program through the recently used program list is received, judging whether the cooling time of the first interface is greater than the minimum cooling time;
if so, calling a first interface, acquiring the started application program data and the corresponding bridge package information of the latest version, recording the current system time, updating and storing the current system time into a memory; then, the obtained current application data and the version information of the current bridging package are respectively compared to determine that the downloaded application resource package and the bridging package are updated;
if not, no operation is performed.
It should be noted that after the update module 502 determines to download the application resource package and the bridge package, a preset transition interface is obtained and displayed until the update is completed.
It should be noted that, the application program updating method and the application program updating apparatus according to the present invention have corresponding relation in the implementation contents, and therefore, the repeated contents are not described again.
Fig. 6 illustrates an exemplary system architecture 600 to which the application updating method or application updating apparatus of embodiments of the present invention may be applied.
As shown in fig. 6, the system architecture 600 may include terminal devices 601, 602, 603, a network 604, and a server 605. The network 604 serves to provide a medium for communication links between the terminal devices 601, 602, 603 and the server 605. Network 604 may include various types of connections, such as wire, wireless communication links, or fiber optic cables, to name a few.
A user may use the terminal devices 601, 602, 603 to interact with the server 605 via the network 604 to receive or send messages or the like. The terminal devices 601, 602, 603 may have installed thereon various communication client applications, such as shopping applications, web browser applications, search applications, instant messaging tools, mailbox clients, social platform software, etc. (by way of example only).
The terminal devices 601, 602, 603 may be various electronic devices having application update screens and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 605 may be a server providing various services, such as a background management server (for example only) providing support for shopping websites browsed by users using the terminal devices 601, 602, 603. The backend management server may analyze and perform other processing on the received data such as the product information query request, and feed back a processing result (for example, target push information, product information — just an example) to the terminal device.
It should be noted that the application program updating method provided by the embodiment of the present invention is generally executed by the server 605, and accordingly, the computing device is generally disposed in the server 605.
It should be understood that the number of terminal devices, networks, and servers in fig. 6 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
Referring now to FIG. 7, shown is a block diagram of a computer system 700 suitable for use with a terminal device implementing an embodiment of the present invention. The terminal device shown in fig. 7 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 7, the computer system 700 includes a Central Processing Unit (CPU)701, which can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)702 or a program loaded from a storage section 708 into a Random Access Memory (RAM) 703. In the RAM703, various programs and data necessary for the operation of the computer system 700 are also stored. The CPU701, the ROM702, and the RAM703 are connected to each other via a bus 704. An input/output (I/O) interface 705 is also connected to bus 704.
The following components are connected to the I/O interface 705: an input portion 706 including a keyboard, a mouse, and the like; an output section 707 including components such as a Cathode Ray Tube (CRT), a liquid crystal application updater (LCD), and the like, and a speaker; a storage section 708 including a hard disk and the like; and a communication section 709 including a network interface card such as a LAN card, a modem, or the like. The communication section 709 performs communication processing via a network such as the internet. A drive 710 is also connected to the I/O interface 705 as needed. A removable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 710 as necessary, so that a computer program read out therefrom is mounted into the storage section 708 as necessary.
In particular, according to the embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication section 709, and/or installed from the removable medium 711. The computer program performs the above-described functions defined in the system of the present invention when executed by the Central Processing Unit (CPU) 701.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes a processing module and an update module. Wherein the names of the modules do not in some cases constitute a limitation of the module itself.
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs, and when the one or more programs are executed by one of the devices, the device decompresses and releases a built-in bridge packet into a sandbox, acquires a common application data set and corresponding bridge packet information of a latest version, and stores a current system time update into a memory; receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, and determining to download an application resource package and the bridging package by comparing the version information of the current application data with an application version number in a corresponding common application data set and comparing the version information of the current bridging package with the version information of a corresponding latest version, thereby completing updating.
According to the technical scheme of the embodiment of the invention, the problems of time waste, flow waste and poor user experience of the existing application updating can be solved.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. An application program update method, comprising:
decompressing and releasing a built-in bridge package into a sandbox, acquiring a common application data set and corresponding bridge package information of the latest version, and updating and storing the current system time into a memory;
receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, and determining to download an application resource package and the bridging package by comparing the version information of the current application data with an application version number in a corresponding common application data set and comparing the version information of the current bridging package with the version information of a corresponding latest version, thereby completing updating.
2. The method of claim 1, wherein downloading the application resource package and the bridge package comprises:
downloading the application resource package from the application program downloading interface, calculating the MD5 value of the downloaded application resource package, and comparing the MD5 value with the MD5 value returned by the application program downloading interface; when the comparison result is consistent, the application resource package is judged to be successfully downloaded, and the downloaded application resource package is decompressed;
downloading the bridging package from the bridging package downloading interface, calculating the MD5 value of the downloaded bridging package, and comparing the MD5 value with the MD5 value returned by the bridging package downloading interface; and when the comparison result is consistent, the downloading of the bridging package is considered to be successful, and the downloaded bridging package is decompressed.
3. The method of claim 1, wherein receiving the instruction to launch the application comprises:
judging whether the cooling time of the first interface is greater than the minimum cooling time or not;
if so, calling the first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table and record the successful calling time of the interface; then, acquiring an application version number and corresponding bridge package information of the latest version from the updated local common application data table and the bridge package data table; the common application data set comprises a mapping relation between information of common applications and the latest version number of the applications;
if not, directly obtaining the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table.
4. The method of claim 3, wherein obtaining the application version number and the corresponding bridge package information of the latest version from the local common application data table and the bridge package data table comprises:
judging whether the latest application version number corresponding to the started application program exists in the local common application data table or not;
if yes, acquiring the latest version number of the application and the corresponding latest version bridge package information from the local common application data table and the bridge package data table;
if not, calling a second interface to acquire the started application program data and the corresponding bridge package information of the latest version; the started application program data comprises a mapping relation between application information and the latest version number of the application.
5. The method of claim 1, wherein determining to download the application resource package and the bridge package comprises:
calling a first interface, and respectively storing the returned common application data set and the corresponding bridge package information of the latest version into a common application data table and a bridge package data table so as to update the local common application data table and the bridge package data table;
and updating and storing the current system time into a memory.
6. The method of claim 1, wherein determining to download the application resource package and the bridge package, and after completing the updating, further comprises:
when an instruction for selecting the started application program through the recently used program list is received, judging whether the cooling time of the first interface is greater than the minimum cooling time;
if so, calling a first interface, acquiring the started application program data and the corresponding bridge package information of the latest version, recording the current system time, updating and storing the current system time into a memory; then, the obtained current application data and the version information of the current bridging package are respectively compared to determine that the downloaded application resource package and the bridging package are updated;
if not, no operation is performed.
7. The method of any of claims 1-6, wherein determining the download application resource package and the bridge package comprises:
and determining to download the application resource package and the bridging package, and acquiring a preset transition interface and displaying the preset transition interface until the updating is completed.
8. An application program update apparatus, comprising:
the processing module is used for decompressing and releasing the built-in bridge package into the sandbox, acquiring a common application data set and corresponding bridge package information of the latest version, and updating and storing the current system time into the memory;
and the updating module is used for receiving an instruction for starting an application program, acquiring current application data and version information of a current bridging package, comparing the version information with an application version number in a corresponding common application data set and comparing the version information with bridging package information of a corresponding latest version to determine to download an application resource package and the bridging package, and further finishing updating.
9. An electronic device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-7.
10. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-7.
CN201911349448.3A 2019-12-24 2019-12-24 Application program updating method and device Active CN111176679B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911349448.3A CN111176679B (en) 2019-12-24 2019-12-24 Application program updating method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911349448.3A CN111176679B (en) 2019-12-24 2019-12-24 Application program updating method and device

Publications (2)

Publication Number Publication Date
CN111176679A true CN111176679A (en) 2020-05-19
CN111176679B CN111176679B (en) 2023-06-16

Family

ID=70654133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911349448.3A Active CN111176679B (en) 2019-12-24 2019-12-24 Application program updating method and device

Country Status (1)

Country Link
CN (1) CN111176679B (en)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080371B1 (en) * 1998-03-03 2006-07-18 Siebel Systems, Inc. Method, system, apparatus and program product for distribution and instantiation of software upgrades
US20120144379A1 (en) * 2010-12-07 2012-06-07 Hon Hai Precision Industry Co., Ltd. System and method for updadting software
CN102932777A (en) * 2012-10-24 2013-02-13 华为终端有限公司 Method for updating terminal application and user terminal
CN104951336A (en) * 2015-05-27 2015-09-30 小米科技有限责任公司 Application program installation method and device
US9280338B1 (en) * 2013-03-11 2016-03-08 Amazon Technologies, Inc. Dynamic application updates
CN105549996A (en) * 2015-12-10 2016-05-04 网易(杭州)网络有限公司 Application updating method for mobile terminal and mobile terminal
CN105653298A (en) * 2014-11-12 2016-06-08 Tcl集团股份有限公司 Application program update method and terminal
CN106155722A (en) * 2015-04-09 2016-11-23 华为技术有限公司 A kind of software method for updating pages and terminal
CN106528193A (en) * 2015-09-15 2017-03-22 腾讯科技(深圳)有限公司 Application update method and terminal
CN108234171A (en) * 2016-12-15 2018-06-29 腾讯科技(深圳)有限公司 A kind of data processing method, system and device
CN108304207A (en) * 2018-03-01 2018-07-20 上海找钢网信息科技股份有限公司 Mix the resource regeneration method and system of APP application programs
CN108509211A (en) * 2018-02-07 2018-09-07 深圳壹账通智能科技有限公司 Application program updating method, apparatus, mobile terminal and storage medium
CN109117174A (en) * 2018-07-04 2019-01-01 北京德惠众合信息技术有限公司 The system and method for the front end page of compatible different engines
US20190199834A1 (en) * 2017-12-27 2019-06-27 UBTECH Robotics Corp. Method, apparatus and terminal device for communication protocol compatibility

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080371B1 (en) * 1998-03-03 2006-07-18 Siebel Systems, Inc. Method, system, apparatus and program product for distribution and instantiation of software upgrades
US20120144379A1 (en) * 2010-12-07 2012-06-07 Hon Hai Precision Industry Co., Ltd. System and method for updadting software
CN102932777A (en) * 2012-10-24 2013-02-13 华为终端有限公司 Method for updating terminal application and user terminal
US9280338B1 (en) * 2013-03-11 2016-03-08 Amazon Technologies, Inc. Dynamic application updates
CN105653298A (en) * 2014-11-12 2016-06-08 Tcl集团股份有限公司 Application program update method and terminal
CN106155722A (en) * 2015-04-09 2016-11-23 华为技术有限公司 A kind of software method for updating pages and terminal
CN104951336A (en) * 2015-05-27 2015-09-30 小米科技有限责任公司 Application program installation method and device
CN106528193A (en) * 2015-09-15 2017-03-22 腾讯科技(深圳)有限公司 Application update method and terminal
CN105549996A (en) * 2015-12-10 2016-05-04 网易(杭州)网络有限公司 Application updating method for mobile terminal and mobile terminal
CN108234171A (en) * 2016-12-15 2018-06-29 腾讯科技(深圳)有限公司 A kind of data processing method, system and device
US20190199834A1 (en) * 2017-12-27 2019-06-27 UBTECH Robotics Corp. Method, apparatus and terminal device for communication protocol compatibility
CN108509211A (en) * 2018-02-07 2018-09-07 深圳壹账通智能科技有限公司 Application program updating method, apparatus, mobile terminal and storage medium
CN108304207A (en) * 2018-03-01 2018-07-20 上海找钢网信息科技股份有限公司 Mix the resource regeneration method and system of APP application programs
CN109117174A (en) * 2018-07-04 2019-01-01 北京德惠众合信息技术有限公司 The system and method for the front end page of compatible different engines

Also Published As

Publication number Publication date
CN111176679B (en) 2023-06-16

Similar Documents

Publication Publication Date Title
CN113938456B (en) Session message overhead processing method and device
CN113395353B (en) File downloading method and device, storage medium and electronic equipment
CN111209306A (en) Business logic judgment method and device, electronic equipment and storage medium
CN110648216A (en) Wind control method and device
CN107347093B (en) Configuration method and device for distributed server system
CN113760488A (en) Method, device, equipment and computer readable medium for scheduling task
CN109828830B (en) Method and apparatus for managing containers
CN110795328A (en) Interface testing method and device
CN113010238A (en) Permission determination method, device and system for micro application call interface
CN112685481B (en) Data processing method and device
CN111176679B (en) Application program updating method and device
CN113760487B (en) Service processing method and device
CN112966201B (en) Object processing method, device, electronic equipment and storage medium
CN116861397A (en) Request processing method, device, electronic equipment and computer readable medium
CN111737218A (en) File sharing method and device
CN109213815B (en) Method, device, server terminal and readable medium for controlling execution times
WO2019223759A1 (en) Method and device for displaying wireless access point information
CN113127416A (en) Data query method and device
CN114237752B (en) Push page display method and device, electronic equipment and storage medium
CN111930391A (en) Application data processing method and device, server and user terminal
CN113472565B (en) Method, apparatus, device and computer readable medium for expanding server function
CN111314457B (en) Method and device for setting virtual private cloud
CN114401300B (en) Cloud application control method, device, equipment, medium and program product
CN111310483B (en) Translation method, translation device, electronic equipment and storage medium
CN110262756B (en) Method and device for caching data

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20221009

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Applicant after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant