WO2017107961A1 - Backup system and method - Google Patents

Backup system and method Download PDF

Info

Publication number
WO2017107961A1
WO2017107961A1 PCT/CN2016/111559 CN2016111559W WO2017107961A1 WO 2017107961 A1 WO2017107961 A1 WO 2017107961A1 CN 2016111559 W CN2016111559 W CN 2016111559W WO 2017107961 A1 WO2017107961 A1 WO 2017107961A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
application
server
backup
content
Prior art date
Application number
PCT/CN2016/111559
Other languages
French (fr)
Chinese (zh)
Inventor
杨继鑫
潘全新
薛依琳
李良
王熙
王新
刘京京
葛均辉
Original Assignee
北京奇虎科技有限公司
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 北京奇虎科技有限公司 filed Critical 北京奇虎科技有限公司
Publication of WO2017107961A1 publication Critical patent/WO2017107961A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Definitions

  • the present invention relates to the field of communication and Internet application technologies, and in particular, to a backup system and method.
  • the application when the operating system of the terminal is updated or flashed, in order to ensure that the application (APP) installed before the operating system update or flashing can be quickly installed, the application can be backed up before the operating system is updated or flashed.
  • the server after the operating system is updated or flashed, the backed up application is restored from the server to the terminal.
  • the present invention has been made in order to provide a backup system and method that overcomes the above problems or at least partially solves the above problems.
  • a backup system including: a first terminal, configured to send a query request to an application server when the application is backed up, wherein the query request carries an application to be backed up
  • the application server is configured to receive a query request sent by the first terminal, and return a query request response to the first terminal, where the query request response carries an application indicating the to be backed up Whether the installation package is stored on the application server;
  • the first terminal is further configured to, according to the indication information, prohibit the installation package of the first application to be backed up, where the installation package is stored on the application server Uploading to the backup server, uploading related information of the first application to the backup server;
  • the backup server is configured to save related information uploaded by the first terminal and a user used when the first terminal logs in The first association of the identity.
  • a backup method including:
  • the first terminal sends a query request to the application server when the application is backed up, where the query request carries the identification information of the application to be backed up;
  • the application server receives the query request sent by the first terminal, and returns a query request response to the first terminal, where the query request response carries an installation package indicating whether the application to be backed up is stored in the Describe the information on the application server;
  • the first terminal prohibits uploading an installation package of the first application to be backed up stored on the application server to the backup server, and uploading related information of the first application to the The backup server;
  • the backup server saves a first association relationship between the related information uploaded by the first terminal and the user identifier used when the first terminal logs in.
  • a computer program comprising computer readable code that, when executed on a computing device, causes the computing device to perform a backup method according to the above .
  • a computer readable medium storing the above computer program is provided.
  • the terminal when the application is backed up, the terminal first queries whether the application server stores the pending The backup application, if stored, the terminal does not upload the installation package of the application to be backed up to the backup server, and only uploads the relevant information of the application to the backup server, which reduces the amount of uploaded data and shortens the application backup. The time required saves the data fluency of the application backup and improves the user experience.
  • FIG. 1 is a schematic structural diagram of a backup system according to Embodiment 1 of the present invention.
  • FIG. 2 is a schematic structural diagram of a backup system according to Embodiment 2 of the present invention.
  • FIG. 3 is a schematic structural diagram of a backup system according to Embodiment 3 of the present invention.
  • FIG. 4 is a schematic structural diagram of a backup system according to Embodiment 4 of the present invention.
  • FIG. 5 is a schematic flowchart diagram of a backup method according to Embodiment 5 of the present invention.
  • Figure 6 is a schematic block diagram showing a computing device for performing a backup method in accordance with the present invention.
  • Fig. 7 schematically shows a storage unit for holding or carrying program code implementing a backup method according to the present invention.
  • FIG. 1 is a block diagram showing the architecture of a backup system according to an embodiment of the invention.
  • the backup system includes at least: a first terminal 100, an application server 102, and a backup server 104.
  • the first terminal 100 is configured to send a query request to the application server 102 when the application is backed up, where the query request carries the identification information of the application to be backed up; the application server 102 is configured to receive a query request sent by the first terminal 100, and returning a query request response to the first terminal 100, wherein the query request response carries an installation package indicating whether the application to be backed up is stored in the application server
  • the first terminal 100 is further configured to: upload, according to the indication information, an installation package of the first application to be backed up, where the installation package is stored on the application server 102, to the backup server 104, Uploading the related information of the first application to the backup server 104.
  • the backup server 104 is configured to save the related information uploaded by the first terminal 100 and the user identifier used when the first terminal 100 logs in. The first association.
  • the first terminal 100 when the application is backed up, the first terminal 100 first queries whether the application to be backed up is stored in the application server 102, and does not upload the application when the first application of the installation package is stored in the application server 102.
  • the installation package is sent to the backup server 104, and only the related information of the application is uploaded to the backup server 104, thereby reducing the amount of uploaded data, saving backup time and improving the user experience.
  • the system may further include: a storage server 106, where the first terminal 100 is further configured to store the installation package according to the indication information.
  • An installation package of the second application to be backed up on the application server 102 and related information of the second application are uploaded to the backup server 104; the backup server 104 is further configured to use the second application
  • the installation package of the program is sent to the storage server 106 for saving, and the related information of the second application is saved, and the storage package of the second application is stored in the second association of the storage address of the storage server and the user identifier.
  • the storage server 106 is configured to save an installation package of the second application.
  • the first terminal 100 uploads the installation package and related information of the application to the backup server 104.
  • the first terminal 100 uploads the installation package and related information of the application to the backup server 104.
  • the first terminal 100 may need to back up multiple applications at a time, and the query request may include identification information of the multiple applications, and the application server 102 may simultaneously return whether the installation package indicating the multiple applications is stored.
  • the indication information of the application server 10 for the first application stored in the application server 102 of the installation package, the first terminal 100 only uploads related information of such application to the backup server 104, and does not install the application package of such application. Upload to backup server 104.
  • the first terminal 100 uploads the installation package and related information of the application to the backup server 104. Therefore, it is ensured that only the applications not in the application server 102 are uploaded during the backup, thereby saving the backup time while ensuring effective backup.
  • the related information includes: version information and verification data.
  • version information When restoring, you can refer to the version information of the backup to select the appropriate version.
  • the integrity check of the installation package of the application uploaded by the terminal may be performed to ensure the data integrity of the uploaded installation package, and the restored application may also be restored according to the verification data during backup and restore.
  • the program performs an integrity check.
  • the related information may further include: user data; the backup server 104 is further configured to send the user data to the storage server 106 to save the user.
  • the data is saved in the first association relationship or the second association relationship at a storage address of the storage server. That is, the user backs up the user data generated by the application to be backed up, for example, the chat record generated by the user using QQ, the chat record generated by the user using WeChat, and the information shared by the circle of friends.
  • the application is restored, the corresponding user data can be restored to the user together to improve the user experience.
  • the backup server 104 transmits the installation package of the application to the first terminal at the storage address of the storage server 106, and the first terminal can download the application installation package from the storage server 106 according to the storage address.
  • the backup server 104 may acquire the installation package of the application in the storage address of the storage server 106 according to the installation package of the application, and send the installation package of the obtained application to the first terminal 100, which is not limited in this embodiment.
  • the backup server 104 may associate the identification information of the application uploaded by the terminal, the related information, and the storage address of the installation package.
  • the version of the application that is backed up is not the latest version
  • the new version can be restored to the user, thereby avoiding the air interface traffic caused by the version being updated after the user is restored. Consumption, improve the user experience.
  • the backed up information further includes user data
  • the data is converted to the corresponding format and then restored to the terminal, avoiding the problem that the user cannot view the user data because the version of the user data is inconsistent with the version of the application when the user data is restored to the user. For details, refer to the description of the subsequent embodiment 2.
  • the first terminal 100 initiates the backup may be manually triggered by the user, or may be triggered by an event. That is, the first terminal 100 may send a query request to the application server 102 upon receiving an operation request of the input backup application.
  • the user can input through a keyboard, a button or a controllable touch screen; or the first terminal 100 can also detect that a predetermined trigger event occurs, and send a query request to the application server 102.
  • the trigger event can be preset by the user. For example, the user can set a backup before updating the system, and then perform application backup when the system needs to be updated.
  • the specific trigger event may be set according to a specific situation, which is not limited in this embodiment.
  • the system may further include an identity server (ID server) 108, and the first terminal 100 is further configured to send the user to the ID server.
  • ID server identity server
  • the ID server 108 After the identified login request, the ID server 108 generates a request for the user after receiving the user's request.
  • the authentication code is sent to the first terminal 100.
  • the first terminal 100 After receiving the identity verification code, the first terminal 100 acquires the identity verification code, and when sending the query request to the application server 102, submits the identity verification code to the application server 102, and the application server can cooperate with the ID server to implement the identity verification code.
  • the first terminal 100 After the verification of the verification code, the first terminal 100 is allowed to query whether the installation package of the application to be backed up is saved in the application server 102, and if the verification fails, the request of the terminal is rejected. Similarly, when uploading the backup data to the backup server 104, the first terminal 100 also needs to submit the authentication code to the backup server, and the backup server 104 cooperates with the ID server 108 to verify the identity verification code, and then receives the authentication code. The backup data uploaded by the terminal 102 rejects the backup data uploaded by the first terminal 100 if the verification fails.
  • the ID server 108 can send an authentication code to the first terminal 100 by using a short message, and the first terminal 100 can automatically obtain the verification code in the short message.
  • the first terminal 100 can automatically obtain the verification code in the short message by using the following steps:
  • Step 1 Obtain a platform signature of an operating system of the first terminal 100.
  • the first terminal 100 can run an executable file injected in advance in a system server (SystemServer) component of the operating system to obtain a platform signature, that is, inject an executable file into a SystemServer component of the operating system, by running the executable file,
  • the platform signature of the operating system can be obtained.
  • the first terminal 100 may also obtain a high-privilege by using a program of a partition by brushing in a recovery partition, which may be A module is set in the ramdisk to scan the operating system partition and view the platform signature of the operating system after scanning.
  • Step 2 Acquire permission to read the content of the short message based on obtaining the platform signature.
  • the application may be re-signed by using the platform signature of the obtained operating system, so that the application obtains the corresponding authority of the operating system.
  • the corresponding permission refers to obtaining the read short message content. permission).
  • Step 3 Acquire a verification code in the short message received by the first terminal 100 based on the obtained permission to acquire the content of the short message.
  • the first terminal 100 may invoke an application program interface (API) that acquires the content of the short message based on the acquired authority, and read the content of the short message received by the first terminal 100 from the database of the first terminal 100. And then obtaining the verification code from the content of the short message.
  • API application program interface
  • the API for obtaining the content of the short message belongs to a high-level API, and the application having the system permission must invoke such an API. Therefore, in this embodiment, the corresponding permission is obtained through the platform signature to invoke the API. Get the content of the short message.
  • the first terminal 100 may also input the obtained verification code into a dialog box that needs to fill in the verification code, thereby realizing automatic filling of the short message verification code and improving the user experience.
  • the application server 102, the backup server 104, the storage server 103, and the ID server 108 are separately provided according to the functions of the respective servers, but the invention is not limited thereto. In a specific application, It is also possible to merge into the same server.
  • FIG. 2 is a schematic structural diagram of a backup system according to the embodiment. As shown in FIG. 2, the backup system provided in this embodiment adds a second terminal 200 to the first embodiment.
  • the second terminal 200 and the first terminal 100 may be the same terminal, or may be different terminals, which is not limited in this embodiment.
  • the second terminal 200 is configured to request the backup server 104 for the backed up application.
  • the second terminal 200 is configured to send, to the application server 102, a first backup restore request that carries related information of the backed up application, and requests to download the backed up application, where the related information includes: The identification information of the backed up application and the version information of the backed up application.
  • the application server 102 is configured to receive, by the second terminal 200, a first backup and restore request that is related to the information about the application that is backed up, where the related information includes: identifier information of the backup application and the backup Searching the version information of the application, searching for the application saved by the application server 102 according to the identification information; and determining whether the searched version of the application has a version that is older than the version of the backup application; if yes, Sending the installation package of the found new version of the application to the second terminal 200.
  • the application server 102 when receiving the backup and restore request of the second terminal 200, the application server 102 searches whether the local version of the application that is requested to be restored is updated (or may also be called higher). The version, if any, sends the found installation package of the new version of the application to the second terminal 200, so that the second terminal 200 can obtain the new version of the application when the application is restored, avoiding the user being After the backup and restore, you need to download the new version of the application again, saving users time and traffic costs and improving the user experience.
  • the related information may further include: user data of the backed up application.
  • the application server 102 restores the backed up application, in order to ensure that the user data is still ok, there are two implementation manners:
  • Implementation 1 The application server selects the latest version compatible with the user data from the found applications, and then sends an installation package of the latest version of the application compatible with the user data to the second terminal 200. That is, in this implementation, the application version is selected for the second terminal 200 according to the user data as a standard, so that the second terminal 200 can be compatible with the previously backed up user data after installing the restored application. In this implementation, the latest version of the application that is compatible with user data may be the backed up application.
  • the application server 102 selects the latest version of the application from the found applications, and then determines whether the user data is compatible with the latest version of the application; if not, the user data is Translating the data format into a data format matching the latest version of the application, and transmitting the converted user data and the installation package of the latest version of the application to the second terminal 200; otherwise, directly The installation package of the latest version of the application is sent to the second terminal 200. That is, in this implementation manner, the latest version of the application is guaranteed to be sent to the second terminal 200. In order to ensure that the user data backed up by the user is available, the format of the user data is changed to be compatible with the latest version of the application.
  • the storage server 106 is configured to store data backed up by the user, i.e., in the alternative embodiment, the storage server 106 is for storage use only.
  • the backup server 104 is configured to process a transaction related to the backup.
  • the second terminal 200 is further configured to send a second backup restore request to the backup server 104, requesting
  • the backup application 104 is configured to determine whether an installation package of the backed up application is stored in the storage server 106, and if not stored in the storage server 106, the backup server 104 acquires the backup Information related to the application, and the related information of the backed up application is returned to the second terminal 200; the second terminal 200 is further configured to receive related information of the backed up application, and receive the related information After the related information, the first backup restore request is sent to the application server 102.
  • the backup server 104 may store a list, which may be established when the user backs up the application, where the index information of the application uploaded by the user may be recorded, and the index information includes The identification information of the backed up application, the version information of the backed up application, and whether the installed package of the backed up application is stored in the storage server's identification information, and the installation of the backup application
  • the index information may further include an address in which the installation package of the backup application is stored at the address of the storage server, and a user data of the application that is backed up by the user uploaded data.
  • the index information may further include that the user data of the backed up application is stored at an address of the storage server, or the user data of the backed up application may also be stored in the backup server 104 as part of the index information.
  • the specific embodiment is not limited. Through this optional
  • the determining, by the backup server 104, whether the installation package of the backup application is stored in the storage server 106 may include: the backup server 104 obtains Index information of the backed up application recorded when backing up the backed up application, wherein the index information includes: identification information of the backed up application, version information of the backed up application, and Whether the installation package of the backed up application is stored in the storage Identification information of the server; determining, according to the index information, that an installation package of the backed up application is not stored in the storage server 106.
  • the second terminal 200 may carry the identity authentication information in the second backup restore request when sending the second backup restore request to the backup server 104, or send the first Before the backup request is restored, the authentication information is sent to the backup server 104, and the backup server 104 checks the identity authentication information. After the verification is passed, the backup server 104 interacts with the second terminal 200, for example, pushes the client. Backup page of the backup application, etc.
  • the ID card authentication information may be obtained by the second terminal 200 from the ID server 108.
  • the second terminal 200 may provide the user ID information to the ID server 108, and the ID server 108 receives the user's request.
  • An authentication code ie, identity authentication information
  • the second terminal 200 acquires the identity verification code, and the second terminal 200 sends the identity verification code to the backup server 104 before the second backup restoration request or the second backup restoration request.
  • the backup server 104 performs the verification of the identity verification code
  • the backup server may perform an interaction with the ID server to verify whether the identity verification code is valid, and the verification process is completed.
  • the specific verification process is not limited in this embodiment.
  • the second terminal 200 when the second terminal 200 uploads the backup application, the second terminal 200 sends a query request to the application server 102, where the query request carries the identification information of the application to be backed up, and the application server 102 After receiving the request, the query is performed according to the identifier information, and the query result is returned to the second terminal 200.
  • the second terminal 200 receives the query request response returned by the application server 102, where the query request response carries an indication to be backed up. Whether the installation package of the application is stored in the indication information on the application server 102.
  • the second terminal 200 is configured to upload the installation package of the first application to be backed up stored on the application server 102 to the backup server 104 according to the foregoing instruction information, and upload related information of the first application to the backup service. And installing the installation package of the second application to be backed up on the application server 102 and the related information of the second application to the backup server 104. That is, for the installation package not having the second application stored in the application server 102, the second terminal 200 uploads the installation package and related information of the application to the backup server 104. With this optional implementation, it is ensured that only applications not included in the application server 102 are uploaded during backup to save backup time while ensuring effective backup.
  • FIG. 3 is a schematic structural diagram of a backup system according to the embodiment. As shown in FIG. 3, the backup system provided in this embodiment adds a second terminal 300 to the first embodiment.
  • the first terminal 100 is configured to upload a backup data packet to the backup server 104; the second terminal 300 is configured to send a data restoration request to the backup server 104 to request the backup data packet; and the backup server 104 is configured to receive
  • the backup data packet uploaded by the first terminal 100 and the backup data is extracted from the backup data packet according to the data format used by the first terminal 100, and then the extracted backup data is rewritten according to the data format used by the second terminal 300.
  • the restored data packet is obtained, the restored data packet is returned to the second terminal 300, and the second terminal 300 receives the restored data packet returned by the backup server 104. That is, in the present embodiment, the data in the restored data packet is the same as the data in the backup data packet, and the only difference is the data format.
  • the backup server 104 After receiving the backup data packet uploaded by the first terminal 100, the backup server 104 extracts the backup data from the backup data packet according to the data format used by the first terminal 100, and sends the backup data to the second terminal.
  • the extracted data is rewritten according to the data format used by the second terminal 300, and the rewritten data packet is transmitted to the second terminal 300, so that the downloaded backup data can be identified by using the second terminal 300. Furthermore, the problem that the restored data existing in the backup and restore of the mobile terminal is unrecognizable in the prior art is solved, the use of the user is ensured, and the user experience is improved.
  • the backup server 104 may be receiving the first After the backup data packet uploaded by the terminal 100, the backup data is extracted from the backup data packet, or after receiving the data restoration request sent by the second terminal 300, the backup data may be extracted from the backup data packet.
  • the embodiment is not limited.
  • the backup server 104 may save the extracted data in a preset format, for example, The backup server 104 can save the extracted backup data according to the format of the system in which the backup server 104 is located.
  • the server of the 360 mobile assistant can save the extracted backup data in the format used by the 360 mobile assistant.
  • the address book format used by the first terminal 100 is as shown in Table 1
  • the address book format used by the second terminal 300 is as shown in Table 2.
  • the backup data packet uploaded by the first terminal 100 is the contact information saved in the address book format of the Huawei mobile phone.
  • the backup server 104 removes the packet header according to the address book format shown in Table 1, and contacts each contact. In the name, phone, and address corresponding fields, extract the name, phone number, and address of the backup contact, and then fill in the corresponding fields in the address book format shown in Table 2, plus the header and table shown in Table 2. At the end of the package, you get the restore packet.
  • the first terminal 100 needs to log in to the backup server 104 before uploading the backup data packet. Before the login to the backup server 104, in order to ensure the security of the user's account, the malicious attack is avoided.
  • the server 104 may send a verification code to the first terminal 100.
  • the first terminal 100 carries the verification code when logging in, and the backup server 104 verifies the verification code. After the verification is passed, the first terminal 100 is allowed to log in. Therefore, in the optional implementation manner, the first terminal 100 is further configured to send a verification code acquisition request to the backup server 104, where the verification code acquisition request carries a user identifier (UID), for example, may be in a login interface of the client.
  • UID user identifier
  • a button for obtaining a verification code is set, and after the user inputs the user identification, the user clicks the button to send a verification code acquisition request to the backup server 104.
  • the backup server 104 is further configured to receive the verification code acquisition request, generate a first verification code according to the user identifier carried in the verification code acquisition request, and send the first verification code to the first terminal 100.
  • the first terminal 100 is further configured to receive and obtain a first verification code, and then send a login request to the backup server 104, where the login request carries the first verification code and the user identifier; the backup server 104 is further configured to receive the And the first verification code carried in the login request is verified by the login request sent by the first mobile terminal, and after the verification is passed, the login success response is returned to the first mobile terminal.
  • the identity of the user who uploaded the backup data packet can be ensured, and the backup data packet uploaded by the user can be conveniently managed.
  • the second terminal 300 also needs to log in to the backup server 104 before sending the data restoration request.
  • the malicious server can send a verification code to the second terminal 300.
  • the second terminal 300 carries the verification code when logging in.
  • the backup server 104 verifies the verification code and verifies the verification code.
  • the second terminal 300 is allowed to log in. Therefore, in the optional implementation manner, the second terminal 300 is further configured to send a verification code acquisition request to the backup server 104, where the verification code acquisition request carries a user identifier (UID), for example, may be in a login interface of the client.
  • UID user identifier
  • a button for obtaining a verification code is set, and after the user inputs the user identification, the user clicks the button to send a verification code acquisition request to the backup server 104.
  • the backup server 104 is further configured to receive the verification code acquisition request, generate a second verification code according to the user identifier carried in the verification code acquisition request, and send the second verification code to the second terminal 300.
  • the second terminal 300 is further configured to receive and obtain a second verification code, and then send a login request to the backup server 104, where the login request carries the second verification code and the user identifier; the backup server 104 is further configured to receive the And the second verification terminal carries the login request, and the second verification code carried in the login request is verified, and after the verification is passed, the login success response is returned to the second mobile terminal.
  • the user requesting the restoration is the same user as the user uploading the backup data packet, and the backup data uploaded by the user is secured.
  • the backup server 104 may send a verification code to the first terminal 100 and/or the second terminal 300 by using a short message, that is, the backup server 104 according to the user identifier, to the first A terminal 100 and/or a second terminal 300 sends a short message, wherein the short message carries the verification code.
  • the first terminal 100 and/or the second terminal 300 can automatically obtain the verification code in the short message.
  • the first terminal 100 and/or the second terminal 300 can automatically obtain the verification code in the short message by the following steps:
  • Step 1 Acquire a platform signature of the operating system of the first terminal 100 and/or the second terminal 300.
  • the first terminal 100 and/or the second terminal 300 can run an executable file injected in advance in a system server (SystemServer) component of the operating system to acquire a platform signature, that is, inject an executable file into a SystemServer component of the operating system, By running the executable, you can get the platform signature of the operating system.
  • the first terminal 100 and/or the second terminal 300 may also be obtained by using some procedures of the partition by brushing in a recovery partition.
  • High privilege specifically, a module can be set in the ramdisk to scan the operating system partition, and the platform signature of the operating system is scanned after scanning.
  • Step 2 Acquire permission to read the content of the short message based on the obtained platform signature.
  • the application may be re-signed by using the platform signature of the obtained operating system, so that the application obtains the corresponding authority of the operating system.
  • the corresponding permission refers to obtaining the read short message content. permission).
  • Step 3 Acquire a verification code in the short message received by the first terminal 100 and/or the second terminal 300 based on the acquired permission to read the content of the short message.
  • the first terminal 100 and/or the second terminal 300 may invoke an application program interface (API) for acquiring short message content based on the acquired rights, from the database of the first terminal 100 and/or the second terminal 300.
  • API application program interface
  • the content of the short message received by the first terminal 100 and/or the second terminal 300 is read, and then the verification code is obtained from the content of the short message.
  • the API for obtaining the content of the short message belongs to a high-level API, and the application having the system permission must invoke such an API.
  • the corresponding permission is obtained through the platform signature to invoke the API. Get the content of the short message.
  • the first terminal 100 and/or the second terminal 300 may also input the obtained verification code into a dialog box that needs to fill in the verification code, thereby implementing automatic filling of the short message verification code and improving the user experience.
  • the backup server 104 may send the first terminal 100 and/or the second terminal 300 to the first terminal 100 and/or the second terminal 300. Returns a successful login response. Specifically, the backup server 104 can push the display interface to the first terminal 100 and/or the second terminal 300.
  • the first terminal 100 may be a display interface of certain functions that the user opens in the backup server 104, and may also include settings saved by the user in the backup server 104, which may be determined according to the actual application system;
  • the display interface of the second terminal 300 can display related information of the backup data corresponding to the user identifier, and the user can select backup data that needs to be restored, and submit a data restoration request to the backup server 104 to request backup data that needs to be restored.
  • the server side may also divide the backup server 104 into multiple different types according to functions.
  • the server may generate a verification code for the user when the user logs in by an ID server 108, and send it to the corresponding mobile terminal, and the backup server processes the backup request and the restore request sent by the mobile terminal, and the backup data uploaded by the user may be stored.
  • the specific embodiment is not limited.
  • the first terminal 100 and the second terminal 300 are different mobile terminals, and the first terminal 100 and the second terminal 300 may be the same type of mobile terminal, or
  • the backup server 104 may first determine whether the data format used by the second terminal 300 is the same as the data format used by the first terminal 100, and is different. In the case of the second terminal 300, the backup data packet uploaded by the first terminal 100 is directly sent to the second terminal 300.
  • the backup server 104 may rewrite the backed up data to the data format used by the system where the backup server 104 is located, and receive the data restoration request sent by the second terminal 300. At this time, the backed up data is rewritten in accordance with the data format used by the second terminal 300.
  • the application scenario of the technical solution provided by this embodiment can be extended by using the optional implementation manner.
  • the backup data includes but is not limited to at least one of the following: contact information, short message, call record, and picture.
  • FIG. 4 is a schematic structural diagram of a backup system according to the embodiment. As shown in FIG. 4, the backup system provided in this embodiment adds a synchronization server 402 and a second terminal 400 to the first embodiment.
  • the first terminal 100 is configured to: when the content of the preset class information is changed, send the content of the preset class information that is changed to the synchronization server 402; the synchronization server 402 acquires the content that occurs in the first terminal. And changing the content of the preset class information, detecting whether the content of the preset class information stored in the second terminal 400 registered with the same user identifier of the first terminal 100 is consistent with the acquired content; In a case where the content of the preset class information stored in the second terminal 400 is inconsistent with the acquired content, the content of the preset class information stored in the second terminal 400 is changed, so that the second The content of the preset class information stored in the terminal 400 is consistent with the obtained content.
  • the second terminal 400 is configured to log in using the same user identifier as the first terminal 100, and receive the change of the synchronization server 402.
  • the synchronization server 402 acquires the content of the preset class information that has changed, and then detects the same user identifier as the first terminal 100. Whether the content of the preset type information of the second terminal 400 is consistent with the obtained content, and if not, the synchronization is performed, thereby solving the problem that the other terminals of the same user in the prior art cannot obtain the user's time on another terminal. The problem of change has improved the user experience.
  • the synchronization server 402 may be different according to the difference between the content of the preset class information in the first terminal 100 and the content of the preset class information in the second terminal 400, and the second terminal.
  • the content of the preset class information stored in 400 For example, if it is determined that the acquired content is added to the content of the preset class information stored in the second terminal 400, the added content and the format of the preset class information are sent to The second terminal 400, for example, the first terminal 100 receives a new short message, and the synchronization server 402 finds that the second terminal 400 does not have the short message, and then sends the short message to the second terminal 400, so that the second terminal 400 The terminal 400 also has the message.
  • an instruction is sent to the second terminal 400 to instruct the second terminal 400
  • the added content stored in the second terminal 400 is deleted.
  • the synchronization server 402 can send an instruction to the second terminal 400 to indicate the second terminal 400 by comparing and finding that the second terminal 400 has the short message. Delete the message.
  • the second terminal 400 deletes the corresponding content according to the instruction of the synchronization server 402, and if the user does not allow, for example, the user setting does not allow the synchronization to delete the short message saved in the local machine, the second terminal 400 is When the instruction sent by the synchronization server 402 is received, the message that is more than the first terminal 100 is not deleted.
  • the synchronization server 402 may time-triggly detect the content and the acquired location of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal. Whether the content is consistent, for example, the synchronization server 402 can be set to detect in a certain period (for example, every 15 minutes), and when the predetermined period arrives, the synchronization server 402 detects the use of the second terminal registered with the same user identifier as the first terminal. Whether the stored content of the preset class information is consistent with the obtained content.
  • the event triggering may be consistent with whether the content of the preset class information stored in the second terminal that is registered with the same user identifier of the first terminal is consistent with the obtained content, for example, may be detected. Detecting, by using the second terminal that is the same user ID as the first terminal, the content of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal, and whether the obtained content is obtained. Consistent. There may be other triggering modes in the specific implementation process, which is not limited in this embodiment.
  • the preset class information includes but is not limited to one of the following: a short message, a call record, a picture, and contact information.
  • the first terminal 100 may send a notification to the synchronization server 402 after capturing a photo
  • the synchronization server 402 acquires the photo in the first terminal 100, and then detects the photo in the first terminal 100 and the second terminal 400. Whether the photos are consistent or not, and the result of the detection is that the newly taken photo is not present in the second terminal 400, the synchronization server 402 transmits the newly taken photo to the second terminal 400 and stores it in the album of the second terminal 400.
  • the update is synchronized to the second terminal 400, so that the user can obtain the updated information through the second terminal 400 in time, thereby improving the user.
  • the update is synchronized to the second terminal 400, so that the user can obtain the updated information through the second terminal 400 in time, thereby improving the user.
  • FIG. 5 is a schematic flowchart diagram of a backup method according to an embodiment of the present invention, which corresponds to the backup system shown in Embodiment 1 above. Referring to FIG. 5, the method may at least include the following steps S502 to S508.
  • Step S502 The first terminal sends a query request to the application server when the application is backed up, where the query request carries the identifier information of the application to be backed up;
  • Step S504 The application server receives the query request sent by the first terminal, and returns a query request response to the first terminal, where the query request response carries indication information indicating whether the installation package of the application to be backed up is stored on the application server. ;
  • Step S506 the first terminal, according to the indication information, prohibits the installation package of the first application to be backed up, which is stored on the application server, from being uploaded to the backup server, and uploading related information of the first application to the backup server;
  • Step S508 the backup server saves the first association relationship between the related information uploaded by the first terminal and the user identifier used when the first terminal logs in.
  • the terminal when the application is backed up, the terminal first queries whether the application to be backed up is stored in the application server. If the storage is available, the terminal does not upload the installation package of the application to be backed up to the backup server, and only the application is used. The related information is uploaded to the backup server, which reduces the amount of data uploaded, shortens the time required for application backup, saves data fluency of application backup, and improves user experience.
  • the first terminal 100 may further install the installation package of the second application to be backed up on the application server 102 and the second application according to the indication information.
  • the related information is uploaded to the backup server 104.
  • the backup server 104 sends the installation package of the second application to the storage server 106 for saving, and saves related information of the second application and the second application.
  • the second association relationship between the storage address of the storage server and the user identifier is installed; the storage server 106 saves the installation package of the second application. That is, for the second application in which the installation package is not stored in the application server 102, the first terminal 100 uploads the installation package and related information of the application to the backup server 104.
  • the related information includes: version information and verification data.
  • version information When restoring, you can refer to the version information of the backup to select the appropriate version.
  • the integrity check of the installation package of the application uploaded by the terminal may be performed to ensure the data integrity of the uploaded installation package, and the restored application may also be restored according to the verification data during backup and restore.
  • the program performs an integrity check.
  • the related information may further include: user data; the backup server 104 sends the user data to the storage server 106, and saves the user data in the storage address of the storage server to the first association relationship. Or in the second association. That is, the user backs up the user data generated by the application to be backed up, for example, the chat record generated by the user using QQ, the chat record generated by the user using WeChat, and the information shared by the circle of friends.
  • the corresponding user data can be restored to the user together to improve the user experience.
  • the backup method corresponds to the backup system shown in FIG. 2, which adds the second terminal 200 to the first embodiment.
  • the second terminal 200 and the first terminal 100 may be the same terminal, or may be different terminals, which is not limited in this embodiment.
  • the second terminal 200 can request the backup application 104 for the backed up application.
  • the second terminal 200 may send a first backup and restore request carrying the related information of the backed up application to the application server 102, and request to download the backed up application, where the related information includes: The identification information of the backed up application and the version information of the backed up application.
  • the application server 102 receives a first backup restore request that is sent by the second terminal 200 and carries the related information of the backup application, where the related information includes: the identifier information of the backup application and the backup application.
  • the version information searching for the application saved by the application server 102 according to the identification information; and determining whether the found application has a version updated than the version of the backed application; if yes, searching
  • the installation package of the new version of the application is sent to the second terminal 200.
  • the application server 102 when receiving the backup and restore request of the second terminal 200, the application server 102 searches whether the local version of the application that is requested to be restored is updated (or may also be called higher). The version, if any, sends the found installation package of the new version of the application to the second terminal 200, so that the second terminal 200 can obtain the new version of the application when the application is restored, avoiding the user being After the backup and restore, you need to download the new version of the application again, saving users time and traffic costs and improving the user experience.
  • the related information may further include: user data of the backed up application.
  • the application server 102 restores the backed up application, in order to ensure that the user data is still ok, there are two implementation manners:
  • Implementation 1 The application server selects the latest version compatible with the user data from the found applications, and then sends an installation package of the latest version of the application compatible with the user data to the second terminal 200. That is, in this implementation, the application version is selected for the second terminal 200 according to the user data as a standard, so that the second terminal 200 can be compatible with the previously backed up user data after installing the restored application. In this implementation, the latest version of the application that is compatible with user data may be the backed up application.
  • the application server 102 selects the latest version of the application from the found applications, and then determines whether the user data is compatible with the latest version of the application; if not, the user data is Translating the data format into a data format matching the latest version of the application, and transmitting the converted user data and the installation package of the latest version of the application to the second terminal 200; otherwise, the installation package of the latest version of the application is directly sent to the second terminal 200. That is, in this implementation manner, the latest version of the application is guaranteed to be sent to the second terminal 200. In order to ensure that the user data backed up by the user is available, the format of the user data is changed to be compatible with the latest version of the application.
  • the backup method corresponds to the backup system shown in FIG. 3, which adds a second to the first embodiment. Terminal 300.
  • the first terminal 100 uploads a backup data packet to the backup server 104; the second terminal 300 sends a data restoration request to the backup server 104 to request the backup data packet; and the backup server 104 receives the upload of the first terminal 100.
  • the restored data packet is returned to the second terminal 300, and the second terminal 300 receives the restored data packet returned by the backup server 104. That is, in the present embodiment, the data in the restored data packet is the same as the data in the backup data packet, and the only difference is the data format.
  • the backup method corresponds to the backup system shown in FIG. 4, which adds the synchronization server 402 and the second terminal 400 to the first embodiment.
  • the first terminal 100 is configured to: when the content of the preset class information is changed, send the content of the preset class information that is changed to the synchronization server 402; the synchronization server 402 acquires the content that occurs in the first terminal. And changing the content of the preset class information, detecting whether the content of the preset class information stored in the second terminal 400 registered with the same user identifier of the first terminal 100 is consistent with the acquired content; In a case where the content of the preset class information stored in the second terminal 400 is inconsistent with the acquired content, the content of the preset class information stored in the second terminal 400 is changed, so that the second The content of the preset class information stored in the terminal 400 is consistent with the obtained content.
  • the second terminal 400 is configured to log in using the same user identifier as the first terminal 100, and receive the change of the synchronization server 402.
  • the synchronization server 402 acquires the content of the preset class information that has changed, and then detects the same user identifier as the first terminal 100. Whether the content of the preset type information of the second terminal 400 is consistent with the obtained content, and if not, the synchronization is performed, thereby solving the problem that the other terminals of the same user in the prior art cannot obtain the user's time on another terminal. The problem of change has improved the user experience.
  • the synchronization server 402 may be different according to the difference between the content of the preset class information in the first terminal 100 and the content of the preset class information in the second terminal 400, and the second terminal.
  • the content of the preset class information stored in 400 For example, if it is determined that the acquired content is added to the content of the preset class information stored in the second terminal 400, the added content and the format of the preset class information are sent to The second terminal 400, for example, the first terminal 100 receives a new short message, and the synchronization server 402 finds that the second terminal 400 does not have the short message, and then sends the short message to the second terminal 400, so that the second terminal 400 The terminal 400 also has the message.
  • an instruction is sent to the second terminal 400 to instruct the second terminal 400
  • the added content stored in the second terminal 400 is deleted.
  • the synchronization server 402 can send an instruction to the second terminal 400 to indicate the second terminal 400 by comparing and finding that the second terminal 400 has the short message. Delete the message.
  • the second terminal 400 deletes the corresponding content according to the instruction of the synchronization server 402, and if the user does not allow, for example, the user setting does not allow the synchronization to delete the text message saved in the machine, When the second terminal 400 receives the indication sent by the synchronization server 402, the second terminal 400 does not delete the short message that is larger than the first terminal 100.
  • the synchronization server 402 can time trigger detection Whether the content of the preset class information stored in the second terminal that is logged in with the same user identifier of the first terminal is consistent with the obtained content.
  • the synchronization server 402 can be set to detect in a certain period (for example, every 15 minutes), and when the predetermined period arrives, the synchronization server 402 detects the storage stored in the second terminal registered with the same user identifier as the first terminal. Whether the content of the preset class information is consistent with the obtained content.
  • the event triggering may be consistent with whether the content of the preset class information stored in the second terminal that is registered with the same user identifier of the first terminal is consistent with the obtained content, for example, may be detected. Detecting, by using the second terminal that is the same user ID as the first terminal, the content of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal, and whether the obtained content is obtained. Consistent. There may be other triggering modes in the specific implementation process, which is not limited in this embodiment.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the functionality of some or all of the components of the backup system in accordance with embodiments of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • Figure 6 illustrates a computing device that can implement a backup method.
  • the computing device conventionally includes a processor 610 and a computer program product or computer readable medium in the form of a memory 620.
  • the memory 620 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
  • Memory 620 has a memory space 630 for program code 631 for performing any of the method steps described above.
  • storage space 630 for program code may include various program code 631 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • the computer program product includes program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • the computer program product is typically a portable or fixed storage unit as described with reference to FIG.
  • the storage unit may have storage segments, storage spaces, and the like that are similarly arranged to memory 620 in the computing device of FIG.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit includes computer readable code 631', ie, code readable by a processor, such as 610, that when executed by a computing device causes the computing device to perform each of the methods described above step.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention provides a backup system and a method. The backup system comprises: a first terminal configured to send a query request to an application server when backing up an application, wherein the query request carries identification information of the application to be backed up; an application server configured to receive the query request sent from the first terminal, and return an query request response to the first terminal, wherein the query request response carries indication information indicating whether an installation package of the application to be backed up can be stored in the application server; and the first terminal is further prohibited, according to the indication information, from uploading, to a backup server, an installation package of a first application to be backed up that has been stored in the application server, and upload related information of the first application to the backup server; and a backup server configured to store a first association relationship between the related information uploaded by the first terminal and user identification used when the first terminal logs in.

