CN107016280A - The upgrade method and system of a kind of client application - Google Patents
The upgrade method and system of a kind of client application Download PDFInfo
- Publication number
- CN107016280A CN107016280A CN201710210358.0A CN201710210358A CN107016280A CN 107016280 A CN107016280 A CN 107016280A CN 201710210358 A CN201710210358 A CN 201710210358A CN 107016280 A CN107016280 A CN 107016280A
- Authority
- CN
- China
- Prior art keywords
- application program
- client
- upgrading
- value
- upgrade
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012217 deletion Methods 0.000 claims description 5
- 230000037430 deletion Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/1085—Resource delivery mechanisms involving dynamic management of active down- or uploading connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
The present invention relates to a kind of upgrade method of client application and system, including:Client application icon after click, whether judge the application program of client has latest edition, if so, obtain upgrade server address list;It is selected to connect and connect upgrade server address of the load number not less than preset value according to upgrade server address list;The upgrade server address is accessed, the xml configuration informations of latest edition is obtained and downloads upgrade file, the xml configuration informations include the first MD5 values, the upgrade file includes the 2nd MD5 values;The first MD5 values are contrasted whether consistent with the 2nd MD5, if so, according to upgrade file, more new application.This method utilizes the uniqueness of MD5 values, the accuracy of upgrade file is ensured, simultaneously, after the click action of application icon, determine whether redaction and upgrade server address is selected according to load balancing principle, and mandatory upgrade processing is carried out under certain condition, solve the slow-footed problem of software upgrading.
Description
Technical Field
The invention relates to the technical field of application program upgrading, in particular to a method and a system for upgrading a client application program.
Background
At present, a client application program installation package is getting bigger and bigger, a large amount of bandwidth flow of a user is occupied in a file downloading process, the downloading speed is low, and long waiting time is generated in an upgrading process. In addition, the update speed of each application program is faster and faster, and a user needs to frequently upgrade the client application program. However, in the process of upgrading, the problems of file tampering and low upgrading speed of the application program occur, and the experience of the user is greatly influenced.
Disclosure of Invention
The invention provides a method and a system for upgrading a client application program, which are used for guaranteeing the integrity and the accuracy of an upgrading file, realizing the real-time updating of the client application program and solving the problem of low software upgrading speed.
The technical scheme for solving the technical problems is as follows: a method for upgrading a client application program comprises the following steps:
step 1, when receiving an operation instruction input by a user for clicking an application icon of a client, judging whether an application program has a latest version, if so, acquiring an address list of an upgrade server, and executing step 2; if not, starting the application program and finishing the upgrading of the application program of the client;
step 2, selecting an upgrade server address which can be connected and the number of connection loads of which does not exceed a preset value according to the upgrade server address list;
step 3, accessing the address of the upgrade server, obtaining the xml configuration information of the latest version, and downloading an upgrade file corresponding to the xml configuration information, wherein the xml configuration information comprises a first MD5 value, and the upgrade file comprises a second MD5 value;
and 4, comparing whether the first MD5 value is consistent with the second MD5 value, if so, upgrading the application program according to the upgrading file and the xml configuration information, and if not, locking the application program to finish upgrading the application program of the client.
The invention has the beneficial effects that: after a client application icon is clicked, an application program upgrading process is automatically started, whether the client application program has the latest version is judged firstly, the problems that the client application program version is too low and the file is disordered and tampered during upgrading and the like caused by the fact that a user does not upgrade the client application program for a long time are solved, and real-time monitoring on whether the client application program has a new version is achieved; if the latest version exists, the address list of the upgrading server corresponding to the latest version is obtained, when one server address cannot be connected, other upgrading server addresses are selected, the updating service of the application program is uninterrupted, meanwhile, the number of connections of each connection server address is judged, when the number of connections of one server address exceeds a preset value, the other upgrading server address with less number of connections is selected, the load balance is realized, and the speed of upgrading the application program of the client side is greatly improved. In addition, the invention also relates to a Message digest algorithm (MD 5) value, and the MD5 value is a unique value calculated through file attributes and an algorithm, and the value changes after a file or a folder is changed, so that the method can be used as a unique verification method for whether a file is tampered. Whether the downloaded upgrade file is tampered or not is judged by comparing whether the MD5 value in the xml configuration information is consistent with the MD5 value in the downloaded upgrade file or not, and the integrity and the accuracy of the upgrade file are guaranteed. When the value of the first MD5 is inconsistent with that of the second MD5, the upgrading fails, the client is locked and cannot be opened, and the user is reminded to uninstall and reinstall the client.
On the basis of the technical scheme, the invention can be further improved as follows.
Further, the step 3 comprises:
step 3.1, accessing the address of the upgrading server to obtain the xml configuration information of the latest version;
step 3.2, judging whether the current version and the latest version of the application program span two versions or more according to the configuration information of the current version of the application program and the xml configuration information;
3.3, if so, downloading a full upgrade file package corresponding to the xml configuration information, wherein the first MD5 value is a full information MD5 value, and the second MD5 value is a full upgrade file package MD5 value;
wherein the step 4 comprises:
and comparing whether the value of the full information MD5 is consistent with the value of the full upgrade file package MD5, if so, performing full upgrade on the application program according to the full upgrade file package and the xml configuration information, and if not, locking the application program to finish the upgrade of the client application program.
The invention has the further beneficial effects that: whether forced upgrading is carried out or not is automatically judged according to the xml configuration information, whether full upgrading or non-full upgrading is carried out is judged, forced upgrading processing of the client side is achieved under a certain condition, upgrading speed is improved, meanwhile, a dialog box is provided for the user interface under a certain condition, humanization is achieved in the upgrading process under the condition that the speed is improved, and experience of a user is enhanced.
Further, the upgrading method further comprises the following steps:
3.4, if not, downloading a non-full upgrade file corresponding to the xml configuration information, wherein the first MD5 value is a non-full information MD5 value, and the second MD5 value is a non-full upgrade file MD5 value;
step 3.5, judging whether to forcedly upgrade the application program according to the xml configuration information
Step 3.6, if so, executing step 4, wherein step 4 comprises: comparing whether the value of the non-full-scale MD5 is consistent with the value of the non-full-scale upgrade file MD5, if so, performing non-full-scale upgrade on the application program according to the non-full-scale upgrade file and the xml configuration information, and if not, locking the application program to finish the upgrade of the application program of the client;
3.7, if not, sending prompt information to the client and displaying the prompt information on an interface of the client;
step 3.8, when a first operation instruction which is input by a user and selected not to be upgraded is received, starting the application program, and finishing the upgrading of the application program of the client;
and 3.9, when a second operation instruction for selecting upgrading input by the user is received, executing the step 3.6.
Further, the xml configuration information further includes: the file deposit directory and the client application program initiate a boot path.
Further, when full upgrading is started, decompressing the full upgrading file packet to a first file storage directory according to the xml configuration information, deleting the application program file of the client, starting a guide path according to the application program of the client, starting the client and finishing upgrading the application program of the client; or,
when starting the incomplete upgrading, copying the incomplete upgrading file to a second file directory according to the xml configuration information, adding and/or replacing the file in the client, when the xml configuration information further comprises a file deleting instruction, deleting the file corresponding to the instruction in the client, starting a guide path according to the client application program, starting the client, and completing the upgrading of the client application program.
The invention also provides an upgrading system of the client application program, which comprises the following steps:
the upgrading gateway server is used for judging whether the application program of the client has the latest version or not when receiving an operation instruction of clicking the application icon of the client input by a user, acquiring an upgrading server address list if the application program of the client has the latest version, and selecting an upgrading server address which can be connected and the connection load number of which does not exceed a preset value according to the upgrading server address list; if not, sending an instruction for starting the application program to the client;
and the client side upgrading server is used for accessing the upgrading server address selected by the upgrading gateway server, obtaining the xml configuration information of the latest version, downloading an upgrading file corresponding to the xml configuration information, comparing whether the first MD5 value and the second MD5 value are consistent or not, upgrading the application program according to the upgrading file and the xml configuration information if the first MD5 value and the second MD5 value are consistent, and locking the application program if the first MD5 value and the second MD5 value are not consistent.
The invention has the beneficial effects that: after clicking the client application icon, the system automatically starts the application program upgrading process, judges whether the client application program has the latest version through the upgrading gateway server, prevents the problems that the client application program version is too low and the file is disordered and tampered during upgrading and the like caused by that a user does not upgrade the client application program for a long time, realizes the real-time monitoring of whether the client application program has the new version, if the client application program has the latest version, the upgrade gateway server obtains the address list of the upgrade server corresponding to the latest version and selects the address of the upgrade server capable of being connected, thereby realizing uninterrupted update service of the application program, meanwhile, the server addresses with less connections and the number of loads on the connectable servers not exceeding the preset value are selected to realize load balance, and the data is transmitted to a client side upgrading server, so that the upgrading speed of the client side application program is greatly improved. In addition, the system client side upgrading server also relates to a comparison information digest algorithm (MD 5) value, and the MD5 value is a unique value calculated through file attributes and an algorithm, and the value can be changed after a file or a folder is changed, so that the system client side upgrading server can be used as a unique verification method for whether the file is tampered. Whether the downloaded upgrade file is tampered or not is judged by comparing whether the MD5 value in the xml configuration information acquired by the client upgrade server from the upgrade server is consistent with the MD5 value in the downloaded upgrade file or not, and the integrity and accuracy of the upgrade file are guaranteed. When the value of the first MD5 is inconsistent with that of the second MD5, the upgrading fails, the client is locked and cannot be opened, and the user is reminded to uninstall or re-download and install the client.
Further, the client upgrade server is specifically configured to:
accessing the address of the upgrading server selected by the upgrading gateway server to obtain the xml configuration information of the latest version; judging whether the current version and the latest version of the application program span two versions or more according to the configuration information of the current version of the application program and the xml configuration information; if so, downloading a full upgrade file package corresponding to the xml configuration information, wherein the first MD5 value is a full information MD5 value, and the second MD5 value is a full upgrade file package MD5 value; and comparing whether the value of the full information MD5 is consistent with the value of the full upgrade file package MD5, if so, performing full upgrade on the application program according to the full upgrade file package and the xml configuration information, and if not, locking the application program to finish the upgrade of the client application program.
Further, the client upgrade server is further configured to:
if the current version and the latest version of the application program span one version, downloading a non-full upgrade file corresponding to the xml configuration information, wherein the first MD5 value is a non-full information MD5 value, and the second MD5 value is a non-full upgrade file MD5 value; judging whether the application program is forcibly upgraded or not according to the xml configuration information, if so, comparing whether the value of the non-full-scale MD5 is consistent with the value of the non-full-scale MD5, if so, performing non-full-scale upgrading on the application program according to the non-full-scale MD5 and the xml configuration information, and if not, locking the application program to finish upgrading the application program of the client;
if not, sending prompt information to the client, and displaying the prompt information on an interface of the client; when a first operation instruction which is input by a user and selected not to be upgraded is received, starting the application program, and finishing the upgrading of the application program of the client; when a second operation instruction for selecting upgrading input by a user is received, comparing whether the value of the non-full-volume MD5 is consistent with the value of the non-full-volume upgrading file MD5, if so, performing non-full-volume upgrading on the application program according to the non-full-volume upgrading file and the xml configuration information, and if not, locking the application program to finish upgrading the application program of the client.
Further, the xml configuration information further includes: the file deposit directory and the client application program initiate a boot path.
Further, when full upgrading is started, the client upgrading server decompresses the full upgrading file packet to a first file storage directory according to the xml configuration information, deletes the application program file of the client, starts a guide path according to the application program of the client, starts the client and finishes upgrading the application program of the client; or,
when starting the incomplete upgrading, the client side upgrading server copies the incomplete upgrading file to a second file directory according to the xml configuration information, adds and/or replaces the file in the client side, deletes the file corresponding to the instruction in the client side when the xml configuration information further comprises the instruction of file deletion, starts a guide path according to the client side application program, starts the client side, and finishes the upgrading of the client side application program.
Drawings
Fig. 1 is a schematic flowchart of an upgrading method for a client application according to an embodiment of the present invention;
fig. 2 is a schematic flowchart of an upgrading method for a client application according to a second embodiment of the present invention;
FIG. 3 is a schematic flow chart of step 130 of FIG. 2;
fig. 4 is a schematic structural diagram of an upgrade system of a client application according to a third embodiment of the present invention.
Detailed Description
The principles and features of this invention are described below in conjunction with the following drawings, which are set forth by way of illustration only and are not intended to limit the scope of the invention.
Example one
A method 100 for upgrading a client application, as shown in fig. 1, includes:
step 110, when receiving an operation instruction for clicking an application icon of a client, which is input by a user, judging whether an application program of the client has a latest version, if so, acquiring an address list of an upgrade server, and executing step 120; if not, starting the application program and finishing the upgrading of the application program of the client;
step 120, selecting an upgrade server address which can be connected and the number of connection loads of which does not exceed a preset value according to the upgrade server address list;
step 130, accessing the address of the upgrade server, obtaining xml configuration information of the latest version, and downloading an upgrade file corresponding to the xml configuration information, wherein the xml configuration information includes a first MD5 value, and the upgrade file includes a second MD5 value;
and 140, comparing whether the first MD5 value is consistent with the second MD5 value, if so, upgrading the application program according to the upgrading file and the xml configuration information, and if not, locking the application program to finish upgrading the client application program.
It should be noted that, when the value of the first MD5 is not consistent with that of the second MD5, the upgrade fails, and the client is locked and cannot be opened, so as to remind the user to uninstall and reinstall the client. The xml configuration information is information in a certain format generated by the difference between versions, for example, the application program of the a client is version 1.2, the version corresponding to the a client in the current upgrade server is version 1.3, the versions in the client and the upgrade server span one version, and the xml configuration information acquired in the upgrade server is configuration information generated by the difference between version 1.3 and version 1.2.
Example two:
alternatively, as an embodiment of the present invention, as shown in fig. 2, the method 100 includes:
step 110, when receiving an operation instruction for clicking an application icon of a client, which is input by a user, judging whether an application program of the client has a latest version, if so, acquiring an address list of an upgrade server, and executing step 120; if not, starting the application program and finishing the upgrading of the application program of the client;
step 120, selecting an upgrade server address which can be connected and the number of connection loads of which does not exceed a preset value according to the upgrade server address list;
step 130, accessing the address of the upgrade server, obtaining xml configuration information of the latest version, downloading an upgrade file corresponding to the xml configuration information, and judging whether to forcibly upgrade the application program according to the configuration information of the client and the xml configuration information, wherein the xml configuration information includes a first MD5 value, and the upgrade file includes a second MD5 value;
and 140, comparing whether the first MD5 value is consistent with the second MD5 value, if so, upgrading the application program according to the upgrading file and the xml configuration information, and if not, locking the application program to finish upgrading the client application program.
It should be noted that, when the value of the first MD5 is not consistent with that of the second MD5, the upgrade fails, and the client is locked and cannot be opened, so as to remind the user to uninstall and reinstall the client. In step 120 in fig. 1 and/or fig. 2, according to the upgrade server address list, when one of the server addresses cannot be connected, other upgrade server addresses are selected, so that uninterrupted application program update service is realized, the connection number of each connection service address is determined, when the connection number of one server address exceeds a set upper limit, another upgrade server address is selected for connection, so that upgrade load balancing is realized, and the problem of slow software upgrade speed is solved.
Specifically, as shown in fig. 3, step 130 in fig. 2 includes:
step 131, accessing the address of the upgrade server to obtain the xml configuration information of the latest version.
Step 132, according to the configuration information of the current version of the application program and the xml configuration information, determining whether the current version and the latest version of the application program span two versions or more.
Step 133, if so, downloading a full upgrade file package corresponding to the xml configuration information, where the first MD5 value is a full information MD5 value, and the second MD5 value is a full upgrade file package MD5 value.
Step 140 includes:
141. and comparing whether the value of the full-volume information MD5 is consistent with the value of the full-volume upgrade file package MD 5.
142. And if so, performing full upgrade on the application program according to the full upgrade file package and the xml configuration information.
143. If not, the application program is locked, and the upgrading of the client application program is completed.
Specifically, as shown in fig. 3, step 130 in fig. 2 further includes:
and step 134, if not, downloading a non-full upgrade file corresponding to the xml configuration information, wherein the first MD5 value is a non-full information MD5 value, and the second MD5 value is a non-full upgrade file MD5 value.
And 135, judging whether the application program is forcibly upgraded or not according to the xml configuration information.
Step 136, if yes, executing step 144, wherein step 144 compares whether the value of the non-full-volume MD5 is consistent with the value of the non-full-volume upgrade file MD 5; step 145, if yes, performing incomplete upgrading on the application program according to the incomplete upgrading file and the xml configuration information; if not, go to step 143.
And step 137, if not, sending the prompt information to the client and displaying the prompt information on the interface of the client. Specifically, in this embodiment, the prompt message may be displayed on the interface of the client in the form of a dialog box, and is used to prompt the user to select whether to upgrade the application program.
And step 138, when the first operation instruction which is input by the user and is not updated is received, starting the application program, and ending the updating of the client application program.
When a user input selection upgrading second operation instruction is received, step 139, steps 144 and 145 are executed, and step 143 is executed.
In addition, in the first and second embodiments, the xml configuration information is information in a certain format produced by a difference between versions, for example, the application program of the a client is version 1.2, while the version corresponding to the a client in the current upgrade server is version 1.3, the versions in the client and the upgrade server span one version, and the xml configuration information acquired in the upgrade server is configuration information produced by a difference between version 1.3 and version 1.2.
In addition, when judging that the version in the upgrade server and the version of the client span two versions or more according to the xml configuration information and the configuration information of the client, downloading a full upgrade file package according to the xml configuration information, wherein the full upgrade file package corresponds to an MD5 value, comparing the full upgrade file package with an MD5 value of the full upgrade file package in the xml configuration information, if the full upgrade file package is consistent with the MD 3578 value, the full upgrade file package downloaded from the upgrade server is not tampered, and then performing full replacement with files in the client, wherein the full upgrade file package comprises all files of the application program of the client; when judging that the version in the upgrade server and the version of the client span over one version according to the xml configuration information and the configuration information of the client, downloading non-full files according to the xml configuration information, wherein the non-full files are all single files which are different from the files in the client, correspondingly, each file corresponds to an MD5 value, if an a file and a b file exist, the MD5 value corresponding to the a file in the xml configuration information is a first a-MD5 value, the MD5 value of the a-file downloaded in the upgrade server is the second a-MD5 value, and the first a-MD5 value and the second a-MD5 value need to be compared to determine whether the a-file is tampered, and similarly, and comparing the first b-MD5 value with the second b-MD5 value to judge whether the b file is tampered, and if the a file and the b file are not tampered, performing upgrading operation.
The xml configuration information further includes: the file deposit directory and the client application program initiate a boot path.
When full upgrading is started, decompressing a full upgrading file packet to a first file storage directory according to xml configuration information, deleting an application program file of a client, starting a guide path according to an application program of the client, starting the client and finishing upgrading the application program of the client; or,
when starting the incomplete upgrading, copying the incomplete upgrading file to a second file directory according to the xml configuration information, adding and/or replacing the file in the client, deleting the file corresponding to the instruction in the client when the xml configuration information further comprises the instruction of file deletion, starting a guide path according to the client application program, starting the client, and finishing the upgrading of the client application program.
It should be noted that the full upgrade refers to performing all upgrade replacement on configuration files of the client application program, and the full upgrade is used for starting when the configuration of the client application program is different from that of the latest version in the upgrade server by two or more levels, so that the replacement confusion caused by more versions and files when a single file is upgraded is prevented. And the non-full upgrade refers to the one-by-one upgrade replacement of one or more files in the new version configuration file, and the non-full upgrade is used for starting when the program configuration of the client and the latest version configuration in the upgrade server only differ by one stage and need to be upgraded, so that the time and the labor are saved.
In addition, when a new version is built, the application program needs to release new version information to the xml configuration file, the process is version information for automatic updating, and java is adopted to realize automatic release in the process. The method comprises the steps of carrying out MD5 value recursive check on a root directory of a constructed new version and a root directory of a last version, carrying out addition check on files and folders and deletion check on files and folders, wherein when a certain file exists in the new version but the file does not exist in the last version, the file is a newly added file, when a certain file exists in the last version but the file does not exist in the new version, the file is a deleted file, if the files exist in the new version and the last version but the MD5 values of the files are different, the file is a modified file, finally, an xml file is generated according to an xml format standard according to a check result, and the changed file is uploaded to an update server through FTP.
The application program upgrading method in fig. 1 and/or fig. 2 is a process of implementing automatic updating of a CS framework client based on an open source framework jupidator, and the application program upgrading is implemented based on an extensible markup language (xml) configuration file and a user interface development kit (Swing interface) by using java language.
Example three:
an embodiment of the present invention further provides an upgrade system 200 for a client application program, as shown in fig. 4, including: the method comprises the steps that a gateway server and a client side upgrading server are upgraded;
the upgrading gateway server is used for judging whether the application program of the client has the latest version or not after the application icon of the client is clicked, if so, acquiring an upgrading server address list, and selecting an upgrading server address which can be connected and the number of the connection loads of which does not exceed a preset value according to the upgrading server address list; if not, sending an instruction for starting the application program to the client;
and the client side upgrading server is used for accessing the address of the upgrading server, acquiring the xml configuration information of the latest version, downloading an upgrading file corresponding to the xml configuration information, wherein the xml configuration information comprises a first MD5 value, the upgrading file comprises a second MD5 value, comparing whether the first MD5 value and the second MD5 value are consistent, if so, upgrading the application program according to the upgrading file and the xml configuration information, and if not, locking the application program.
After accessing the address of the upgrade server and acquiring the xml configuration information of the latest version, the client upgrade server is further configured to: judging whether the application program and the latest version span two versions or more according to the configuration information of the application program and the xml configuration information, if so, downloading a full upgrade file package corresponding to the xml configuration information, wherein the first MD5 value is a full information MD5 value, the second MD5 value is a full upgrade file package MD5 value, and comparing the first MD5 value with the second MD5 value; if not, downloading a non-full upgrade file corresponding to the xml configuration information, wherein the value of the first MD5 is the value of non-full information MD5, the value of the second MD5 is the value of the non-full upgrade file MD5, judging whether to forcibly upgrade the application program according to the xml configuration information, if so, comparing the value of the first MD5 with the value of the second MD5, if not, sending a dialog box of whether to upgrade to the client interface, starting the application program when the user selects not to upgrade, ending the upgrade of the client application program, and comparing the value of the first MD5 with the value of the second MD5 when the user selects to upgrade.
When the client side upgrade server upgrades the application program according to the upgrade file and the xml configuration information, the client side upgrade server is specifically configured to: comparing whether the first MD5 value and the second MD5 value are consistent, if so, when the application program and the latest version span two versions and more, carrying out full upgrading to finish upgrading the application program, or when the application program and the latest version span one version and the application program needs forced upgrading, carrying out non-full upgrading to finish upgrading the application program; if not, the application program is locked.
The xml configuration information further includes: the file deposit directory and the client application program initiate a boot path.
When full upgrading is started, the client side upgrading server decompresses a full upgrading file packet to a first file storage directory according to the xml configuration information, deletes an application program file of the client side, starts a guide path according to the client side application program, starts the client side and completes upgrading of the client side application program; or,
when starting the incomplete upgrading, the client upgrading server copies the incomplete upgrading file to a second file directory according to the xml configuration information, adds and/or replaces the file in the client, deletes the file corresponding to the instruction in the client when the xml configuration information further comprises the instruction of file deletion, starts a guide path according to the client application program, starts the client, and completes the upgrading of the client application program.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.
Claims (10)
1. A method for upgrading a client application program, comprising:
step 1, when receiving an operation instruction input by a user for clicking an application icon of a client, judging whether an application program has a latest version, if so, acquiring an address list of an upgrade server, and executing step 2; if not, starting the application program and finishing the upgrading of the application program of the client;
step 2, selecting an upgrade server address which can be connected and the number of connection loads of which does not exceed a preset value according to the upgrade server address list;
step 3, accessing the address of the upgrade server, obtaining the xml configuration information of the latest version, and downloading an upgrade file corresponding to the xml configuration information, wherein the xml configuration information comprises a first MD5 value, and the upgrade file comprises a second MD5 value;
and 4, comparing whether the first MD5 value is consistent with the second MD5 value, if so, upgrading the application program according to the upgrading file and the xml configuration information, and if not, locking the application program to finish upgrading the application program of the client.
2. The method for upgrading a client application according to claim 1, wherein the step 3 comprises:
step 3.1, accessing the address of the upgrading server to obtain the xml configuration information of the latest version;
step 3.2, judging whether the current version and the latest version of the application program span two versions or more according to the configuration information of the current version of the application program and the xml configuration information;
3.3, if so, downloading a full upgrade file package corresponding to the xml configuration information, wherein the first MD5 value is a full information MD5 value, and the second MD5 value is a full upgrade file package MD5 value;
wherein the step 4 comprises:
and comparing whether the value of the full information MD5 is consistent with the value of the full upgrade file package MD5, if so, performing full upgrade on the application program according to the full upgrade file package and the xml configuration information, and if not, locking the application program to finish the upgrade of the client application program.
3. The method for upgrading a client application according to claim 2, further comprising:
3.4, if not, downloading a non-full upgrade file corresponding to the xml configuration information, wherein the first MD5 value is a non-full information MD5 value, and the second MD5 value is a non-full upgrade file MD5 value;
step 3.5, judging whether to forcedly upgrade the application program according to the xml configuration information
Step 3.6, if so, executing step 4, wherein step 4 comprises: comparing whether the value of the non-full-scale MD5 is consistent with the value of the non-full-scale upgrade file MD5, if so, performing non-full-scale upgrade on the application program according to the non-full-scale upgrade file and the xml configuration information, and if not, locking the application program to finish the upgrade of the application program of the client;
3.7, if not, sending prompt information to the client and displaying the prompt information on an interface of the client;
step 3.8, when a first operation instruction which is input by a user and selected not to be upgraded is received, starting the application program, and finishing the upgrading of the application program of the client;
and 3.9, when a second operation instruction for selecting upgrading input by the user is received, executing the step 3.6.
4. The method for upgrading a client application according to claim 3, wherein the xml configuration information further includes: and starting a guide path by the file storage directory and the client application program.
5. The upgrading method of the client application program according to claim 4, wherein when full upgrading is enabled, the full upgrading file packet is decompressed to a first file storage directory according to the xml configuration information, the application program file of the client is deleted, and the client is started according to the client application program starting guide path, so that the upgrading of the client application program is completed; or,
when starting the incomplete upgrading, copying the incomplete upgrading file to a second file directory according to the xml configuration information, adding and/or replacing the file in the client, when the xml configuration information further comprises a file deleting instruction, deleting the file corresponding to the instruction in the client, starting a guide path according to the client application program, starting the client, and completing the upgrading of the client application program.
6. A system for upgrading a client application, comprising:
the upgrading gateway server is used for judging whether the application program of the client has the latest version or not when receiving an operation instruction of clicking the application icon of the client input by a user, acquiring an upgrading server address list if the application program of the client has the latest version, and selecting an upgrading server address which can be connected and the connection load number of which does not exceed a preset value according to the upgrading server address list; if not, sending an instruction for starting the application program to the client;
and the client side upgrading server is used for accessing the upgrading server address selected by the upgrading gateway server, obtaining the xml configuration information of the latest version, downloading an upgrading file corresponding to the xml configuration information, comparing whether the first MD5 value and the second MD5 value are consistent or not, upgrading the application program according to the upgrading file and the xml configuration information if the first MD5 value and the second MD5 value are consistent, and locking the application program if the first MD5 value and the second MD5 value are not consistent.
7. The system for upgrading a client application according to claim 6, wherein the client upgrade server is specifically configured to:
accessing the address of the upgrading server selected by the upgrading gateway server to obtain the xml configuration information of the latest version; judging whether the current version and the latest version of the application program span two versions or more according to the configuration information of the current version of the application program and the xml configuration information; if so, downloading a full upgrade file package corresponding to the xml configuration information, wherein the first MD5 value is a full information MD5 value, and the second MD5 value is a full upgrade file package MD5 value; and comparing whether the value of the full information MD5 is consistent with the value of the full upgrade file package MD5, if so, performing full upgrade on the application program according to the full upgrade file package and the xml configuration information, and if not, locking the application program to finish the upgrade of the client application program.
8. The system for upgrading a client application according to claim 7, wherein the client upgrade server is further configured to:
if the current version and the latest version of the application program span one version, downloading a non-full upgrade file corresponding to the xml configuration information, wherein the first MD5 value is a non-full information MD5 value, and the second MD5 value is a non-full upgrade file MD5 value; judging whether the application program is forcibly upgraded or not according to the xml configuration information, if so, comparing whether the value of the non-full-scale MD5 is consistent with the value of the non-full-scale MD5, if so, performing non-full-scale upgrading on the application program according to the non-full-scale MD5 and the xml configuration information, and if not, locking the application program to finish upgrading the application program of the client;
if not, sending prompt information to the client, and displaying the prompt information on an interface of the client; when a first operation instruction which is input by a user and selected not to be upgraded is received, starting the application program, and finishing the upgrading of the application program of the client; when a second operation instruction for selecting upgrading input by a user is received, comparing whether the value of the non-full-volume MD5 is consistent with the value of the non-full-volume upgrading file MD5, if so, performing non-full-volume upgrading on the application program according to the non-full-volume upgrading file and the xml configuration information, and if not, locking the application program to finish upgrading the application program of the client.
9. The system for upgrading a client application according to claim 8, wherein the xml configuration information further includes: the file deposit directory and the client application program initiate a boot path.
10. The system for upgrading a client application program according to claim 9, wherein when full upgrade is enabled, the client upgrade server decompresses the full upgrade file package under a first file storage directory according to the xml configuration information, deletes an application program file of the client, starts the client according to a boot path of the client application program, and completes upgrade of the client application program; or,
when starting the incomplete upgrading, the client side upgrading server copies the incomplete upgrading file to a second file directory according to the xml configuration information, adds and/or replaces the file in the client side, deletes the file corresponding to the instruction in the client side when the xml configuration information further comprises the instruction of file deletion, starts a guide path according to the client side application program, starts the client side, and finishes the upgrading of the client side application program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710210358.0A CN107016280A (en) | 2017-03-31 | 2017-03-31 | The upgrade method and system of a kind of client application |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710210358.0A CN107016280A (en) | 2017-03-31 | 2017-03-31 | The upgrade method and system of a kind of client application |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107016280A true CN107016280A (en) | 2017-08-04 |
Family
ID=59445683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710210358.0A Pending CN107016280A (en) | 2017-03-31 | 2017-03-31 | The upgrade method and system of a kind of client application |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107016280A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108037946A (en) * | 2017-11-03 | 2018-05-15 | 金证财富南京科技有限公司 | A kind of method, system and the server of the renewal of application program heat |
CN108243254A (en) * | 2018-01-17 | 2018-07-03 | 平安科技(深圳)有限公司 | Electronic device, the method and storage medium of the publication of application upgrade version |
CN108415957A (en) * | 2017-11-06 | 2018-08-17 | 北京京东尚科信息技术有限公司 | The method and device of the self-defined navigation of webpage |
CN108509211A (en) * | 2018-02-07 | 2018-09-07 | 深圳壹账通智能科技有限公司 | Application program updating method, apparatus, mobile terminal and storage medium |
CN108647039A (en) * | 2018-04-10 | 2018-10-12 | 北京奇安信科技有限公司 | A kind of processing method and processing device of data upgrading |
CN109117166A (en) * | 2018-11-16 | 2019-01-01 | 重庆惠家通信息技术有限公司 | The method for upgrading software of quick dilatation |
CN109522038A (en) * | 2018-11-22 | 2019-03-26 | 凌云天博光电科技股份有限公司 | A kind of client side upgrading method and device of CS framework |
CN110290160A (en) * | 2018-03-19 | 2019-09-27 | 北京视联动力国际信息技术有限公司 | A kind of data processing method and device of view networking |
CN111610990A (en) * | 2019-02-25 | 2020-09-01 | 阿里巴巴集团控股有限公司 | Method, device and related system for upgrading application program |
CN112698850A (en) * | 2019-10-22 | 2021-04-23 | 北京华为数字技术有限公司 | Optimized upgrading method and related equipment |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557308A (en) * | 2009-05-06 | 2009-10-14 | 成都市华为赛门铁克科技有限公司 | File upgrading method and terminal device |
CN102625287A (en) * | 2011-09-09 | 2012-08-01 | 威海捷讯通信技术有限公司 | Method for downloading mobile phone application software |
CN103810011A (en) * | 2014-02-25 | 2014-05-21 | 广州视源电子科技股份有限公司 | Method for realizing OTA (over the air) upgrading through file server |
CN103888523A (en) * | 2014-03-11 | 2014-06-25 | 北京京东尚科信息技术有限公司 | Method, device and system for confirming download link of software version upgrade file |
CN104090806A (en) * | 2014-07-18 | 2014-10-08 | 百度在线网络技术(北京)有限公司 | Method and device for processing upgrade patch and upgrade request |
US20140304697A1 (en) * | 2011-12-01 | 2014-10-09 | Tencent Technology (Shenzhen) Company Limited | Method and system for upgrading software |
-
2017
- 2017-03-31 CN CN201710210358.0A patent/CN107016280A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557308A (en) * | 2009-05-06 | 2009-10-14 | 成都市华为赛门铁克科技有限公司 | File upgrading method and terminal device |
CN102625287A (en) * | 2011-09-09 | 2012-08-01 | 威海捷讯通信技术有限公司 | Method for downloading mobile phone application software |
US20140304697A1 (en) * | 2011-12-01 | 2014-10-09 | Tencent Technology (Shenzhen) Company Limited | Method and system for upgrading software |
CN103810011A (en) * | 2014-02-25 | 2014-05-21 | 广州视源电子科技股份有限公司 | Method for realizing OTA (over the air) upgrading through file server |
CN103888523A (en) * | 2014-03-11 | 2014-06-25 | 北京京东尚科信息技术有限公司 | Method, device and system for confirming download link of software version upgrade file |
CN104090806A (en) * | 2014-07-18 | 2014-10-08 | 百度在线网络技术(北京)有限公司 | Method and device for processing upgrade patch and upgrade request |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108037946A (en) * | 2017-11-03 | 2018-05-15 | 金证财富南京科技有限公司 | A kind of method, system and the server of the renewal of application program heat |
CN108037946B (en) * | 2017-11-03 | 2020-06-12 | 金证财富南京科技有限公司 | Method, system and server for hot updating of application program |
CN108415957A (en) * | 2017-11-06 | 2018-08-17 | 北京京东尚科信息技术有限公司 | The method and device of the self-defined navigation of webpage |
CN108243254A (en) * | 2018-01-17 | 2018-07-03 | 平安科技(深圳)有限公司 | Electronic device, the method and storage medium of the publication of application upgrade version |
CN108243254B (en) * | 2018-01-17 | 2020-09-25 | 平安科技(深圳)有限公司 | Electronic device, method for releasing application upgrading version and storage medium |
WO2019140829A1 (en) * | 2018-01-17 | 2019-07-25 | 平安科技(深圳)有限公司 | Electronic device, method for releasing application update version, and storage medium |
CN108509211A (en) * | 2018-02-07 | 2018-09-07 | 深圳壹账通智能科技有限公司 | Application program updating method, apparatus, mobile terminal and storage medium |
CN110290160A (en) * | 2018-03-19 | 2019-09-27 | 北京视联动力国际信息技术有限公司 | A kind of data processing method and device of view networking |
CN108647039A (en) * | 2018-04-10 | 2018-10-12 | 北京奇安信科技有限公司 | A kind of processing method and processing device of data upgrading |
CN109117166A (en) * | 2018-11-16 | 2019-01-01 | 重庆惠家通信息技术有限公司 | The method for upgrading software of quick dilatation |
CN109117166B (en) * | 2018-11-16 | 2022-03-11 | 重庆惠家通信息技术有限公司 | Software upgrading method for rapid capacity expansion |
CN109522038A (en) * | 2018-11-22 | 2019-03-26 | 凌云天博光电科技股份有限公司 | A kind of client side upgrading method and device of CS framework |
CN111610990A (en) * | 2019-02-25 | 2020-09-01 | 阿里巴巴集团控股有限公司 | Method, device and related system for upgrading application program |
CN111610990B (en) * | 2019-02-25 | 2023-05-16 | 阿里巴巴集团控股有限公司 | Method, device and related system for upgrading application program |
CN112698850A (en) * | 2019-10-22 | 2021-04-23 | 北京华为数字技术有限公司 | Optimized upgrading method and related equipment |
CN112698850B (en) * | 2019-10-22 | 2023-06-20 | 北京华为数字技术有限公司 | Optimized upgrading method and related equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107016280A (en) | The upgrade method and system of a kind of client application | |
US8037198B2 (en) | Firmware upgrade for thin clients using one or more servers | |
US8606765B2 (en) | Systems and methods for updating software appliances | |
US10452620B2 (en) | Automatic file version verification within electronic mail | |
US8782604B2 (en) | Sandbox support for metadata in running applications | |
CN108228810B (en) | Form linkage configuration method and system and form updating method and system | |
US9690562B2 (en) | Detecting computing processes requiring reinitialization after a software package update | |
CN106874176B (en) | Intelligent test method and device | |
WO2006099465A2 (en) | System and method for automatically uploading updates | |
CN101719073A (en) | Intelligent client-based on-demand downloading realization method | |
US11113045B2 (en) | Image install of a network appliance | |
US9063690B2 (en) | Information processing apparatus, information processing system, and recording medium storing a program includes a device control program that is updated independently from a program executed on an external apparatus | |
US6988055B1 (en) | Method, system, and apparatus for providing a single diagnostics module on-demand | |
US7231549B1 (en) | Method and apparatus for providing on-demand computer diagnostics | |
US20210311717A1 (en) | Desired state model for managing lifecycle of virtualization software | |
US7200775B1 (en) | Method and data structures for use in providing on-demand computer diagnostics | |
US11301227B2 (en) | Server apparatus, information processing apparatus, and control method for installing application | |
CN114296771A (en) | Installation package increment upgrading method and device based on file comparison | |
US8818969B2 (en) | Information processing apparatus and server, control method, and recording medium | |
CN109240726B (en) | Software updating method and system | |
CN101146111B (en) | A file download method and device | |
EP3260981B1 (en) | Information processing apparatus, information processing system, and information processing method for updating firmware | |
CN117055930A (en) | System upgrading deployment method and system | |
US20230342181A1 (en) | Validation of combined software/firmware updates | |
WO2017036197A1 (en) | Method and device for managing network element model |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170804 |
|
WD01 | Invention patent application deemed withdrawn after publication |