Description

一种备份***及方法Backup system and method 技术领域Technical field
本发明涉及通信及互联网应用技术领域,特别是涉及一种备份***及方法。The present invention relates to the field of communication and Internet application technologies, and in particular, to a backup system and method.
背景技术Background technique
在相关技术中,在终端的操作***更新或刷机时,为了保证在操作***更新或刷机可以快速的安装之前安装的应用程序(APP),在操作***更新或刷机前,可以将应用程序备份到服务器中,在操作***更新或刷机之后,再从服务器将备份的应用程序还原到终端。In the related art, when the operating system of the terminal is updated or flashed, in order to ensure that the application (APP) installed before the operating system update or flashing can be quickly installed, the application can be backed up before the operating system is updated or flashed. In the server, after the operating system is updated or flashed, the backed up application is restored from the server to the terminal.
在相关技术中,在进行应用程序备份时,通常采用的方案是将应用程序的所有数据包(包括安装包,例如,Android***中的apk数据包)上传到服务器,在还原时,再从服务器下载到终端进行安装。采用这种备份方法,由于应用程序的安装包的数据量比较大,如果一次备份的应用程序较多,则要占用很上的上传时间以及数据流量,降低了用户的体验。In the related art, when performing application backup, a commonly adopted scheme is to upload all data packets of an application (including an installation package, for example, an apk data package in an Android system) to a server, and then restore the server from the server. Download to the terminal for installation. With this backup method, since the amount of data of the installation package of the application is relatively large, if there are many applications for backing up at one time, it takes up a lot of upload time and data traffic, which reduces the user experience.
发明内容Summary of the invention
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的备份***及方法。In view of the above problems, the present invention has been made in order to provide a backup system and method that overcomes the above problems or at least partially solves the above problems.
依据本发明的一方面,提供了一种备份***,包括:第一终端,用于在备份应用程序时,向应用服务器发送查询请求,其中,所述查询请求中携带了待备份的应用程序的标识信息;所述应用服务器,用于接收第一终端发送的查询请求,并向所述第一终端返回查询请求应答,其中,所述查询请求应答中携带有指示所述待备份的应用程序的安装包是否存储在所述应用服务器上的指示信息;所述第一终端还用于根据所述指示信息,禁止将安装包存储在所述应用服务器上的待备份的第一应用程序的安装包上传给备份服务器,将所述第一应用程序的相关信息上传给所述备份服务器;所述备份服务器,用于保存所述第一终端上传的相关信息与所述第一终端登录时使用的用户标识的第一关联关系。According to an aspect of the present invention, a backup system is provided, including: a first terminal, configured to send a query request to an application server when the application is backed up, wherein the query request carries an application to be backed up The application server is configured to receive a query request sent by the first terminal, and return a query request response to the first terminal, where the query request response carries an application indicating the to be backed up Whether the installation package is stored on the application server; the first terminal is further configured to, according to the indication information, prohibit the installation package of the first application to be backed up, where the installation package is stored on the application server Uploading to the backup server, uploading related information of the first application to the backup server; the backup server is configured to save related information uploaded by the first terminal and a user used when the first terminal logs in The first association of the identity.
依据本发明的另一方面,还提供了一种备份方法,包括:According to another aspect of the present invention, a backup method is also provided, including:
第一终端在备份应用程序时,向应用服务器发送查询请求,其中,所述查询请求中携带了待备份的应用程序的标识信息;The first terminal sends a query request to the application server when the application is backed up, where the query request carries the identification information of the application to be backed up;
所述应用服务器接收第一终端发送的查询请求,并向所述第一终端返回查询请求应答,其中,所述查询请求应答中携带有指示所述待备份的应用程序的安装包是否存储在所述应用服务器上的指示信息;The application server receives the query request sent by the first terminal, and returns a query request response to the first terminal, where the query request response carries an installation package indicating whether the application to be backed up is stored in the Describe the information on the application server;
所述第一终端根据所述指示信息,禁止将安装包存储在所述应用服务器上的待备份的第一应用程序的安装包上传给备份服务器,将所述第一应用程序的相关信息上传给所述备份服务器;The first terminal, according to the indication information, prohibits uploading an installation package of the first application to be backed up stored on the application server to the backup server, and uploading related information of the first application to the The backup server;
所述备份服务器保存所述第一终端上传的相关信息与所述第一终端登录时使用的用户标识的第一关联关系。The backup server saves a first association relationship between the related information uploaded by the first terminal and the user identifier used when the first terminal logs in.
根据本发明的又一方面,提供了一种计算机程序,其包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行根据上文所述的备份方法。According to still another aspect of the present invention, a computer program is provided, comprising computer readable code that, when executed on a computing device, causes the computing device to perform a backup method according to the above .
根据本发明的再一方面,提供了一种计算机可读介质,其中存储了上述的计算机程序。According to still another aspect of the present invention, a computer readable medium storing the above computer program is provided.
本发明的有益效果包括:Advantageous effects of the present invention include:
本发明实施例中,在备份应用程序时,终端先查询应用服务器中是否存储有待 备份的应用程序,如果存储有,则终端不向备份服务器上传待备份的应用程序的安装包,只将应用程序的相关信息上传给备份服务器,减小了上传的数据量,缩短了应用程序备份所需的时间,节约了应用程序备份所花费的数据流利,提高了用户体验。In the embodiment of the present invention, when the application is backed up, the terminal first queries whether the application server stores the pending The backup application, if stored, the terminal does not upload the installation package of the application to be backed up to the backup server, and only uploads the relevant information of the application to the backup server, which reduces the amount of uploaded data and shortens the application backup. The time required saves the data fluency of the application backup and improves the user experience.
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。The above description is only an overview of the technical solutions of the present invention, and the above-described and other objects, features and advantages of the present invention can be more clearly understood. Specific embodiments of the invention are set forth below.
附图说明DRAWINGS
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:Various other advantages and benefits will become apparent to those skilled in the art from a The drawings are only for the purpose of illustrating the preferred embodiments and are not to be construed as limiting. Throughout the drawings, the same reference numerals are used to refer to the same parts. In the drawing:
图1示出了根据本发明实施例一的备份***的架构示意图;1 is a schematic structural diagram of a backup system according to Embodiment 1 of the present invention;
图2示出了根据本发明实施例二的备份***的架构示意图;2 is a schematic structural diagram of a backup system according to Embodiment 2 of the present invention;
图3示出了根据本发明实施例三的备份***的架构示意图;3 is a schematic structural diagram of a backup system according to Embodiment 3 of the present invention;
图4示出了根据本发明实施例四的备份***的架构示意图;4 is a schematic structural diagram of a backup system according to Embodiment 4 of the present invention;
图5示出了根据本发明实施例五的备份方法的流程示意图;FIG. 5 is a schematic flowchart diagram of a backup method according to Embodiment 5 of the present invention; FIG.
图6示意性地示出了用于执行根据本发明的备份方法的计算设备的框图;以及Figure 6 is a schematic block diagram showing a computing device for performing a backup method in accordance with the present invention;
图7示意性地示出了用于保持或者携带实现根据本发明的备份方法的程序代码的存储单元。Fig. 7 schematically shows a storage unit for holding or carrying program code implementing a backup method according to the present invention.
具体实施方式detailed description
下面结合附图和具体的实施方式对本发明作进一步的描述。The invention is further described below in conjunction with the drawings and specific embodiments.
实施例一Embodiment 1
为解决上述技术问题,本发明实施例提供了一种备份***。图1示出了根据本发明一实施例的备份***的架构示意图。参见图1,该备份***至少包括:第一终端100、应用服务器102和备份服务器104。To solve the above technical problem, an embodiment of the present invention provides a backup system. FIG. 1 is a block diagram showing the architecture of a backup system according to an embodiment of the invention. Referring to FIG. 1, the backup system includes at least: a first terminal 100, an application server 102, and a backup server 104.
其中,第一终端100,用于在备份应用程序时,向应用服务器102发送查询请求,其中,所述查询请求中携带了待备份的应用程序的标识信息;所述应用服务器102,用于接收第一终端100发送的查询请求,并向所述第一终端100返回查询请求应答,其中,所述查询请求应答中携带有指示所述待备份的应用程序的安装包是否存储在所述应用服务器102上的指示信息;所述第一终端100还用于根据所述指示信息,禁止将安装包存储在所述应用服务器102上的待备份的第一应用程序的安装包上传给备份服务器104,将所述第一应用程序的相关信息上传给所述备份服务器104;所述备份服务器104,用于保存所述第一终端100上传的相关信息与所述第一终端100登录时使用的用户标识的第一关联关系。The first terminal 100 is configured to send a query request to the application server 102 when the application is backed up, where the query request carries the identification information of the application to be backed up; the application server 102 is configured to receive a query request sent by the first terminal 100, and returning a query request response to the first terminal 100, wherein the query request response carries an installation package indicating whether the application to be backed up is stored in the application server The first terminal 100 is further configured to: upload, according to the indication information, an installation package of the first application to be backed up, where the installation package is stored on the application server 102, to the backup server 104, Uploading the related information of the first application to the backup server 104. The backup server 104 is configured to save the related information uploaded by the first terminal 100 and the user identifier used when the first terminal 100 logs in. The first association.
本发明实施例中,第一终端100在备份应用程序时,先查询待备份的应用程序是否存储应用服务器102中,对于安装包存储在应用服务器102的第一应用程序,则不上传该应用程序的安装包到备份服务器104,只将该应用程序的相关信息上传到备份服务器104,从而减少了上传的数据量,节约了备份的时间,提高了用户体验。In the embodiment of the present invention, when the application is backed up, the first terminal 100 first queries whether the application to be backed up is stored in the application server 102, and does not upload the application when the first application of the installation package is stored in the application server 102. The installation package is sent to the backup server 104, and only the related information of the application is uploaded to the backup server 104, thereby reducing the amount of uploaded data, saving backup time and improving the user experience.
在本发明实施例的一个可选实施方案中,如图1所示,所述***还可以包括:存储服务器106,所述第一终端100还用于根据所述指示信息,将安装包没有存储在所述应用服务器102上的待备份的第二应用程序的安装包以及所述第二应用程序的相关信息上传给所述备份服务器104;所述备份服务器104还用于将所述第二应用程序的安装包发送给所述存储服务器106保存,并保存所述第二应用程序的相关信息、所述第二应用程序的安装包在存储服务器的存储地址与所述用户标识的第二关联关 系;所述存储服务器106,用于保存所述第二应用程序的安装包。即对于安装包没有存储在应用服务器102的第二应用程序,第一终端100将该应用程序的安装包及相关信息上传给备份服务器104。通过该可选实施方式,可以保证在备份时只上传应用服务器102中没有的应用程序,以在保证有效备份的同时,节约备份时间。In an optional implementation of the embodiment of the present invention, as shown in FIG. 1 , the system may further include: a storage server 106, where the first terminal 100 is further configured to store the installation package according to the indication information. An installation package of the second application to be backed up on the application server 102 and related information of the second application are uploaded to the backup server 104; the backup server 104 is further configured to use the second application The installation package of the program is sent to the storage server 106 for saving, and the related information of the second application is saved, and the storage package of the second application is stored in the second association of the storage address of the storage server and the user identifier. The storage server 106 is configured to save an installation package of the second application. That is, for the second application in which the installation package is not stored in the application server 102, the first terminal 100 uploads the installation package and related information of the application to the backup server 104. With this optional implementation, it is ensured that only applications not included in the application server 102 are uploaded during backup to save backup time while ensuring effective backup.
在实际应用中,第一终端100可能一次性需要备份多个应用程序,查询请求中可以包括该多个应用程序的标识信息,应用服务器102可以同时返回指示该多个应用程序的安装包是否存储在应用服务器10的指示信息,对于安装包存储在应用服务器102的第一应用程序,第一终端100只将这类应用程序的相关信息上传给备份服务器104,不将这类应用程序的安装包上传至备份服务器104。对于安装包没有存储在应用服务器102的第二应用程序,第一终端100将该应用程序的安装包及相关信息上传给备份服务器104。从而可以保证在备份时只上传应用服务器102中没有的应用程序,以在保证有效备份的同时,节约备份时间。In an actual application, the first terminal 100 may need to back up multiple applications at a time, and the query request may include identification information of the multiple applications, and the application server 102 may simultaneously return whether the installation package indicating the multiple applications is stored. In the indication information of the application server 10, for the first application stored in the application server 102 of the installation package, the first terminal 100 only uploads related information of such application to the backup server 104, and does not install the application package of such application. Upload to backup server 104. For the second application in which the installation package is not stored in the application server 102, the first terminal 100 uploads the installation package and related information of the application to the backup server 104. Therefore, it is ensured that only the applications not in the application server 102 are uploaded during the backup, thereby saving the backup time while ensuring effective backup.
在本发明实施例的一个可选实施方案中,所述相关信息包括:版本信息和检验数据。在还原时,可以参考备份的版本信息选择合适的版本。另外,根据校验数据,可以对终端上传的应用程序的安装包进行完整性校验,以保证上传的安装包的数据完整性,在备份还原时,也可以根据该校验数据对还原的应用程序进行完整性校验。In an optional embodiment of the embodiment of the present invention, the related information includes: version information and verification data. When restoring, you can refer to the version information of the backup to select the appropriate version. In addition, according to the verification data, the integrity check of the installation package of the application uploaded by the terminal may be performed to ensure the data integrity of the uploaded installation package, and the restored application may also be restored according to the verification data during backup and restore. The program performs an integrity check.
在本发明实施例的一个可选实施方案中,所述相关信息还可以包括:用户数据;所述备份服务器104还用于将所述用户数据发送给所述存储服务器106保存,将所述用户数据在所述存储服务器的存储地址保存到所述第一关联关系或所述第二关联关系中。即用户使用待备份的应用程序产生的用户数据进行备份,例如,用户使用QQ产生的聊天记录,用户使用微信产生的聊天记录、朋友圈分享的信息等。采用该可选实施方案,在还原应用程序时,可以将相应的用户数据一起还原给用户,提高用户体验。In an optional implementation of the embodiment of the present invention, the related information may further include: user data; the backup server 104 is further configured to send the user data to the storage server 106 to save the user. The data is saved in the first association relationship or the second association relationship at a storage address of the storage server. That is, the user backs up the user data generated by the application to be backed up, for example, the chat record generated by the user using QQ, the chat record generated by the user using WeChat, and the information shared by the circle of friends. With this optional implementation, when the application is restored, the corresponding user data can be restored to the user together to improve the user experience.
在备份还原时,备份服务器104将应用程序的安装包在存储服务器106的存储地址发送给第一终端,第一终端根据该存储地址,可以从存储服务器106中下载该应用程序安装包。或者,备份服务器104也可以根据应用程序的安装包在存储服务器106的存储地址获取应用程序的安装包,在将获取的应用程序的安装包发送给第一终端100,具体本实施例不作限定。At the time of backup and restore, the backup server 104 transmits the installation package of the application to the first terminal at the storage address of the storage server 106, and the first terminal can download the application installation package from the storage server 106 according to the storage address. Alternatively, the backup server 104 may acquire the installation package of the application in the storage address of the storage server 106 according to the installation package of the application, and send the installation package of the obtained application to the first terminal 100, which is not limited in this embodiment.
在具体应用中,对于同一个用户上传的备份信息,备份服务器104可以将终端上传的应用程序的标识信息、相关信息以及安装包的存储地址一起关联保存。In a specific application, for the backup information uploaded by the same user, the backup server 104 may associate the identification information of the application uploaded by the terminal, the related information, and the storage address of the installation package.
在上述可选实施方案中,可选地,在还原时,如果用户备份的应用程序版本不是最新版本,可以将新的版本还原给用户,避免了用户还原后还要更新版本所导致的空口流量消耗,提高用户体验。在这种情况下,如果备份的信息中还包括用户数据,则可以进一步判断备份的用户数据的格式与当前最新版本的应用程序的格式是否匹配,如果不匹配,则还可以进一步将备份的用户数据转换为相应的格式,然后再还原给终端,避免将用户数据还原给用户时由于用户数据的版本与应用程序的版本不一致而导致用户无法查看用户数据的问题。具体可以参见后续实施例二的描述。In the above optional implementation, optionally, when the user is backed up, the version of the application that is backed up is not the latest version, the new version can be restored to the user, thereby avoiding the air interface traffic caused by the version being updated after the user is restored. Consumption, improve the user experience. In this case, if the backed up information further includes user data, it can be further determined whether the format of the backed up user data matches the format of the current latest version of the application, and if not, the user who can back up further The data is converted to the corresponding format and then restored to the terminal, avoiding the problem that the user cannot view the user data because the version of the user data is inconsistent with the version of the application when the user data is restored to the user. For details, refer to the description of the subsequent embodiment 2.
在本发明实施例的一个可选实施方案中,第一终端100启动备份可以是用户手动触发,也可以是事件触发。即第一终端100可以是在接收到输入的备份应用程序的操作请求时,向应用服务器102发送查询请求。具体地,用户可以通过键盘、按键或可控触摸屏输入;或者,第一终端100也可以检测到发生预定的触发事件时,向应用服务器102发送查询请求。触发事件可以由用户预先设定好,例如,用户可以设置在更新***前进行备份,则在需要更新***时,进行应用程序备份。具体的触发事件,可以根据具体情况设置,具体本实施例不作限定。In an optional implementation of the embodiment of the present invention, the first terminal 100 initiates the backup may be manually triggered by the user, or may be triggered by an event. That is, the first terminal 100 may send a query request to the application server 102 upon receiving an operation request of the input backup application. Specifically, the user can input through a keyboard, a button or a controllable touch screen; or the first terminal 100 can also detect that a predetermined trigger event occurs, and send a query request to the application server 102. The trigger event can be preset by the user. For example, the user can set a backup before updating the system, and then perform application backup when the system needs to be updated. The specific trigger event may be set according to a specific situation, which is not limited in this embodiment.
在本发明实施例的一个可选实施方案中,为了保证用户安全,如图1所示,该***还可以包括身份服务器(ID服务器)108,第一终端100还用于向ID服务器发送携带用户标识的登录请求,ID服务器108在接收到用户的请求后,为用户生成一 个身份验证码,并下发给第一终端100。第一终端100在接收到该身份验证码之后,获取该身份验证码,在向应用服务器102发送查询请求时,向应用服务器102提交该身份验证码,应用服务器可以与ID服务器配合实现对该身份验证码的验证,验证通过之后,才允许第一终端100查询应用服务器102中是否保存有待备份的应用程序的安装包,如果验证不通过,则拒绝终端的请求。同样,第一终端100在向备份服务器104上传备份数据时,也需要向备份服务器提交该身份验证码,备份服务器104与ID服务器108配合对该身份验证码进行验证,验证通过之后,才接收第一终端102上传的备份数据,如果验证不通过,则拒绝第一终端100上传的备份数据。In an optional implementation of the embodiment of the present invention, in order to ensure user security, as shown in FIG. 1, the system may further include an identity server (ID server) 108, and the first terminal 100 is further configured to send the user to the ID server. After the identified login request, the ID server 108 generates a request for the user after receiving the user's request. The authentication code is sent to the first terminal 100. After receiving the identity verification code, the first terminal 100 acquires the identity verification code, and when sending the query request to the application server 102, submits the identity verification code to the application server 102, and the application server can cooperate with the ID server to implement the identity verification code. After the verification of the verification code, the first terminal 100 is allowed to query whether the installation package of the application to be backed up is saved in the application server 102, and if the verification fails, the request of the terminal is rejected. Similarly, when uploading the backup data to the backup server 104, the first terminal 100 also needs to submit the authentication code to the backup server, and the backup server 104 cooperates with the ID server 108 to verify the identity verification code, and then receives the authentication code. The backup data uploaded by the terminal 102 rejects the backup data uploaded by the first terminal 100 if the verification fails.
在本发明实施例的一个可选实施方案中,ID服务器108可以通过短信向第一终端100下发身份验证码,第一终端100可以自动获取短信中的验证码。具体地,第一终端100可以通过以下步骤自动获取短信中的验证码:In an optional implementation of the embodiment of the present invention, the ID server 108 can send an authentication code to the first terminal 100 by using a short message, and the first terminal 100 can automatically obtain the verification code in the short message. Specifically, the first terminal 100 can automatically obtain the verification code in the short message by using the following steps:
步骤1,获取第一终端100的操作***的平台签名。例如,第一终端100可以运行预先在操作***的***服务(SystemServer)组件中注入的可执行文件,获取平台签名,即在操作***的SystemServer组件中注入可执行文件,通过运行该可执行文件,可以获取到操作***的平台签名。或者,在本发明实施例的一个可选实施方案中另一个可选实施方式中,第一终端100也可以通过刷入恢复(recovery)分区,通过分区的一些程序获取高权限,具体可以为在ramdisk中设置一个模块,用于扫描操作***分区,扫描后查看操作***的平台签名。Step 1: Obtain a platform signature of an operating system of the first terminal 100. For example, the first terminal 100 can run an executable file injected in advance in a system server (SystemServer) component of the operating system to obtain a platform signature, that is, inject an executable file into a SystemServer component of the operating system, by running the executable file, The platform signature of the operating system can be obtained. Alternatively, in another optional implementation manner of an optional implementation of the embodiment of the present invention, the first terminal 100 may also obtain a high-privilege by using a program of a partition by brushing in a recovery partition, which may be A module is set in the ramdisk to scan the operating system partition and view the platform signature of the operating system after scanning.
步骤2,基于获取平台签名,获取读取短消息内容的权限。在获取到平台签名之后,可以利用获取到的操作***的平台签名对应用进行重新签名,从而使得应用获取操作***相应的权限,在本实施例中,相应的权限是指获取读取短消息内容的权限)。Step 2: Acquire permission to read the content of the short message based on obtaining the platform signature. After the platform signature is obtained, the application may be re-signed by using the platform signature of the obtained operating system, so that the application obtains the corresponding authority of the operating system. In this embodiment, the corresponding permission refers to obtaining the read short message content. permission).
步骤3,基于获取的获取读取短消息内容的权限获取第一终端100接收到的短消息中的验证码。在具体应用中,第一终端100可以基于获取的权限,调用获取短消息内容的应用程序接口(API),从第一终端100的数据库中读取到第一终端100接收到的短消息的内容,然后从短消息的内容中获取到所述验证码。在本实施例中,获取短消息内容的API属于高级别的API,必须是具有***权限的应用才能调用这类API,因此,本实施例中,通过平台签名获取对应的权限,以调用该API获取短消息的内容。第一终端100在获取到验证码之后,还可以将获取的验证码输入到需要填写该验证码的对话框中,从而实现短信验证码的自动填写,提高用户体验。Step 3: Acquire a verification code in the short message received by the first terminal 100 based on the obtained permission to acquire the content of the short message. In a specific application, the first terminal 100 may invoke an application program interface (API) that acquires the content of the short message based on the acquired authority, and read the content of the short message received by the first terminal 100 from the database of the first terminal 100. And then obtaining the verification code from the content of the short message. In this embodiment, the API for obtaining the content of the short message belongs to a high-level API, and the application having the system permission must invoke such an API. Therefore, in this embodiment, the corresponding permission is obtained through the platform signature to invoke the API. Get the content of the short message. After obtaining the verification code, the first terminal 100 may also input the obtained verification code into a dialog box that needs to fill in the verification code, thereby realizing automatic filling of the short message verification code and improving the user experience.
需要说明的是,虽然在本发明实施例中,根据各个服务器的功能不同,将应用服务器102、备份服务器104、存储服务器103及ID服务器108分开设置,但并不限于此,在具体应用中,也可以将合并为同一服务器。It should be noted that, in the embodiment of the present invention, the application server 102, the backup server 104, the storage server 103, and the ID server 108 are separately provided according to the functions of the respective servers, but the invention is not limited thereto. In a specific application, It is also possible to merge into the same server.
实施例二Embodiment 2
图2为本实施例提供的备份***的架构示意图,如图2所示,本实施例提供的备份***在实施例一的基础上增加了第二终端200。其中,第二终端200与第一终端100可以是相同的终端,也可以是不同的终端,具体本实施例不作限定。FIG. 2 is a schematic structural diagram of a backup system according to the embodiment. As shown in FIG. 2, the backup system provided in this embodiment adds a second terminal 200 to the first embodiment. The second terminal 200 and the first terminal 100 may be the same terminal, or may be different terminals, which is not limited in this embodiment.
在本实施例中,第二终端200用于向备份服务器104请求备份的应用程序。In this embodiment, the second terminal 200 is configured to request the backup server 104 for the backed up application.
在本发明实施例中,第二终端200用于向应用服务器102发送携带有备份的应用程序的相关信息的第一备份还原请求,请求下载备份的应用程序,其中,所述相关信息包括:所述备份的应用程序的标识信息及所述备份的应用程序的版本信息。应用服务器102用于接收第二终端200发送的携带有备份的应用程序的相关信息的第一备份还原请求,其中,所述相关信息包括:所述备份的应用程序的标识信息及所述备份的应用程序的版本信息,根据所述标识信息查找所述应用服务器102保存的应用程序;并判断查找到的所述应用程序中是否有比所述备份的应用程序的版本更新版本;如果是,则将查找到的新版本的应用程序的安装包发送给所述第二终端 200。In the embodiment of the present invention, the second terminal 200 is configured to send, to the application server 102, a first backup restore request that carries related information of the backed up application, and requests to download the backed up application, where the related information includes: The identification information of the backed up application and the version information of the backed up application. The application server 102 is configured to receive, by the second terminal 200, a first backup and restore request that is related to the information about the application that is backed up, where the related information includes: identifier information of the backup application and the backup Searching the version information of the application, searching for the application saved by the application server 102 according to the identification information; and determining whether the searched version of the application has a version that is older than the version of the backup application; if yes, Sending the installation package of the found new version of the application to the second terminal 200.
在本发明实施例提供的应用备份还原***中,应用服务器102在接收第二终端200的备份还原请求时,查找本地是否存储有比请求还原的应用程序的版本更新(或者也可以称为更高)的版本,如果有,则将查找到的新版本的应用程序的安装包发送给第二终端200,从而使得第二终端200在应用备份还原时即可获得新版本的应用程序,避免用户在备份还原后还需要再次下载新版本的应用程序,节约了用户的时间和流量花费,提高了用户体验。In the application backup and restore system provided by the embodiment of the present invention, when receiving the backup and restore request of the second terminal 200, the application server 102 searches whether the local version of the application that is requested to be restored is updated (or may also be called higher). The version, if any, sends the found installation package of the new version of the application to the second terminal 200, so that the second terminal 200 can obtain the new version of the application when the application is restored, avoiding the user being After the backup and restore, you need to download the new version of the application again, saving users time and traffic costs and improving the user experience.
在本发明实施例的一个可选实施方案中,所述相关信息还可以包括:所述备份的应用程序的用户数据。则应用服务器102在还原备份的应用程序时,为了保证该用户数据还可以,可以有以下两种实现方式:In an optional implementation of the embodiment of the present invention, the related information may further include: user data of the backed up application. When the application server 102 restores the backed up application, in order to ensure that the user data is still ok, there are two implementation manners:
实现方式一:应用服务器从查找到的所述应用程序中选择与所述用户数据兼容的最新版本,然后将与用户数据兼容的最新版本的应用程序的安装包发送给所述第二终端200。即在该实现方式中,以用户数据为标准,按照用户数据适合的版本为第二终端200选择应用程序版本,使得第二终端200安装还原的应用程序后可以兼容之前备份的用户数据。在该实现方式中,与用户数据兼容的最新版本的应用程序可能就是备份的应用程序。Implementation 1: The application server selects the latest version compatible with the user data from the found applications, and then sends an installation package of the latest version of the application compatible with the user data to the second terminal 200. That is, in this implementation, the application version is selected for the second terminal 200 according to the user data as a standard, so that the second terminal 200 can be compatible with the previously backed up user data after installing the restored application. In this implementation, the latest version of the application that is compatible with user data may be the backed up application.
实现方式二:应用服务器102从查找到的所述应用程序中选择最新版本的应用程序,然后判断所述用户数据与所述最新版本的应用程序是否兼容;如果不兼容,则将所述用户数据的数据格式转换为与所述最新版本的应用程序匹配的数据格式,将转换后的所述用户数据与所述最新版本的应用程序的安装包发送给所述第二终端200;否则,直接将所述最新版本的应用程序的安装包发送给所述第二终端200。即该实现方式中,保证向第二终端200发送的为最新版的应用程序,为了保证用户备份的用户数据可用,改变用户数据的格式,使其能与最新版本的应用程序兼容。Implementation 2: The application server 102 selects the latest version of the application from the found applications, and then determines whether the user data is compatible with the latest version of the application; if not, the user data is Translating the data format into a data format matching the latest version of the application, and transmitting the converted user data and the installation package of the latest version of the application to the second terminal 200; otherwise, directly The installation package of the latest version of the application is sent to the second terminal 200. That is, in this implementation manner, the latest version of the application is guaranteed to be sent to the second terminal 200. In order to ensure that the user data backed up by the user is available, the format of the user data is changed to be compatible with the latest version of the application.
在本发明实施例的一个可选实施方案中,存储服务器106用于存储用户备份的数据,即在该可选实施方式中,存储服务器106只作存储使用。备份服务器104用于处理与备份相关的事务,在第二终端200向应用服务器102发送第一备份还原请求之前,所述第二终端200还用于向备份服务器104发送第二备份还原请求,请求所述备份的应用程序;所述备份服务器104用于确定所述备份的应用程序的安装包是否存储在存储服务器106,在没有存储在存储服务器106的情况下,备份服务器104获取所述备份的应用程序的相关信息,并将所述备份的应用程序的相关信息返回给所述第二终端200;所述第二终端200还用于接收所述备份的应用程序的相关信息,并在接收到所述相关信息之后,向所述应用服务器102发送所述第一备份还原请求。In an alternative embodiment of the present invention, the storage server 106 is configured to store data backed up by the user, i.e., in the alternative embodiment, the storage server 106 is for storage use only. The backup server 104 is configured to process a transaction related to the backup. Before the second terminal 200 sends the first backup and restore request to the application server 102, the second terminal 200 is further configured to send a second backup restore request to the backup server 104, requesting The backup application 104 is configured to determine whether an installation package of the backed up application is stored in the storage server 106, and if not stored in the storage server 106, the backup server 104 acquires the backup Information related to the application, and the related information of the backed up application is returned to the second terminal 200; the second terminal 200 is further configured to receive related information of the backed up application, and receive the related information After the related information, the first backup restore request is sent to the application server 102.
在上述可选实施方式中,备份服务器104中可以存储一个表(list),该表可以在用户备份应用程序时建立,该表中可以记录用户上传备份的应用程序的索引信息,该索引信息包括所述备份的应用程序的标识信息、所述备份的应用程序的版本信息、以及所述备份的应用程序的安装包是否存储在所述存储服务器的标识信息,在所述备份的应用程序的安装包存储在所述存储服务器的情况下,索引信息还可以包括所述备份的应用程序的安装包存储在所述存储服务器的地址,以及在用户上传的数据还备份的应用程序的用户数据的情况下,索引信息还可以包括所述备份的应用程序的用户数据存储在所述存储服务器的地址,或者,所述备份的应用程序的用户数据也可以作为索引信息的一部分存储在备份服务器104中,具体本实施例不作限定。通过该可选In the foregoing optional implementation, the backup server 104 may store a list, which may be established when the user backs up the application, where the index information of the application uploaded by the user may be recorded, and the index information includes The identification information of the backed up application, the version information of the backed up application, and whether the installed package of the backed up application is stored in the storage server's identification information, and the installation of the backup application In the case where the package is stored in the storage server, the index information may further include an address in which the installation package of the backup application is stored at the address of the storage server, and a user data of the application that is backed up by the user uploaded data. The index information may further include that the user data of the backed up application is stored at an address of the storage server, or the user data of the backed up application may also be stored in the backup server 104 as part of the index information. The specific embodiment is not limited. Through this optional
在本发明实施例的一个可选实施方案中,基于上述可选实施方式,所述备份服务器104用于确定所述备份的应用程序的安装包是否存储在存储服务器106可以包括:备份服务器104获取在备份所述备份的应用程序时记录的所述备份的应用程序的索引信息,其中,所述索引信息包括:所述备份的应用程序的标识信息、所述备份的应用程序的版本信息、以及所述备份的应用程序的安装包是否存储在所述存储 服务器的标识信息;根据所述索引信息,确定所述备份的应用程序的安装包没有存储在所述存储服务器106。In an optional implementation manner of the embodiment of the present invention, based on the foregoing optional implementation manner, the determining, by the backup server 104, whether the installation package of the backup application is stored in the storage server 106 may include: the backup server 104 obtains Index information of the backed up application recorded when backing up the backed up application, wherein the index information includes: identification information of the backed up application, version information of the backed up application, and Whether the installation package of the backed up application is stored in the storage Identification information of the server; determining, according to the index information, that an installation package of the backed up application is not stored in the storage server 106.
在本实施例中,为了确保第二终端200请求下载还原的应用程序为同一用户上传备份的应用程序。因此,在本发明实施例的一个可选实施方案中,第二终端200可以在向备份服务器104发送第二备份还原请求时,在该第二备份还原请求中携带身份认证信息,或者在发送第二备份还原请求之前,先向备份服务器104发送身份认证信息,备份服务器104对该身份认证信息进行校验,校验通过之后,备份服务器104与第二终端200进行交互,例如,向客户端推送备份的应用程序的还原页面等。在本实施例中,身份证认证信息可以是第二终端200从ID服务器108获取的,具体地,第二终端200可以向ID服务器108提供用户标识信息,ID服务器108在接收到用户的请求后,为用户生成一个身份验证码(即身份认证信息),并下发给第二终端200。第二终端200在接收到该身份验证码之后,获取该身份验证码,第二终端200在第二备份还原请求中或发第二备份还原请求之前,将该身份验证码发送给备份服务器104。其中,备份服务器104对该身份验证码进行校验时,可以与ID服务器进行交互,对该身份验证码是否有效进行验证,从而完成验证,具体验证过程本实施例不作限定。In this embodiment, in order to ensure that the second terminal 200 requests the download restored application to upload the backed up application for the same user. Therefore, in an optional implementation of the embodiment of the present invention, the second terminal 200 may carry the identity authentication information in the second backup restore request when sending the second backup restore request to the backup server 104, or send the first Before the backup request is restored, the authentication information is sent to the backup server 104, and the backup server 104 checks the identity authentication information. After the verification is passed, the backup server 104 interacts with the second terminal 200, for example, pushes the client. Backup page of the backup application, etc. In this embodiment, the ID card authentication information may be obtained by the second terminal 200 from the ID server 108. Specifically, the second terminal 200 may provide the user ID information to the ID server 108, and the ID server 108 receives the user's request. An authentication code (ie, identity authentication information) is generated for the user and sent to the second terminal 200. After receiving the identity verification code, the second terminal 200 acquires the identity verification code, and the second terminal 200 sends the identity verification code to the backup server 104 before the second backup restoration request or the second backup restoration request. When the backup server 104 performs the verification of the identity verification code, the backup server may perform an interaction with the ID server to verify whether the identity verification code is valid, and the verification process is completed. The specific verification process is not limited in this embodiment.
在本实施例中,在第二终端200上传备份的应用程序时,第二终端200向应用服务器102发送查询请求,其中,该查询请求中携带了待备份的应用程序的标识信息,应用服务器102接收到该请求后,根据该标识信息进行查询,并将查询结果返回给第二终端200,第二终端200接收应用服务器102返回的查询请求应答,其中,该查询请求应答中携带有指示待备份的应用程序的安装包是否存储在应用服务器102上的指示信息。将第二终端200根据上述指示信息,禁止将安装包存储在应用服务器102上的待备份的第一应用程序的安装包上传给备份服务器104,且将第一应用程序的相关信息上传给备份服务;将安装包没有存储在应用服务器102上的待备份的第二应用程序的安装包以及第二应用程序的相关信息上传给备份服务器104。即对于安装包没有存储在应用服务器102的第二应用程序,第二终端200将该应用程序的安装包及相关信息上传给备份服务器104。通过该可选实施方式,可以保证在备份时只上传应用服务器102中没有的应用程序,以在保证有效备份的同时,节约备份时间。In this embodiment, when the second terminal 200 uploads the backup application, the second terminal 200 sends a query request to the application server 102, where the query request carries the identification information of the application to be backed up, and the application server 102 After receiving the request, the query is performed according to the identifier information, and the query result is returned to the second terminal 200. The second terminal 200 receives the query request response returned by the application server 102, where the query request response carries an indication to be backed up. Whether the installation package of the application is stored in the indication information on the application server 102. The second terminal 200 is configured to upload the installation package of the first application to be backed up stored on the application server 102 to the backup server 104 according to the foregoing instruction information, and upload related information of the first application to the backup service. And installing the installation package of the second application to be backed up on the application server 102 and the related information of the second application to the backup server 104. That is, for the installation package not having the second application stored in the application server 102, the second terminal 200 uploads the installation package and related information of the application to the backup server 104. With this optional implementation, it is ensured that only applications not included in the application server 102 are uploaded during backup to save backup time while ensuring effective backup.
实施例三Embodiment 3
图3为本实施例提供的备份***的架构示意图,如图3所示,本实施例提供的备份***在实施例一的基础上增加了第二终端300。FIG. 3 is a schematic structural diagram of a backup system according to the embodiment. As shown in FIG. 3, the backup system provided in this embodiment adds a second terminal 300 to the first embodiment.
在本发明实施例中,第一终端100用于向备份服务器104上传备份数据包;第二终端300用于向备份服务器104发送数据还原请求,请求所述备份数据包;备份服务器104用于接收第一终端100上传的备份数据包,并根据第一终端100使用的数据格式,从备份数据包中提取备份的数据,然后按照第二终端300使用的数据格式,重写提取的备份的数据,得到还原数据包,将还原数据包返回给第二终端300,第二终端300接收备份服务器104返回的还原数据包。即在本实施例中,还原数据包中的数据与备份数据包的数据一样,不同的只是数据格式。In the embodiment of the present invention, the first terminal 100 is configured to upload a backup data packet to the backup server 104; the second terminal 300 is configured to send a data restoration request to the backup server 104 to request the backup data packet; and the backup server 104 is configured to receive The backup data packet uploaded by the first terminal 100, and the backup data is extracted from the backup data packet according to the data format used by the first terminal 100, and then the extracted backup data is rewritten according to the data format used by the second terminal 300. The restored data packet is obtained, the restored data packet is returned to the second terminal 300, and the second terminal 300 receives the restored data packet returned by the backup server 104. That is, in the present embodiment, the data in the restored data packet is the same as the data in the backup data packet, and the only difference is the data format.
通过本实施例提供的***,备份服务器104在接收到第一终端100上传的备份数据包后,根据第一终端100使用的数据格式,从备份数据包中提取备份的数据,在向第二终端300发送还原数据包时,将提取的数据按照第二终端300使用的数据格式进行重写,将重写后的数据包发送给第二终端300,从而使用第二终端300可以识别下载的备份数据,进而解决了现有技术中跨移动终端备份还原存在的还原的数据不可识别的问题,保证了用户的使用,提高了用户的体验。After receiving the backup data packet uploaded by the first terminal 100, the backup server 104 extracts the backup data from the backup data packet according to the data format used by the first terminal 100, and sends the backup data to the second terminal. When transmitting the restored data packet, the extracted data is rewritten according to the data format used by the second terminal 300, and the rewritten data packet is transmitted to the second terminal 300, so that the downloaded backup data can be identified by using the second terminal 300. Furthermore, the problem that the restored data existing in the backup and restore of the mobile terminal is unrecognizable in the prior art is solved, the use of the user is ensured, and the user experience is improved.
在本发明实施例的一个可选实施方案中,备份服务器104可以是在接收到第一 终端100上传的备份数据包之后,即从备份数据包中提取备份的数据,也可以是在接收到第二终端300发送的数据还原请求之后,再从备份数据包中提取备份的数据,具体本实施例不作限定。In an optional implementation of the embodiment of the present invention, the backup server 104 may be receiving the first After the backup data packet uploaded by the terminal 100, the backup data is extracted from the backup data packet, or after receiving the data restoration request sent by the second terminal 300, the backup data may be extracted from the backup data packet. The embodiment is not limited.
另外,如果备份服务器104是在接收到第一终端100上传的备份数据包之后,即从备份数据包中提取备份的数据,则备份服务器104可以将提取的数据按照预设的格式保存,例如,备份服务器104可以将提取的备份的数据按照备份服务器104所在的***的格式保存,例如,360手机助手的服务器可以将提取的备份的数据按照360手机助手使用的格式保存。在接收到第二终端300发送的数据还原请求之后,获取第二终端300使用的数据格式,将提取的备份的数据转换为第二终端300使用的数据格式。In addition, if the backup server 104 receives the backup data packet uploaded by the first terminal 100, that is, extracts the backed up data from the backup data package, the backup server 104 may save the extracted data in a preset format, for example, The backup server 104 can save the extracted backup data according to the format of the system in which the backup server 104 is located. For example, the server of the 360 mobile assistant can save the extracted backup data in the format used by the 360 mobile assistant. After receiving the data restoration request sent by the second terminal 300, the data format used by the second terminal 300 is acquired, and the extracted backup data is converted into the data format used by the second terminal 300.
例如,假设第一终端100使用的通讯录格式如表1所示,第二终端300使用的通讯录格式如表2所示。第一终端100上传的备份数据包为以华为手机的通讯录格式保存的联系人信息,备份服务器104接收到该备份数据包之后,按照表1所示的通讯录格式,去掉包头,从各个联系的姓名、电话、以及地址对应字段中提取备份的联系人的姓名、电话、及地址,然后将这些信息填写到表2所示的通讯录格式的对应字段,加上表2所示的包头和包尾,得到还原数据包。For example, assume that the address book format used by the first terminal 100 is as shown in Table 1, and the address book format used by the second terminal 300 is as shown in Table 2. The backup data packet uploaded by the first terminal 100 is the contact information saved in the address book format of the Huawei mobile phone. After receiving the backup data packet, the backup server 104 removes the packet header according to the address book format shown in Table 1, and contacts each contact. In the name, phone, and address corresponding fields, extract the name, phone number, and address of the backup contact, and then fill in the corresponding fields in the address book format shown in Table 2, plus the header and table shown in Table 2. At the end of the package, you get the restore packet.
表1.Table 1.
Figure PCTCN2016111559-appb-000001
Figure PCTCN2016111559-appb-000001
表2.Table 2.
Figure PCTCN2016111559-appb-000002
Figure PCTCN2016111559-appb-000002
在本发明实施例的一个可选实施方案中,第一终端100在上传备份数据包时,需要先登录备份服务器104,在登录备份服务器104之前,为了保证用户的账户安全,避免恶意攻击,备份服务器104可以向第一终端100发送验证码,第一终端100在登录时携带该验证码,备份服务器104对该验证码进行验证,验证通过后,允许第一终端100登录。因此,在该可选实施方式中,第一终端100还用于向备份服务器104发送验证码获取请求,其中,验证码获取请求中携带有用户标识(UID),例如,可以在客户端的登录界面设置一个获取验证码的按钮,用户在输入用户标识之后,点击该按钮,即向备份服务器104发送验证码获取请求。备份服务器104还用于接收该验证码获取请求,根据验证码获取请求中携带的用户标识,生成第一验证码并将所述第一验证码发送给所述第一终端100;第一终端100还用于接收并获取第一验证码,然后向备份服务器104发送登录请求,其中,所述登录请求中携带有所述第一验证码和所述用户标识;备份服务器104还用于接收所述第一移动终端发送的登录请求,对所述登录请求中携带的所述第一验证码进行验证,验证通过后,向所述第一移动终端返回登录成功响应。通过该可选实施方式,可以确保上传备份数据包的用户的身份,并且方便对用户上传的备份数据包进行管理。In an optional implementation of the embodiment of the present invention, the first terminal 100 needs to log in to the backup server 104 before uploading the backup data packet. Before the login to the backup server 104, in order to ensure the security of the user's account, the malicious attack is avoided. The server 104 may send a verification code to the first terminal 100. The first terminal 100 carries the verification code when logging in, and the backup server 104 verifies the verification code. After the verification is passed, the first terminal 100 is allowed to log in. Therefore, in the optional implementation manner, the first terminal 100 is further configured to send a verification code acquisition request to the backup server 104, where the verification code acquisition request carries a user identifier (UID), for example, may be in a login interface of the client. A button for obtaining a verification code is set, and after the user inputs the user identification, the user clicks the button to send a verification code acquisition request to the backup server 104. The backup server 104 is further configured to receive the verification code acquisition request, generate a first verification code according to the user identifier carried in the verification code acquisition request, and send the first verification code to the first terminal 100. The first terminal 100 And is further configured to receive and obtain a first verification code, and then send a login request to the backup server 104, where the login request carries the first verification code and the user identifier; the backup server 104 is further configured to receive the And the first verification code carried in the login request is verified by the login request sent by the first mobile terminal, and after the verification is passed, the login success response is returned to the first mobile terminal. With this optional implementation, the identity of the user who uploaded the backup data packet can be ensured, and the backup data packet uploaded by the user can be conveniently managed.
相应的,在本发明实施例的一个可选实施方案中,第二终端300在发送数据还原请求之前,也需要先登录备份服务器104,在登录备份服务器104时,为了保证用户的账户安全,避免恶意攻击,备份服务器104可以向第二终端300发送验证码,第二终端300在登录时携带该验证码,备份服务器104对该验证码进行验证,验证 通过后,允许第二终端300登录。因此,在该可选实施方式中,第二终端300还用于向备份服务器104发送验证码获取请求,其中,验证码获取请求中携带有用户标识(UID),例如,可以在客户端的登录界面设置一个获取验证码的按钮,用户在输入用户标识之后,点击该按钮,即向备份服务器104发送验证码获取请求。备份服务器104还用于接收该验证码获取请求,根据验证码获取请求中携带的用户标识,生成第二验证码并将所述第二验证码发送给所述第二终端300;第二终端300还用于接收并获取第二验证码,然后向备份服务器104发送登录请求,其中,所述登录请求中携带有所述第二验证码和所述用户标识;备份服务器104还用于接收所述第二移动终端发送的登录请求,对所述登录请求中携带的所述第二验证码进行验证,验证通过后,向所述第二移动终端返回登录成功响应。通过该可选实施方式,可以确保请求还原的用户与上传备份数据包的用户为同一用户,确保用户上传的备份数据的安全。Correspondingly, in an optional implementation of the embodiment of the present invention, the second terminal 300 also needs to log in to the backup server 104 before sending the data restoration request. When the backup server 104 is logged in, in order to ensure the security of the user account, The malicious server can send a verification code to the second terminal 300. The second terminal 300 carries the verification code when logging in. The backup server 104 verifies the verification code and verifies the verification code. After the passage, the second terminal 300 is allowed to log in. Therefore, in the optional implementation manner, the second terminal 300 is further configured to send a verification code acquisition request to the backup server 104, where the verification code acquisition request carries a user identifier (UID), for example, may be in a login interface of the client. A button for obtaining a verification code is set, and after the user inputs the user identification, the user clicks the button to send a verification code acquisition request to the backup server 104. The backup server 104 is further configured to receive the verification code acquisition request, generate a second verification code according to the user identifier carried in the verification code acquisition request, and send the second verification code to the second terminal 300. The second terminal 300 And is further configured to receive and obtain a second verification code, and then send a login request to the backup server 104, where the login request carries the second verification code and the user identifier; the backup server 104 is further configured to receive the And the second verification terminal carries the login request, and the second verification code carried in the login request is verified, and after the verification is passed, the login success response is returned to the second mobile terminal. With this optional implementation, it is ensured that the user requesting the restoration is the same user as the user uploading the backup data packet, and the backup data uploaded by the user is secured.
在本发明实施例的一个可选实施方案中,备份服务器104可以通过短消息向第一终端100和/或第二终端300发送验证码,即备份服务器104根据所述用户标识,向所述第一终端100和/或第二终端300发送短消息,其中,所述短消息中携带有所述验证码。第一终端100和/或第二终端300可以自动获取短信中的验证码。具体地,第一终端100和/或第二终端300可以通过以下步骤自动获取短信中的验证码:In an optional implementation of the embodiment of the present invention, the backup server 104 may send a verification code to the first terminal 100 and/or the second terminal 300 by using a short message, that is, the backup server 104 according to the user identifier, to the first A terminal 100 and/or a second terminal 300 sends a short message, wherein the short message carries the verification code. The first terminal 100 and/or the second terminal 300 can automatically obtain the verification code in the short message. Specifically, the first terminal 100 and/or the second terminal 300 can automatically obtain the verification code in the short message by the following steps:
步骤1,获取第一终端100和/或第二终端300的操作***的平台签名。例如,第一终端100和/或第二终端300可以运行预先在操作***的***服务(SystemServer)组件中注入的可执行文件,获取平台签名,即在操作***的SystemServer组件中注入可执行文件,通过运行该可执行文件,可以获取到操作***的平台签名。或者,在本发明实施例的一个可选实施方案中另一个可选实施方式中,第一终端100和/或第二终端300也可以通过刷入恢复(recovery)分区,通过分区的一些程序获取高权限,具体可以为在ramdisk中设置一个模块,用于扫描操作***分区,扫描后查看操作***的平台签名。Step 1. Acquire a platform signature of the operating system of the first terminal 100 and/or the second terminal 300. For example, the first terminal 100 and/or the second terminal 300 can run an executable file injected in advance in a system server (SystemServer) component of the operating system to acquire a platform signature, that is, inject an executable file into a SystemServer component of the operating system, By running the executable, you can get the platform signature of the operating system. Alternatively, in another optional implementation manner of an optional implementation manner of the embodiment of the present invention, the first terminal 100 and/or the second terminal 300 may also be obtained by using some procedures of the partition by brushing in a recovery partition. High privilege, specifically, a module can be set in the ramdisk to scan the operating system partition, and the platform signature of the operating system is scanned after scanning.
步骤2,基于获取的平台签名,获取读取短消息内容的权限。在获取到平台签名之后,可以利用获取到的操作***的平台签名对应用进行重新签名,从而使得应用获取操作***相应的权限,在本实施例中,相应的权限是指获取读取短消息内容的权限)。Step 2: Acquire permission to read the content of the short message based on the obtained platform signature. After the platform signature is obtained, the application may be re-signed by using the platform signature of the obtained operating system, so that the application obtains the corresponding authority of the operating system. In this embodiment, the corresponding permission refers to obtaining the read short message content. permission).
步骤3,基于获取的读取短消息内容的权限,获取第一终端100和/或第二终端300接收到的短消息中的验证码。在具体应用中,第一终端100和/或第二终端300可以基于获取的权限,调用获取短消息内容的应用程序接口(API),从第一终端100和/或第二终端300的数据库中读取到第一终端100和/或第二终端300接收到的短消息的内容,然后从短消息的内容中获取到所述验证码。在本实施例中,获取短消息内容的API属于高级别的API,必须是具有***权限的应用才能调用这类API,因此,本实施例中,通过平台签名获取对应的权限,以调用该API获取短消息的内容。第一终端100和/或第二终端300在获取到验证码之后,还可以将获取的验证码输入到需要填写该验证码的对话框中,从而实现短信验证码的自动填写,提高用户体验。Step 3: Acquire a verification code in the short message received by the first terminal 100 and/or the second terminal 300 based on the acquired permission to read the content of the short message. In a specific application, the first terminal 100 and/or the second terminal 300 may invoke an application program interface (API) for acquiring short message content based on the acquired rights, from the database of the first terminal 100 and/or the second terminal 300. The content of the short message received by the first terminal 100 and/or the second terminal 300 is read, and then the verification code is obtained from the content of the short message. In this embodiment, the API for obtaining the content of the short message belongs to a high-level API, and the application having the system permission must invoke such an API. Therefore, in this embodiment, the corresponding permission is obtained through the platform signature to invoke the API. Get the content of the short message. After obtaining the verification code, the first terminal 100 and/or the second terminal 300 may also input the obtained verification code into a dialog box that needs to fill in the verification code, thereby implementing automatic filling of the short message verification code and improving the user experience.
在本发明实施例的上可选实施方案中,备份服务器104在对第一终端100和/或第二终端300发送的验证码验证通过之后,可以向第一终端100和/或第二终端300返回登录成功响应。具体地,备份服务器104可以向第一终端100和/或第二终端300推送显示界面。例如,推送给第一终端100可以是该用户在备份服务器104开通的某些功能的显示界面,还可以包括该用户在备份服务器104保存的设置,具体可以根据实际应用的***确定;推送给第二终端300的显示界面可以显示与所述用户标识对应的备份数据的相关信息,用户可以选择需要还原的备份数据,并向备份服务器104提交数据还原请求,请求需要还原的备份数据。通过这种可选实施方式,可以方便用户上传备份数据以及选择需要还原的数据。 In an optional implementation manner of the embodiment of the present invention, after the verification code sent by the first terminal 100 and/or the second terminal 300 is verified, the backup server 104 may send the first terminal 100 and/or the second terminal 300 to the first terminal 100 and/or the second terminal 300. Returns a successful login response. Specifically, the backup server 104 can push the display interface to the first terminal 100 and/or the second terminal 300. For example, the first terminal 100 may be a display interface of certain functions that the user opens in the backup server 104, and may also include settings saved by the user in the backup server 104, which may be determined according to the actual application system; The display interface of the second terminal 300 can display related information of the backup data corresponding to the user identifier, and the user can select backup data that needs to be restored, and submit a data restoration request to the backup server 104 to request backup data that needs to be restored. With this alternative implementation, it is convenient for the user to upload backup data and select data that needs to be restored.
需要说明的是,在上述可选实施方式中,虽然将服务器侧所有实现的功能均由备份服务器104实现,但实际应用中,服务器侧也可以根据功能,将备份服务器104划分为多种不同的服务器,例如,可以由一个ID服务器108在用户登录时为用户生成验证码,并发送给相应的移动终端,由备份服务器处理移动终端发送的备份请求和还原请求,而用户上传的备份数据可以存储在存储服务器中,具体本实施例不作限定。It should be noted that, in the foregoing optional implementation manner, although all functions implemented on the server side are implemented by the backup server 104, in actual applications, the server side may also divide the backup server 104 into multiple different types according to functions. The server, for example, may generate a verification code for the user when the user logs in by an ID server 108, and send it to the corresponding mobile terminal, and the backup server processes the backup request and the restore request sent by the mobile terminal, and the backup data uploaded by the user may be stored. In the storage server, the specific embodiment is not limited.
另外,在本发明实施例的一个可选实施方案中,第一终端100和第二终端300为不同的移动终端,且第一终端100和第二终端300可以为相同类型的移动终端,也可以为不同类型的移动终端,备份服务器104在接收到第二终端300发送的数据还原请求时,可以先判断第二终端300使用的数据格式与第一终端100使用的数据格式是否相同,在不相同的情况下,才重写备份的数据,否则,直接将第一终端100上传的备份数据包下发给第二终端300。或者,备份服务器104也可以在接收到第一终端100上传的备份数据包后,将备份的数据重写为备份服务器104所在的***使用的数据格式,在接收第二终端300发送的数据还原请求时,按照第二终端300使用的数据格式重写备份的数据。通过该可选实施方式,可以扩展本实施例提供的技术方案的应用场景。In addition, in an optional implementation of the embodiment of the present invention, the first terminal 100 and the second terminal 300 are different mobile terminals, and the first terminal 100 and the second terminal 300 may be the same type of mobile terminal, or For the different types of mobile terminals, when receiving the data restoration request sent by the second terminal 300, the backup server 104 may first determine whether the data format used by the second terminal 300 is the same as the data format used by the first terminal 100, and is different. In the case of the second terminal 300, the backup data packet uploaded by the first terminal 100 is directly sent to the second terminal 300. Alternatively, after receiving the backup data packet uploaded by the first terminal 100, the backup server 104 may rewrite the backed up data to the data format used by the system where the backup server 104 is located, and receive the data restoration request sent by the second terminal 300. At this time, the backed up data is rewritten in accordance with the data format used by the second terminal 300. The application scenario of the technical solution provided by this embodiment can be extended by using the optional implementation manner.
在本发明实施例的一个可选实施方案中,备份数据包括但不限于以下至少之一:联系人信息、短消息、通话记录、以及图片。In an optional implementation of the embodiment of the present invention, the backup data includes but is not limited to at least one of the following: contact information, short message, call record, and picture.
实施例四Embodiment 4
图4为本实施例提供的备份***的架构示意图,如图4所示,本实施例提供的备份***在实施例一的基础上增加了同步服务器402和第二终端400。FIG. 4 is a schematic structural diagram of a backup system according to the embodiment. As shown in FIG. 4, the backup system provided in this embodiment adds a synchronization server 402 and a second terminal 400 to the first embodiment.
在本实施例中,第一终端100用于在预设类信息的内容发生改变时,向同步服务器402发送发生改变的所述预设类信息的内容;同步服务器402用户获取第一终端内发生改变的预设类信息的内容,检测使用与所述第一终端100同一用户标识登录的第二终端400内存储的所述预设类信息的内容与获取的所述内容是否一致;在所述第二终端400内存储的所述预设类信息的内容与获取的所述内容不一致的情况下,更改所述第二终端400内存储的所述预设类信息的内容,使所述第二终端400内存储的所述预设类信息的内容与获取的所述内容一致。第二终端400,用于使用与所述第一终端100相同的用户标识登录,接收所述同步服务器402的更改。In this embodiment, the first terminal 100 is configured to: when the content of the preset class information is changed, send the content of the preset class information that is changed to the synchronization server 402; the synchronization server 402 acquires the content that occurs in the first terminal. And changing the content of the preset class information, detecting whether the content of the preset class information stored in the second terminal 400 registered with the same user identifier of the first terminal 100 is consistent with the acquired content; In a case where the content of the preset class information stored in the second terminal 400 is inconsistent with the acquired content, the content of the preset class information stored in the second terminal 400 is changed, so that the second The content of the preset class information stored in the terminal 400 is consistent with the obtained content. The second terminal 400 is configured to log in using the same user identifier as the first terminal 100, and receive the change of the synchronization server 402.
通过本实施例提供的***,在第一终端100的预设类信息的内容发生改变时,同步服务器402获取发生改变的预设类信息的内容,然后检测与第一终端100的用户标识相同的第二终端400的该预设类信息的内容与获取的内容是否一致,如果不一致,则进行同步,从而解决了现有技术中同一用户的其它终端无法及时获取用户在另一终端上做出的改变的问题,提高了用户的体验。With the system provided in this embodiment, when the content of the preset class information of the first terminal 100 changes, the synchronization server 402 acquires the content of the preset class information that has changed, and then detects the same user identifier as the first terminal 100. Whether the content of the preset type information of the second terminal 400 is consistent with the obtained content, and if not, the synchronization is performed, thereby solving the problem that the other terminals of the same user in the prior art cannot obtain the user's time on another terminal. The problem of change has improved the user experience.
在本发明实施例的一个可选实施方案中,同步服务器402可以根据第一终端100中的预设类信息的内容与第二终端400中的预设类信息的内容的不同差异,第二终端400内存储的所述预设类信息的内容。例如,在确定获取的所述内容在所述第二终端400内存储的所述预设类信息的内容的基础上有增加情况下,将增加的内容与所述预设类信息的格式发送给所述第二终端400,例如,第一终端100接收到一条新的短信,同步服务器402发现第二终端400上并没有该条短信,则可以将该短信发送给第二终端400,使得第二终端400上也具有该条短信。In an optional implementation of the embodiment of the present invention, the synchronization server 402 may be different according to the difference between the content of the preset class information in the first terminal 100 and the content of the preset class information in the second terminal 400, and the second terminal. The content of the preset class information stored in 400. For example, if it is determined that the acquired content is added to the content of the preset class information stored in the second terminal 400, the added content and the format of the preset class information are sent to The second terminal 400, for example, the first terminal 100 receives a new short message, and the synchronization server 402 finds that the second terminal 400 does not have the short message, and then sends the short message to the second terminal 400, so that the second terminal 400 The terminal 400 also has the message.
或者,在确定第二终端400内存储的所述预设类信息的内容在获取的所述内容的基础上有增加情况下,向所述第二终端400发送指令,指示所述第二终端400删除所述第二终端400内存储的增加的内容。例如,用户在使用第一终端100时,删除了其中的一条短信,同步服务器402通过比较发现第二终端400上多了该条短信,则可以向第二终端400发送指令,指示第二终端400删除该条短信。在这种情况下, 如果用户允许的情况下,第二终端400根据同步服务器402的指示删除相应的内容,如果用户不允许,例如,用户设置不允许同步的时候删除本机中保存的短信,则第二终端400在接收到同步服务器402发送的指示时,不删除比第一终端100多出来的短信。Alternatively, when it is determined that the content of the preset class information stored in the second terminal 400 is increased on the basis of the acquired content, an instruction is sent to the second terminal 400 to instruct the second terminal 400 The added content stored in the second terminal 400 is deleted. For example, when the first terminal 100 is used by the user, one of the short messages is deleted, and the synchronization server 402 can send an instruction to the second terminal 400 to indicate the second terminal 400 by comparing and finding that the second terminal 400 has the short message. Delete the message. under these circumstances, If the user allows, the second terminal 400 deletes the corresponding content according to the instruction of the synchronization server 402, and if the user does not allow, for example, the user setting does not allow the synchronization to delete the short message saved in the local machine, the second terminal 400 is When the instruction sent by the synchronization server 402 is received, the message that is more than the first terminal 100 is not deleted.
在本发明实施例的一个可选实施方案中,同步服务器402可以时间触发检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致例如,可以设置同步服务器402以一定周期检测(例如,每15分钟),则在预定周期到达时,同步服务器402检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。或者,也可以是事件触发检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致,例如,可以是在检测到使用与所述第一终端同一用户标识的第二终端登录,检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。在具体实施过程中,还可以有其它触发方式,具体本实施例不作限定。In an optional implementation of the embodiment of the present invention, the synchronization server 402 may time-triggly detect the content and the acquired location of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal. Whether the content is consistent, for example, the synchronization server 402 can be set to detect in a certain period (for example, every 15 minutes), and when the predetermined period arrives, the synchronization server 402 detects the use of the second terminal registered with the same user identifier as the first terminal. Whether the stored content of the preset class information is consistent with the obtained content. Alternatively, the event triggering may be consistent with whether the content of the preset class information stored in the second terminal that is registered with the same user identifier of the first terminal is consistent with the obtained content, for example, may be detected. Detecting, by using the second terminal that is the same user ID as the first terminal, the content of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal, and whether the obtained content is obtained. Consistent. There may be other triggering modes in the specific implementation process, which is not limited in this embodiment.
在本发明实施例的一个可选实施方案中,所述预设类信息包括但不限于以下之一:短消息、通话记录、图片、以及联系人信息。例如,第一终端100可以在拍摄到一张照片后,向同步服务器402发送通知,同步服务器402获取第一终端100中的照片,再检测第一终端100中的照片与第二终端400中的照片是否一致,检测结果是第二终端400中没有该新拍摄的照片,则同步服务器402将该新拍摄的照片发送给第二终端400,存储到第二终端400的相册中。In an optional implementation of the embodiment of the present invention, the preset class information includes but is not limited to one of the following: a short message, a call record, a picture, and contact information. For example, the first terminal 100 may send a notification to the synchronization server 402 after capturing a photo, the synchronization server 402 acquires the photo in the first terminal 100, and then detects the photo in the first terminal 100 and the second terminal 400. Whether the photos are consistent or not, and the result of the detection is that the newly taken photo is not present in the second terminal 400, the synchronization server 402 transmits the newly taken photo to the second terminal 400 and stores it in the album of the second terminal 400.
通过本实施例提供的***,可以在第一终端100中的信息发生改变时,将更新同步到第二终端400中,从而使得用户可以及时通过第二终端400获取到更新后的信息,提高用户的体验。With the system provided in this embodiment, when the information in the first terminal 100 is changed, the update is synchronized to the second terminal 400, so that the user can obtain the updated information through the second terminal 400 in time, thereby improving the user. Experience.
实施例五Embodiment 5
图5示出了根据本发明一实施例的备份方法的流程示意图,该方法对应于上文实施例一所示的备份***。参见图5,该方法至少可以包括以下步骤S502至步骤S508。FIG. 5 is a schematic flowchart diagram of a backup method according to an embodiment of the present invention, which corresponds to the backup system shown in Embodiment 1 above. Referring to FIG. 5, the method may at least include the following steps S502 to S508.
步骤S502,第一终端在备份应用程序时,向应用服务器发送查询请求,其中,该查询请求中携带了待备份的应用程序的标识信息;Step S502: The first terminal sends a query request to the application server when the application is backed up, where the query request carries the identifier information of the application to be backed up;
步骤S504,应用服务器接收第一终端发送的查询请求,并向第一终端返回查询请求应答,其中,查询请求应答中携带有指示待备份的应用程序的安装包是否存储在应用服务器上的指示信息;Step S504: The application server receives the query request sent by the first terminal, and returns a query request response to the first terminal, where the query request response carries indication information indicating whether the installation package of the application to be backed up is stored on the application server. ;
步骤S506,第一终端根据指示信息,禁止将安装包存储在应用服务器上的待备份的第一应用程序的安装包上传给备份服务器,将第一应用程序的相关信息上传给备份服务器;Step S506, the first terminal, according to the indication information, prohibits the installation package of the first application to be backed up, which is stored on the application server, from being uploaded to the backup server, and uploading related information of the first application to the backup server;
步骤S508,备份服务器保存第一终端上传的相关信息与第一终端登录时使用的用户标识的第一关联关系。Step S508, the backup server saves the first association relationship between the related information uploaded by the first terminal and the user identifier used when the first terminal logs in.
本发明实施例中,在备份应用程序时,终端先查询应用服务器中是否存储有待备份的应用程序,如果存储有,则终端不向备份服务器上传待备份的应用程序的安装包,只将应用程序的相关信息上传给备份服务器,减小了上传的数据量,缩短了应用程序备份所需的时间,节约了应用程序备份所花费的数据流利,提高了用户体验。In the embodiment of the present invention, when the application is backed up, the terminal first queries whether the application to be backed up is stored in the application server. If the storage is available, the terminal does not upload the installation package of the application to be backed up to the backup server, and only the application is used. The related information is uploaded to the backup server, which reduces the amount of data uploaded, shortens the time required for application backup, saves data fluency of application backup, and improves user experience.
在本发明实施例的一个可选实施方案中,第一终端100还可以根据指示信息,将安装包没有存储在应用服务器102上的待备份的第二应用程序的安装包以及第二应用程序的相关信息上传给备份服务器104;备份服务器104将第二应用程序的安装包发送给存储服务器106保存,并保存第二应用程序的相关信息、第二应用程序的 安装包在存储服务器的存储地址与用户标识的第二关联关系;存储服务器106保存第二应用程序的安装包。即对于安装包没有存储在应用服务器102的第二应用程序,第一终端100将该应用程序的安装包及相关信息上传给备份服务器104。通过该可选实施方式,可以保证在备份时只上传应用服务器102中没有的应用程序,以在保证有效备份的同时,节约备份时间。In an optional implementation manner of the embodiment of the present invention, the first terminal 100 may further install the installation package of the second application to be backed up on the application server 102 and the second application according to the indication information. The related information is uploaded to the backup server 104. The backup server 104 sends the installation package of the second application to the storage server 106 for saving, and saves related information of the second application and the second application. The second association relationship between the storage address of the storage server and the user identifier is installed; the storage server 106 saves the installation package of the second application. That is, for the second application in which the installation package is not stored in the application server 102, the first terminal 100 uploads the installation package and related information of the application to the backup server 104. With this optional implementation, it is ensured that only applications not included in the application server 102 are uploaded during backup to save backup time while ensuring effective backup.
在本发明实施例的一个可选实施方案中,相关信息包括:版本信息和检验数据。在还原时,可以参考备份的版本信息选择合适的版本。另外,根据校验数据,可以对终端上传的应用程序的安装包进行完整性校验,以保证上传的安装包的数据完整性,在备份还原时,也可以根据该校验数据对还原的应用程序进行完整性校验。In an optional embodiment of the embodiment of the invention, the related information includes: version information and verification data. When restoring, you can refer to the version information of the backup to select the appropriate version. In addition, according to the verification data, the integrity check of the installation package of the application uploaded by the terminal may be performed to ensure the data integrity of the uploaded installation package, and the restored application may also be restored according to the verification data during backup and restore. The program performs an integrity check.
在本发明实施例的一个可选实施方案中,相关信息还可以包括:用户数据;备份服务器104将用户数据发送给存储服务器106保存,将用户数据在存储服务器的存储地址保存到第一关联关系或第二关联关系中。即用户使用待备份的应用程序产生的用户数据进行备份,例如,用户使用QQ产生的聊天记录,用户使用微信产生的聊天记录、朋友圈分享的信息等。采用该可选实施方案,在还原应用程序时,可以将相应的用户数据一起还原给用户,提高用户体验。In an optional implementation of the embodiment of the present invention, the related information may further include: user data; the backup server 104 sends the user data to the storage server 106, and saves the user data in the storage address of the storage server to the first association relationship. Or in the second association. That is, the user backs up the user data generated by the application to be backed up, for example, the chat record generated by the user using QQ, the chat record generated by the user using WeChat, and the information shared by the circle of friends. With this optional implementation, when the application is restored, the corresponding user data can be restored to the user together to improve the user experience.
在本发明实施例的一个可选实施方案中,备份方法对应于图2所示的备份***,其在实施例一的基础上增加了第二终端200。其中,第二终端200与第一终端100可以是相同的终端,也可以是不同的终端,具体本实施例不作限定。In an optional implementation of the embodiment of the present invention, the backup method corresponds to the backup system shown in FIG. 2, which adds the second terminal 200 to the first embodiment. The second terminal 200 and the first terminal 100 may be the same terminal, or may be different terminals, which is not limited in this embodiment.
在本实施例中,第二终端200可以向备份服务器104请求备份的应用程序。In the present embodiment, the second terminal 200 can request the backup application 104 for the backed up application.
在本发明实施例中,第二终端200可以向应用服务器102发送携带有备份的应用程序的相关信息的第一备份还原请求,请求下载备份的应用程序,其中,所述相关信息包括:所述备份的应用程序的标识信息及所述备份的应用程序的版本信息。应用服务器102接收第二终端200发送的携带有备份的应用程序的相关信息的第一备份还原请求,其中,所述相关信息包括:所述备份的应用程序的标识信息及所述备份的应用程序的版本信息,根据所述标识信息查找所述应用服务器102保存的应用程序;并判断查找到的所述应用程序中是否有比所述备份的应用程序的版本更新版本;如果是,则将查找到的新版本的应用程序的安装包发送给所述第二终端200。In the embodiment of the present invention, the second terminal 200 may send a first backup and restore request carrying the related information of the backed up application to the application server 102, and request to download the backed up application, where the related information includes: The identification information of the backed up application and the version information of the backed up application. The application server 102 receives a first backup restore request that is sent by the second terminal 200 and carries the related information of the backup application, where the related information includes: the identifier information of the backup application and the backup application. The version information, searching for the application saved by the application server 102 according to the identification information; and determining whether the found application has a version updated than the version of the backed application; if yes, searching The installation package of the new version of the application is sent to the second terminal 200.
在本发明实施例提供的应用备份还原方法中,应用服务器102在接收第二终端200的备份还原请求时,查找本地是否存储有比请求还原的应用程序的版本更新(或者也可以称为更高)的版本,如果有,则将查找到的新版本的应用程序的安装包发送给第二终端200,从而使得第二终端200在应用备份还原时即可获得新版本的应用程序,避免用户在备份还原后还需要再次下载新版本的应用程序,节约了用户的时间和流量花费,提高了用户体验。In the application backup and restore method provided by the embodiment of the present invention, when receiving the backup and restore request of the second terminal 200, the application server 102 searches whether the local version of the application that is requested to be restored is updated (or may also be called higher). The version, if any, sends the found installation package of the new version of the application to the second terminal 200, so that the second terminal 200 can obtain the new version of the application when the application is restored, avoiding the user being After the backup and restore, you need to download the new version of the application again, saving users time and traffic costs and improving the user experience.
在本发明实施例的一个可选实施方案中,所述相关信息还可以包括:所述备份的应用程序的用户数据。则应用服务器102在还原备份的应用程序时,为了保证该用户数据还可以,可以有以下两种实现方式:In an optional implementation of the embodiment of the present invention, the related information may further include: user data of the backed up application. When the application server 102 restores the backed up application, in order to ensure that the user data is still ok, there are two implementation manners:
实现方式一:应用服务器从查找到的所述应用程序中选择与所述用户数据兼容的最新版本,然后将与用户数据兼容的最新版本的应用程序的安装包发送给所述第二终端200。即在该实现方式中,以用户数据为标准,按照用户数据适合的版本为第二终端200选择应用程序版本,使得第二终端200安装还原的应用程序后可以兼容之前备份的用户数据。在该实现方式中,与用户数据兼容的最新版本的应用程序可能就是备份的应用程序。Implementation 1: The application server selects the latest version compatible with the user data from the found applications, and then sends an installation package of the latest version of the application compatible with the user data to the second terminal 200. That is, in this implementation, the application version is selected for the second terminal 200 according to the user data as a standard, so that the second terminal 200 can be compatible with the previously backed up user data after installing the restored application. In this implementation, the latest version of the application that is compatible with user data may be the backed up application.
实现方式二:应用服务器102从查找到的所述应用程序中选择最新版本的应用程序,然后判断所述用户数据与所述最新版本的应用程序是否兼容;如果不兼容,则将所述用户数据的数据格式转换为与所述最新版本的应用程序匹配的数据格式,将转换后的所述用户数据与所述最新版本的应用程序的安装包发送给所述第二终端 200;否则,直接将所述最新版本的应用程序的安装包发送给所述第二终端200。即该实现方式中,保证向第二终端200发送的为最新版的应用程序,为了保证用户备份的用户数据可用,改变用户数据的格式,使其能与最新版本的应用程序兼容。Implementation 2: The application server 102 selects the latest version of the application from the found applications, and then determines whether the user data is compatible with the latest version of the application; if not, the user data is Translating the data format into a data format matching the latest version of the application, and transmitting the converted user data and the installation package of the latest version of the application to the second terminal 200; otherwise, the installation package of the latest version of the application is directly sent to the second terminal 200. That is, in this implementation manner, the latest version of the application is guaranteed to be sent to the second terminal 200. In order to ensure that the user data backed up by the user is available, the format of the user data is changed to be compatible with the latest version of the application.
在本发明实施例的一个可选实施方案中,在本发明实施例的一个可选实施方案中,备份方法对应于图3所示的备份***,其在实施例一的基础上增加了第二终端300。In an optional implementation of the embodiment of the present invention, in an optional implementation of the embodiment of the present invention, the backup method corresponds to the backup system shown in FIG. 3, which adds a second to the first embodiment. Terminal 300.
在本发明实施例中,第一终端100向备份服务器104上传备份数据包;第二终端300向备份服务器104发送数据还原请求,请求所述备份数据包;备份服务器104接收第一终端100上传的备份数据包,并根据第一终端100使用的数据格式,从备份数据包中提取备份的数据,然后按照第二终端300使用的数据格式,重写提取的备份的数据,得到还原数据包,将还原数据包返回给第二终端300,第二终端300接收备份服务器104返回的还原数据包。即在本实施例中,还原数据包中的数据与备份数据包的数据一样,不同的只是数据格式。In the embodiment of the present invention, the first terminal 100 uploads a backup data packet to the backup server 104; the second terminal 300 sends a data restoration request to the backup server 104 to request the backup data packet; and the backup server 104 receives the upload of the first terminal 100. Backing up the data packet, and extracting the backed up data from the backup data packet according to the data format used by the first terminal 100, and then rewriting the extracted backup data according to the data format used by the second terminal 300 to obtain the restored data packet, The restored data packet is returned to the second terminal 300, and the second terminal 300 receives the restored data packet returned by the backup server 104. That is, in the present embodiment, the data in the restored data packet is the same as the data in the backup data packet, and the only difference is the data format.
在本发明实施例的一个可选实施方案中,备份方法对应于图4所示的备份***,其在实施例一的基础上增加了增加了同步服务器402和第二终端400。In an optional implementation of the embodiment of the present invention, the backup method corresponds to the backup system shown in FIG. 4, which adds the synchronization server 402 and the second terminal 400 to the first embodiment.
在本实施例中,第一终端100用于在预设类信息的内容发生改变时,向同步服务器402发送发生改变的所述预设类信息的内容;同步服务器402用户获取第一终端内发生改变的预设类信息的内容,检测使用与所述第一终端100同一用户标识登录的第二终端400内存储的所述预设类信息的内容与获取的所述内容是否一致;在所述第二终端400内存储的所述预设类信息的内容与获取的所述内容不一致的情况下,更改所述第二终端400内存储的所述预设类信息的内容,使所述第二终端400内存储的所述预设类信息的内容与获取的所述内容一致。第二终端400,用于使用与所述第一终端100相同的用户标识登录,接收所述同步服务器402的更改。In this embodiment, the first terminal 100 is configured to: when the content of the preset class information is changed, send the content of the preset class information that is changed to the synchronization server 402; the synchronization server 402 acquires the content that occurs in the first terminal. And changing the content of the preset class information, detecting whether the content of the preset class information stored in the second terminal 400 registered with the same user identifier of the first terminal 100 is consistent with the acquired content; In a case where the content of the preset class information stored in the second terminal 400 is inconsistent with the acquired content, the content of the preset class information stored in the second terminal 400 is changed, so that the second The content of the preset class information stored in the terminal 400 is consistent with the obtained content. The second terminal 400 is configured to log in using the same user identifier as the first terminal 100, and receive the change of the synchronization server 402.
通过本实施例提供的***,在第一终端100的预设类信息的内容发生改变时,同步服务器402获取发生改变的预设类信息的内容,然后检测与第一终端100的用户标识相同的第二终端400的该预设类信息的内容与获取的内容是否一致,如果不一致,则进行同步,从而解决了现有技术中同一用户的其它终端无法及时获取用户在另一终端上做出的改变的问题,提高了用户的体验。With the system provided in this embodiment, when the content of the preset class information of the first terminal 100 changes, the synchronization server 402 acquires the content of the preset class information that has changed, and then detects the same user identifier as the first terminal 100. Whether the content of the preset type information of the second terminal 400 is consistent with the obtained content, and if not, the synchronization is performed, thereby solving the problem that the other terminals of the same user in the prior art cannot obtain the user's time on another terminal. The problem of change has improved the user experience.
在本发明实施例的一个可选实施方案中,同步服务器402可以根据第一终端100中的预设类信息的内容与第二终端400中的预设类信息的内容的不同差异,第二终端400内存储的所述预设类信息的内容。例如,在确定获取的所述内容在所述第二终端400内存储的所述预设类信息的内容的基础上有增加情况下,将增加的内容与所述预设类信息的格式发送给所述第二终端400,例如,第一终端100接收到一条新的短信,同步服务器402发现第二终端400上并没有该条短信,则可以将该短信发送给第二终端400,使得第二终端400上也具有该条短信。In an optional implementation of the embodiment of the present invention, the synchronization server 402 may be different according to the difference between the content of the preset class information in the first terminal 100 and the content of the preset class information in the second terminal 400, and the second terminal. The content of the preset class information stored in 400. For example, if it is determined that the acquired content is added to the content of the preset class information stored in the second terminal 400, the added content and the format of the preset class information are sent to The second terminal 400, for example, the first terminal 100 receives a new short message, and the synchronization server 402 finds that the second terminal 400 does not have the short message, and then sends the short message to the second terminal 400, so that the second terminal 400 The terminal 400 also has the message.
或者,在确定第二终端400内存储的所述预设类信息的内容在获取的所述内容的基础上有增加情况下,向所述第二终端400发送指令,指示所述第二终端400删除所述第二终端400内存储的增加的内容。例如,用户在使用第一终端100时,删除了其中的一条短信,同步服务器402通过比较发现第二终端400上多了该条短信,则可以向第二终端400发送指令,指示第二终端400删除该条短信。在这种情况下,如果用户允许的情况下,第二终端400根据同步服务器402的指示删除相应的内容,如果用户不允许,例如,用户设置不允许同步的时候删除本机中保存的短信,则第二终端400在接收到同步服务器402发送的指示时,不删除比第一终端100多出来的短信。Alternatively, when it is determined that the content of the preset class information stored in the second terminal 400 is increased on the basis of the acquired content, an instruction is sent to the second terminal 400 to instruct the second terminal 400 The added content stored in the second terminal 400 is deleted. For example, when the first terminal 100 is used by the user, one of the short messages is deleted, and the synchronization server 402 can send an instruction to the second terminal 400 to indicate the second terminal 400 by comparing and finding that the second terminal 400 has the short message. Delete the message. In this case, if the user allows, the second terminal 400 deletes the corresponding content according to the instruction of the synchronization server 402, and if the user does not allow, for example, the user setting does not allow the synchronization to delete the text message saved in the machine, When the second terminal 400 receives the indication sent by the synchronization server 402, the second terminal 400 does not delete the short message that is larger than the first terminal 100.
在本发明实施例的一个可选实施方案中,同步服务器402可以时间触发检测使 用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。例如,可以设置同步服务器402以一定周期检测(例如,每15分钟),则在预定周期到达时,同步服务器402检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。或者,也可以是事件触发检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致,例如,可以是在检测到使用与所述第一终端同一用户标识的第二终端登录,检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。在具体实施过程中,还可以有其它触发方式,具体本实施例不作限定。In an optional implementation of an embodiment of the present invention, the synchronization server 402 can time trigger detection Whether the content of the preset class information stored in the second terminal that is logged in with the same user identifier of the first terminal is consistent with the obtained content. For example, the synchronization server 402 can be set to detect in a certain period (for example, every 15 minutes), and when the predetermined period arrives, the synchronization server 402 detects the storage stored in the second terminal registered with the same user identifier as the first terminal. Whether the content of the preset class information is consistent with the obtained content. Alternatively, the event triggering may be consistent with whether the content of the preset class information stored in the second terminal that is registered with the same user identifier of the first terminal is consistent with the obtained content, for example, may be detected. Detecting, by using the second terminal that is the same user ID as the first terminal, the content of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal, and whether the obtained content is obtained. Consistent. There may be other triggering modes in the specific implementation process, which is not limited in this embodiment.
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。In the description provided herein, numerous specific details are set forth. However, it is understood that the embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of the description.
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。Similarly, the various features of the invention are sometimes grouped together into a single embodiment, in the above description of the exemplary embodiments of the invention, Figure, or a description of it. However, the method disclosed is not to be interpreted as reflecting the intention that the claimed invention requires more features than those recited in the claims. Rather, as the following claims reflect, inventive aspects reside in less than all features of the single embodiments disclosed herein. Therefore, the claims following the specific embodiments are hereby explicitly incorporated into the embodiments, and each of the claims as a separate embodiment of the invention.
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。Those skilled in the art will appreciate that the modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components. In addition to such features and/or at least some of the processes or units being mutually exclusive, any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined. Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。In addition, those skilled in the art will appreciate that, although some embodiments described herein include certain features that are included in other embodiments and not in other features, combinations of features of different embodiments are intended to be within the scope of the present invention. Different embodiments are formed and formed. For example, in the following claims, any one of the claimed embodiments can be used in any combination.
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的备份***中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。The various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof. Those skilled in the art will appreciate that a microprocessor or digital signal processor (DSP) may be used in practice to implement some or all of the functionality of some or all of the components of the backup system in accordance with embodiments of the present invention. The invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein. Such a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
例如,图6示出了可以实现备份方法的计算设备。该计算设备传统上包括处理器610和以存储器620形式的计算机程序产品或者计算机可读介质。存储器620可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器620具有用于执行上述方法中的任何方法步骤的程序代码631的存储空间630。例如,用于程序代码的存储空间630可以包括分别用于实现上面的方法中的各种步骤的各个程序代码631。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样 的计算机程序产品通常为如参考图7所述的便携式或者固定存储单元。该存储单元可以具有与图6的计算设备中的存储器620类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码631’,即可以由例如诸如610之类的处理器读取的代码,这些代码当由计算设备运行时,导致该计算设备执行上面所描述的方法中的各个步骤。For example, Figure 6 illustrates a computing device that can implement a backup method. The computing device conventionally includes a processor 610 and a computer program product or computer readable medium in the form of a memory 620. The memory 620 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM. Memory 620 has a memory space 630 for program code 631 for performing any of the method steps described above. For example, storage space 630 for program code may include various program code 631 for implementing various steps in the above methods, respectively. The program code can be read from or written to one or more computer program products. These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks. This way The computer program product is typically a portable or fixed storage unit as described with reference to FIG. The storage unit may have storage segments, storage spaces, and the like that are similarly arranged to memory 620 in the computing device of FIG. The program code can be compressed, for example, in an appropriate form. Typically, the storage unit includes computer readable code 631', ie, code readable by a processor, such as 610, that when executed by a computing device causes the computing device to perform each of the methods described above step.
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。"an embodiment," or "an embodiment," or "an embodiment," In addition, it is noted that the phrase "in one embodiment" is not necessarily referring to the same embodiment.
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。It is to be noted that the above-described embodiments are illustrative of the invention and are not intended to be limiting, and that the invention may be devised without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as a limitation. The word "comprising" does not exclude the presence of the elements or steps that are not recited in the claims. The word "a" or "an" The invention can be implemented by means of hardware comprising several distinct elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means can be embodied by the same hardware item. The use of the words first, second, and third does not indicate any order. These words can be interpreted as names.
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。 In addition, it should be noted that the language used in the specification has been selected for the purpose of readability and teaching, and is not intended to be construed or limited. Therefore, many modifications and changes will be apparent to those skilled in the art without departing from the scope of the invention. The disclosure of the present invention is intended to be illustrative, and not restrictive, and the scope of the invention is defined by the appended claims.

Claims (26)

  1. 一种备份***,包括:A backup system that includes:
    第一终端,用于在备份应用程序时,向应用服务器发送查询请求,其中,所述查询请求中携带了待备份的应用程序的标识信息;The first terminal is configured to send a query request to the application server when the application is backed up, where the query request carries the identifier information of the application to be backed up;
    所述应用服务器,用于接收第一终端发送的查询请求,并向所述第一终端返回查询请求应答,其中,所述查询请求应答中携带有指示所述待备份的应用程序的安装包是否存储在所述应用服务器上的指示信息;The application server is configured to receive a query request sent by the first terminal, and return a query request response to the first terminal, where the query request response carries an installation package indicating whether the application to be backed up is Instructing information stored on the application server;
    所述第一终端还用于根据所述指示信息,禁止将安装包存储在所述应用服务器上的待备份的第一应用程序的安装包上传给备份服务器,将所述第一应用程序的相关信息上传给所述备份服务器;The first terminal is further configured to: according to the indication information, prohibiting, to upload, to the backup server, an installation package of the first application to be backed up, where the installation package is stored on the application server, to associate the first application Information is uploaded to the backup server;
    所述备份服务器,用于保存所述第一终端上传的相关信息与所述第一终端登录时使用的用户标识的第一关联关系。The backup server is configured to save a first association relationship between the related information uploaded by the first terminal and the user identifier used when the first terminal logs in.
  2. 根据权利要求1所述的***,其中,所述***还包括:存储服务器,The system of claim 1 wherein said system further comprises: a storage server,
    所述第一终端还用于根据所述指示信息,将安装包没有存储在所述应用服务器上的待备份的第二应用程序的安装包以及所述第二应用程序的相关信息上传给所述备份服务器;The first terminal is further configured to: upload, according to the indication information, an installation package of the second application to be backed up that is not stored on the application server, and related information of the second application to the Backup server
    所述备份服务器还用于将所述第二应用程序的安装包发送给所述存储服务器保存,并保存所述第二应用程序的相关信息、所述第二应用程序的安装包在存储服务器的存储地址与所述用户标识的第二关联关系;The backup server is further configured to send the installation package of the second application to the storage server for saving, and save related information of the second application, and the installation package of the second application is in a storage server. a second association relationship between the storage address and the user identifier;
    所述存储服务器,用于保存所述第二应用程序的安装包。The storage server is configured to save an installation package of the second application.
  3. 根据权利要求2所述的***,其中,所述相关信息包括:版本信息和检验数据。The system of claim 2 wherein said related information comprises: version information and verification data.
  4. 根据权利要求3所述的***,其中,所述相关信息还包括:用户数据;The system of claim 3, wherein the related information further comprises: user data;
    所述备份服务器还用于将所述用户数据发送给所述存储服务器保存,将所述用户数据在所述存储服务器的存储地址保存到所述第一关联关系或所述第二关联关系中。The backup server is further configured to send the user data to the storage server for saving, and save the user data in a storage address of the storage server to the first association relationship or the second association relationship.
  5. 根据权利要求1至4任一项所述的***,其中,所述***还包括:第二终端,其中,The system according to any one of claims 1 to 4, wherein the system further comprises: a second terminal, wherein
    所述第二终端用于向所述备份服务器发送第一备份还原请求,请求备份的应用程序;The second terminal is configured to send a first backup restore request to the backup server, requesting a backup application;
    所述备份服务器还用于判断所述备份的应用程序的安装包是否存储在所述存储服务器中,如果是,则从所述存储服务器获取所述应用程序的安装包,将所述应用程序的安装包返回给所述第二终端,否则,获取所述备份的应用程序的相关信息,并将所述备份的应用程序的相关信息返回给所述第二终端;The backup server is further configured to determine whether an installation package of the backed up application is stored in the storage server, and if yes, obtain an installation package of the application from the storage server, where the application is The installation package is returned to the second terminal, otherwise, the related information of the backed up application is obtained, and related information of the backed up application is returned to the second terminal;
    所述第二终端,还用于接收所述备份的应用程序的相关信息,向所述应用服务器发送所述第二备份还原请求,请求下载所述备份的应用程序,其中,所述第二备份还原请求中携带的所述备份的应用程序的相关信息。The second terminal is further configured to receive related information of the backed up application, send the second backup and restore request to the application server, and request to download the backup application, where the second backup Restore information about the backed up application carried in the request.
  6. 根据权利要求5所述的***,其中,The system of claim 5 wherein
    所述应用服务器还用于接收所述第二备份还原请求,查找所述应用服务器保存所有版本的所述备份的应用程序,并判断查找到的所述应用程序中是否有比所述备份版本更新的版本,如果是,则将查找到的新版本的应用程序的安装包发送给所述第二终端。The application server is further configured to receive the second backup restore request, find an application that saves all versions of the backup by the application server, and determine whether the searched application has an update than the backup version. The version, if yes, sends the found installation package of the new version of the application to the second terminal.
  7. 根据权利要求6所述的***,其中,在所述相关信息包括用户数据的情况下,所述应用服务器通过以下方式将查找到的新版本的应用程序的安装包发送给所述第二终端:The system according to claim 6, wherein, in a case where the related information includes user data, the application server transmits an installation package of the found new version of the application to the second terminal by:
    从查找到的所述应用程序中选择与所述用户数据兼容的最新版本,将所述与所述 用户数据兼容的最新版本的应用程序的安装包发送给所述第二终端;或者,Selecting the latest version compatible with the user data from the found applications, An installation package of the latest version of the application compatible with the user data is sent to the second terminal; or,
    从查找到的所述应用程序中选择最新版本的应用程序,判断所述用户数据与所述最新版本的应用程序是否兼容,如果不兼容,则将所述用户数据的数据格式转换为与所述最新版本的应用程序匹配的数据格式,将转换后的所述用户数据与所述最新版本的应用程序的安装包发送给所述第二终端;否则,直接将所述最新版本的应用程序的安装包发送给所述第二终端。Selecting a latest version of the application from the found applications, determining whether the user data is compatible with the latest version of the application, and if not, converting the data format of the user data to The latest version of the application matches the data format, and sends the converted user data and the installation package of the latest version of the application to the second terminal; otherwise, directly installs the latest version of the application The packet is sent to the second terminal.
  8. 根据权利要求1至4任一项所述的***,其中,所述***还包括:第二终端,The system according to any one of claims 1 to 4, wherein the system further comprises: a second terminal,
    所述备份服务器还用于接收第一终端上传的备份数据包,根据所述第一终端使用的数据格式,从所述备份数据包中提取备份的数据,以及接收到所述第二终端发送的请求所述备份数据包的数据还原请求,按照所述第二终端使用的数据格式,重写提取所述备份的数据,得到还原数据包,并将所述还原数据包发送给所述第二移动终端。The backup server is further configured to receive a backup data packet uploaded by the first terminal, extract the backed up data from the backup data packet according to the data format used by the first terminal, and receive the sent by the second terminal. Requesting a data restoration request of the backup data packet, rewriting the data of the backup according to a data format used by the second terminal, obtaining a restored data packet, and transmitting the restored data packet to the second mobile terminal.
  9. 根据权利要求1至4任一项所述的***,其中,还包括:同步服务器和第二终端,其中,The system according to any one of claims 1 to 4, further comprising: a synchronization server and a second terminal, wherein
    所述同步服务器,用于获取第一终端内发生改变的预设类信息的内容,检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致,在所述第二终端内存储的所述预设类信息的内容与获取的所述内容不一致的情况下,更改所述第二终端内存储的所述预设类信息的内容,使所述第二终端内存储的所述预设类信息的内容与获取的所述内容一致。The synchronization server is configured to acquire content of the preset class information that is changed in the first terminal, and detect content of the preset class information stored in the second terminal that is logged in with the same user identifier of the first terminal. Whether the acquired content is consistent, and if the content of the preset class information stored in the second terminal is inconsistent with the obtained content, changing the preset class stored in the second terminal The content of the information is such that the content of the preset class information stored in the second terminal is consistent with the obtained content.
  10. 根据权利要求9所述的***,其中,所述同步服务器通过以下方式更改所述第二终端内存储的所述预设类信息的内容:The system according to claim 9, wherein said synchronization server changes contents of said preset class information stored in said second terminal by:
    在确定获取的所述内容在所述第二终端内存储的所述预设类信息的内容的基础上有增加情况下,将增加的内容与所述预设类信息的格式发送给所述第二终端;And sending, in the case that the acquired content is added to the content of the preset class information stored in the second terminal, sending the added content and the format of the preset class information to the first Second terminal
    在确定所述第二终端内存储的所述预设类信息的内容在获取的所述内容的基础上有增加情况下,向所述第二终端发送指令,指示所述第二终端删除所述第二终端内存储的增加的内容。When it is determined that the content of the preset class information stored in the second terminal is increased on the basis of the acquired content, sending an instruction to the second terminal, instructing the second terminal to delete the The added content stored in the second terminal.
  11. 根据权利要求9所述的***,其中,所述同步服务器在预设周期到达时或在检测到使用与所述第一终端同一用户标识的第二终端登录时,启动检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。The system according to claim 9, wherein the synchronization server initiates detection use and the first when a preset period arrives or when detecting a second terminal login using the same user identifier as the first terminal Whether the content of the preset class information stored in the second terminal that is registered by the terminal with the same user identifier is consistent with the obtained content.
  12. 根据权利要求1至4任一项所述的***,其中,还包括:A system according to any one of claims 1 to 4, further comprising:
    身份服务器,用于接收所述第一终端发送的携带用户标识的登录请求,根据用户标识生成身份验证码,将所述身份验证码发送给所述第一终端。The identity server is configured to receive a login request that carries the user identifier sent by the first terminal, generate an identity verification code according to the user identifier, and send the identity verification code to the first terminal.
  13. 一种备份方法,包括:A backup method that includes:
    第一终端在备份应用程序时,向应用服务器发送查询请求,其中,所述查询请求中携带了待备份的应用程序的标识信息;The first terminal sends a query request to the application server when the application is backed up, where the query request carries the identification information of the application to be backed up;
    所述应用服务器接收第一终端发送的查询请求,并向所述第一终端返回查询请求应答,其中,所述查询请求应答中携带有指示所述待备份的应用程序的安装包是否存储在所述应用服务器上的指示信息;The application server receives the query request sent by the first terminal, and returns a query request response to the first terminal, where the query request response carries an installation package indicating whether the application to be backed up is stored in the Describe the information on the application server;
    所述第一终端根据所述指示信息,禁止将安装包存储在所述应用服务器上的待备份的第一应用程序的安装包上传给备份服务器,将所述第一应用程序的相关信息上传给所述备份服务器;The first terminal, according to the indication information, prohibits uploading an installation package of the first application to be backed up stored on the application server to the backup server, and uploading related information of the first application to the The backup server;
    所述备份服务器保存所述第一终端上传的相关信息与所述第一终端登录时使用的用户标识的第一关联关系。The backup server saves a first association relationship between the related information uploaded by the first terminal and the user identifier used when the first terminal logs in.
  14. 根据权利要求13所述的方法,其中,还包括:The method of claim 13 further comprising:
    所述第一终端根据所述指示信息,将安装包没有存储在所述应用服务器上的待备份的第二应用程序的安装包以及所述第二应用程序的相关信息上传给所述备份服务器; The first terminal uploads, to the backup server, the installation package of the second application to be backed up and the related information of the second application that are not stored on the application server, according to the indication information;
    所述备份服务器将所述第二应用程序的安装包发送给存储服务器保存,并保存所述第二应用程序的相关信息、所述第二应用程序的安装包在所述存储服务器的存储地址与所述用户标识的第二关联关系;The backup server sends the installation package of the second application to the storage server for saving, and saves related information of the second application, a storage address of the second application, and a storage address of the storage server. a second association relationship of the user identifier;
    所述存储服务器保存所述第二应用程序的安装包。The storage server saves an installation package of the second application.
  15. 根据权利要求14所述的方法,其中,所述相关信息包括:版本信息和检验数据。The method of claim 14, wherein the related information comprises: version information and verification data.
  16. 根据权利要求15所述的方法,其中,所述相关信息还包括:用户数据;The method of claim 15, wherein the related information further comprises: user data;
    所述备份服务器将所述用户数据发送给所述存储服务器保存,将所述用户数据在所述存储服务器的存储地址保存到所述第一关联关系或所述第二关联关系中。The backup server sends the user data to the storage server for saving, and saves the user data in a storage address of the storage server to the first association relationship or the second association relationship.
  17. 根据权利要求13-16任一项所述的方法,其中,还包括:The method of any of claims 13-16, further comprising:
    第二终端向所述备份服务器发送第一备份还原请求,请求备份的应用程序;Sending, by the second terminal, a first backup restore request to the backup server, requesting the backed up application;
    所述备份服务器判断所述备份的应用程序的安装包是否存储在所述存储服务器中,如果是,则从所述存储服务器获取所述应用程序的安装包,将所述应用程序的安装包返回给所述第二终端,否则,获取所述备份的应用程序的相关信息,并将所述备份的应用程序的相关信息返回给所述第二终端;Determining, by the backup server, whether an installation package of the backed up application is stored in the storage server, and if yes, acquiring an installation package of the application from the storage server, and returning the installation package of the application Giving the second terminal, otherwise, acquiring related information of the backed up application, and returning related information of the backed up application to the second terminal;
    所述第二终端接收所述备份的应用程序的相关信息,向所述应用服务器发送所述第二备份还原请求,请求下载所述备份的应用程序,其中,所述第二备份还原请求中携带的所述备份的应用程序的相关信息。Receiving, by the second terminal, related information of the backed up application, sending the second backup and restore request to the application server, requesting to download the backed up application, where the second backup restore request is carried The information about the backup application.
  18. 根据权利要求17所述的方法,其中,还包括:The method of claim 17 further comprising:
    所述应用服务器接收所述第二备份还原请求,查找所述应用服务器保存所有版本的所述备份的应用程序,并判断查找到的所述应用程序中是否有比所述备份版本更新的版本,如果是,则将查找到的新版本的应用程序的安装包发送给所述第二终端。Receiving, by the application server, the second backup and restore request, searching for an application that saves all versions of the backup, and determining whether the searched version has a version that is newer than the backup version. If yes, the installation package of the found new version of the application is sent to the second terminal.
  19. 根据权利要求18所述的方法,其中,在所述相关信息包括用户数据的情况下,所述应用服务器通过以下方式将查找到的新版本的应用程序的安装包发送给所述第二终端:The method according to claim 18, wherein, in the case where the related information includes user data, the application server transmits an installation package of the found new version of the application to the second terminal by:
    从查找到的所述应用程序中选择与所述用户数据兼容的最新版本,将所述与所述用户数据兼容的最新版本的应用程序的安装包发送给所述第二终端;或者,And selecting, from the found application, the latest version compatible with the user data, and sending the installation package of the latest version of the application compatible with the user data to the second terminal; or
    从查找到的所述应用程序中选择最新版本的应用程序,判断所述用户数据与所述最新版本的应用程序是否兼容,如果不兼容,则将所述用户数据的数据格式转换为与所述最新版本的应用程序匹配的数据格式,将转换后的所述用户数据与所述最新版本的应用程序的安装包发送给所述第二终端;否则,直接将所述最新版本的应用程序的安装包发送给所述第二终端。Selecting a latest version of the application from the found applications, determining whether the user data is compatible with the latest version of the application, and if not, converting the data format of the user data to The latest version of the application matches the data format, and sends the converted user data and the installation package of the latest version of the application to the second terminal; otherwise, directly installs the latest version of the application The packet is sent to the second terminal.
  20. 根据权利要求13-16任一项所述的方法,其中,还包括:The method of any of claims 13-16, further comprising:
    所述备份服务器接收第一终端上传的备份数据包,根据所述第一终端使用的数据格式,从所述备份数据包中提取备份的数据,以及接收到第二终端发送的请求所述备份数据包的数据还原请求,按照所述第二终端使用的数据格式,重写提取所述备份的数据,得到还原数据包,并将所述还原数据包发送给所述第二移动终端。Receiving, by the backup server, the backup data packet uploaded by the first terminal, extracting the backup data from the backup data packet according to the data format used by the first terminal, and receiving the request for the backup data sent by the second terminal And data recovery request of the packet, rewriting the data of the backup according to the data format used by the second terminal, obtaining a restored data packet, and transmitting the restored data packet to the second mobile terminal.
  21. 根据权利要求13-16任一项所述的方法,其中,还包括:The method of any of claims 13-16, further comprising:
    同步服务器获取第一终端内发生改变的预设类信息的内容,检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致,在所述第二终端内存储的所述预设类信息的内容与获取的所述内容不一致的情况下,更改所述第二终端内存储的所述预设类信息的内容,使所述第二终端内存储的所述预设类信息的内容与获取的所述内容一致。The synchronization server acquires the content of the preset class information that is changed in the first terminal, and detects the content of the preset class information stored in the second terminal that is logged in with the same user identifier as the first terminal, and the obtained content. Whether the content of the preset class information stored in the second terminal is inconsistent with the obtained content, and the content of the preset class information stored in the second terminal is changed, so that The content of the preset class information stored in the second terminal is consistent with the obtained content.
  22. 根据权利要求21所述的方法,其中,所述同步服务器通过以下方式更改所述第二终端内存储的所述预设类信息的内容:The method according to claim 21, wherein said synchronization server changes contents of said preset class information stored in said second terminal by:
    在确定获取的所述内容在所述第二终端内存储的所述预设类信息的内容的基础上有增加情况下,将增加的内容与所述预设类信息的格式发送给所述第二终端; And sending, in the case that the acquired content is added to the content of the preset class information stored in the second terminal, sending the added content and the format of the preset class information to the first Second terminal
    在确定所述第二终端内存储的所述预设类信息的内容在获取的所述内容的基础上有增加情况下,向所述第二终端发送指令,指示所述第二终端删除所述第二终端内存储的增加的内容。When it is determined that the content of the preset class information stored in the second terminal is increased on the basis of the acquired content, sending an instruction to the second terminal, instructing the second terminal to delete the The added content stored in the second terminal.
  23. 根据权利要求22所述的方法,其中,所述同步服务器在预设周期到达时或在检测到使用与所述第一终端同一用户标识的第二终端登录时,启动检测使用与所述第一终端同一用户标识登录的第二终端内存储的所述预设类信息的内容与获取的所述内容是否一致。The method according to claim 22, wherein the synchronization server initiates detection use and the first when a preset period arrives or when detecting a second terminal login using the same user identifier as the first terminal Whether the content of the preset class information stored in the second terminal that is registered by the terminal with the same user identifier is consistent with the obtained content.
  24. 根据权利要求13-16任一项所述的方法,其中,还包括:The method of any of claims 13-16, further comprising:
    身份服务器接收所述第一终端发送的携带用户标识的登录请求,根据用户标识生成身份验证码,将所述身份验证码发送给所述第一终端。The identity server receives the login request that carries the user identifier sent by the first terminal, generates an identity verification code according to the user identifier, and sends the identity verification code to the first terminal.
  25. 一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行根据权利要求13至24中任一项所述的备份方法。A computer program comprising computer readable code that, when executed on a computing device, causes the computing device to perform the backup method of any one of claims 13-24.
  26. 一种计算机可读介质,其中存储了如权利要求25所述的计算机程序。 A computer readable medium storing the computer program of claim 25.
PCT/CN2016/111559 2015-12-23 2016-12-22 Backup system and method WO2017107961A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510982298.5A CN105554137B (en) 2015-12-23 2015-12-23 A kind of standby system and method
CN201510982298.5 2015-12-23

Publications (1)

Publication Number Publication Date
WO2017107961A1 true WO2017107961A1 (en) 2017-06-29

Family

ID=55833069

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/111559 WO2017107961A1 (en) 2015-12-23 2016-12-22 Backup system and method

Country Status (2)

Country Link
CN (1) CN105554137B (en)
WO (1) WO2017107961A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538967A (en) * 2020-05-07 2020-08-14 安徽龙讯信息科技有限公司 Data management platform based on information resource library

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105554137B (en) * 2015-12-23 2019-11-26 北京奇虎科技有限公司 A kind of standby system and method
CN106021367B (en) * 2016-05-10 2021-10-15 腾讯科技(深圳)有限公司 Method and terminal for searching backup data
CN106302773A (en) * 2016-08-23 2017-01-04 惠州市拉维尼科技有限公司 remote data processing method
CN106598645B (en) * 2016-11-18 2020-11-20 北京安云世纪科技有限公司 Application upgrading method and device and mobile terminal
CN110365627B (en) * 2018-04-11 2021-10-29 腾讯科技(深圳)有限公司 Application program synchronization method and device, computing equipment and storage medium
CN112905209A (en) * 2021-03-23 2021-06-04 维沃移动通信(深圳)有限公司 Application program updating method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117346A1 (en) * 2007-04-27 2012-05-10 Stocklein Carl J User interface indicator for mobile device backup status
CN103631678A (en) * 2013-12-02 2014-03-12 北京奇虎科技有限公司 Backup method, restoring method and device for client software
CN104156284A (en) * 2014-08-27 2014-11-19 小米科技有限责任公司 File backup method and device
CN105426272A (en) * 2015-12-23 2016-03-23 北京奇虎科技有限公司 Backup method and device for application programs
CN105554137A (en) * 2015-12-23 2016-05-04 北京奇虎科技有限公司 Backup system and method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102360320A (en) * 2011-09-30 2012-02-22 奇智软件(北京)有限公司 Terminal backup object sharing and recovery method based on cloud architecture
CN102546756A (en) * 2011-12-13 2012-07-04 中兴通讯股份有限公司 Data processing method, cloud server and terminal
US10567498B2 (en) * 2012-07-27 2020-02-18 Samsung Electronics Co., Ltd. Terminal and server performing data synchronization
CN103179187A (en) * 2013-01-06 2013-06-26 深圳市联合创意信息技术有限公司 Terminal management system with application download servers
CN104035789B (en) * 2013-03-07 2018-11-27 腾讯科技(深圳)有限公司 The method for down loading and system of application program, downloading and shared terminal
CN103546807A (en) * 2013-10-30 2014-01-29 乐视致新电子科技(天津)有限公司 Cloud back-up and restoration method and related device
CN104156236A (en) * 2014-07-23 2014-11-19 小米科技有限责任公司 Storage space saving method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117346A1 (en) * 2007-04-27 2012-05-10 Stocklein Carl J User interface indicator for mobile device backup status
CN103631678A (en) * 2013-12-02 2014-03-12 北京奇虎科技有限公司 Backup method, restoring method and device for client software
CN104156284A (en) * 2014-08-27 2014-11-19 小米科技有限责任公司 File backup method and device
CN105426272A (en) * 2015-12-23 2016-03-23 北京奇虎科技有限公司 Backup method and device for application programs
CN105554137A (en) * 2015-12-23 2016-05-04 北京奇虎科技有限公司 Backup system and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538967A (en) * 2020-05-07 2020-08-14 安徽龙讯信息科技有限公司 Data management platform based on information resource library
CN111538967B (en) * 2020-05-07 2023-03-14 安徽龙讯信息科技有限公司 Data management platform based on information resource library

Also Published As

Publication number Publication date
CN105554137B (en) 2019-11-26
CN105554137A (en) 2016-05-04

Similar Documents

Publication Publication Date Title
WO2017107961A1 (en) Backup system and method
US10355865B1 (en) Systems and techniques for certification of trusted media data
CN106302337B (en) Vulnerability detection method and device
Barmpatsalou et al. A critical review of 7 years of Mobile Device Forensics
US9794252B2 (en) Information processing system and device control method
CN104468531B (en) The authorization method of sensitive data, device and system
WO2018019241A1 (en) Update processing method and device for terminal application, and computer storage medium
JP5802848B2 (en) Computer-implemented method, non-temporary computer-readable medium and computer system for identifying Trojanized applications (apps) for mobile environments
CN108989291B (en) Login verification method, automatic login verification method, server side and client side
TWI637279B (en) Method, system and web server for uploading form attachments
US9015817B2 (en) Resilient and restorable dynamic device identification
US10846381B2 (en) Authentication selection for information processing apparatus, information processing method, and non-transitory computer readable medium
US8250138B2 (en) File transfer security system and method
US11831617B2 (en) File upload control for client-side applications in proxy solutions
WO2014106489A1 (en) Method and system for processing browser crash information
EP3176719B1 (en) Methods and devices for acquiring certification document
CN110417718B (en) Method, device, equipment and storage medium for processing risk data in website
WO2014111022A1 (en) Mobile terminal user information display method, mobile terminal, and service system
CN110209925B (en) Application pushing method, device, computer equipment and storage medium
CN113469866A (en) Data processing method and device and server
CN113395340A (en) Information updating method, device, equipment, system and readable storage medium
WO2017215650A1 (en) Automatic login method and device for micro-game client, program, and medium
US20130139240A1 (en) Network system, information processing apparatus, method for controlling the information processing apparatus, and computer-readable storage medium for computer program
CN105426272B (en) Application Backup method and device
Bhat et al. Forensic analysis of sync. com and flipdrive cloud applications on android platform

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16877771

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16877771

Country of ref document: EP

Kind code of ref document: A1