A data migration method across user spaces, an electronic device, and a storage medium
By setting up a data migration module in electronic devices, the problem of data not being able to be directly migrated between different user spaces is solved, enabling efficient and secure cross-user space data transfer and supporting the migration of files, third-party applications, and self-developed applications.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HONOR DEVICE CO LTD
- Filing Date
- 2023-10-19
- Publication Date
- 2026-06-09
AI Technical Summary
In the existing technology, data in different user spaces within the same electronic device cannot be directly transferred between each other. Users need to rely on external devices or other applications to transfer data, which leads to inconvenience and inefficiency.
Data migration modules can be set up within the same electronic device to directly transfer data between different user spaces, including application installation packages, cached data, and application settings data, without the need for external devices or other applications.
It enables data migration between different user spaces within the same electronic device, improving data transmission efficiency and security, and supporting batch transmission and migration of a wide range of data categories.
Smart Images

Figure CN119902799B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data cloning technology, and in particular to a data migration method, electronic device and storage medium across user spaces. Background Technology
[0002] As the performance of electronic devices continues to improve, in order to meet the needs of users, an electronic device may have two or more user spaces, or multiple systems, which users can switch between when using the electronic device.
[0003] However, currently, data in different user spaces within the same electronic device cannot be transferred between each other, causing inconvenience for users. Summary of the Invention
[0004] This application provides a data migration method, electronic device, and storage medium across user spaces, which can realize the mutual migration of data between different user spaces in the same electronic device, bringing convenience to users.
[0005] To achieve the above objectives, this application adopts the following technical solution:
[0006] In a first aspect, this application provides a data migration method across user spaces, applied to an electronic device, wherein the electronic device contains a first system and a second system, and the method includes:
[0007] The first system receives a data migration instruction, which includes a data migration instruction to migrate application data of a first application in the first system to the second system.
[0008] The first system sends the application data of the first application to the second system, and the application data includes the installation package of the first application;
[0009] The second system receives application data from the first application sent by the first system;
[0010] The second system installs the first application in the second system.
[0011] In this application, the first system can send the installation package of an application within its own system to the second system. Upon receiving the installation package from the first system, the second system parses the package to install the corresponding application within its own system. This application achieves data transfer between the first and second systems without relying on external devices or the functionality of other applications, enabling data migration between different user spaces within the same electronic device and providing convenience for users.
[0012] As another implementation of the first aspect, the data migration operation is further used to migrate the first information of the first application, wherein the application data further includes the first information of the first application, and the first information includes cached data and / or application settings data of the first application; the method further includes:
[0013] After the first application is installed in the second system, the first information of the first application is restored in the first application installed in the second system. When the first information includes the cached data, restoring the first information of the first application involves importing the cached data. When the first information includes the application settings data, restoring the first information of the first application involves setting the first application installed in the second system according to the application settings data.
[0014] This application provides a method for migrating application cache data and application settings data across user spaces. After the second system receives the cache data and application settings data sent by the first system, the second system can restore the cache data and application settings data, making the migration data across user spaces richer.
[0015] As another implementation of the first aspect, the first system receives a data migration instruction, including:
[0016] The data migration module in the first system receives the data migration instruction.
[0017] In this application, a data migration module is set up in the first system, which enables users to migrate data across user spaces.
[0018] As another implementation of the first aspect, the application data is the first information;
[0019] Before the first system sends the application data of the first application to the second system, the method further includes:
[0020] The data migration module in the first system sends the data migration instruction to the cloning module in the first system. The data migration instruction includes second information, which represents the identification information of the application data of the first application.
[0021] The cloning module in the first system determines that the data to be migrated is data from the first application based on the second information in the data migration instruction.
[0022] The cloning module in the first system sends the data migration instruction to the first application in the first system;
[0023] After receiving the data migration instruction, the first application in the first system sends the application data of the first application to the cloning module in the first system.
[0024] After receiving the application data of the first application, the cloning module in the first system sends the application data of the first application to the data migration module in the first system.
[0025] Accordingly, the first system sends the application data of the first application to the second system, including:
[0026] The data migration module in the first system sends the application data of the first application to the data migration module in the second system;
[0027] Accordingly, the second system receives application data of the first application sent by the first system, including:
[0028] The data migration module in the second system receives the application data of the first application sent by the data migration module in the first system.
[0029] In this application, a cloning module is set in the first system. The cloning module is used to receive data migration instructions sent by the data migration module. The cloning module is also used to determine whether the data to be migrated is application data according to the data migration instructions. Finally, the cloning module sends the data migration instructions to the application, so that the application sends the application data to the data migration module through the cloning module, thereby realizing the backup of the application data.
[0030] As another implementation of the first aspect, the first application includes a second application, which is not an application developed by the manufacturer of the electronic device; the second information includes identification information of the application data of the second application;
[0031] The cloning module in the first system sends the data migration instruction to the first application in the first system, including:
[0032] The cloning module in the first system sends the data migration instruction to the BMS module in the first system;
[0033] After receiving the data migration instruction, the BMS module in the first system determines that the data to be migrated is the data in the second application according to the data migration instruction;
[0034] The BMS module in the first system sends the data migration instruction to the backup and recovery module of the second application in the first system;
[0035] Accordingly, after receiving the data migration instruction, the first application in the first system sends its application data to the cloning module in the first system, including:
[0036] After receiving the data migration instruction, the backup and restore module of the second application in the first system sends the application data of the second application to the BMS module in the first system.
[0037] After receiving the application data of the second application, the BMS module in the first system sends the application data of the second application to the cloning module in the first system.
[0038] In this application, for third-party applications, there is a backup and recovery module. The cloning module in the first system sends a data migration instruction to the backup and recovery module through the BMS module. After receiving the data migration instruction, the backup and recovery module in the third-party application collects the application data and sends the application data to the cloning module through the BMS module, thereby realizing the backup of the application data in the third-party application.
[0039] As another implementation of the first aspect, the first application includes a third application, which is an application developed by the manufacturer of the electronic device; the second information includes identification information of the application data of the third application;
[0040] The cloning module in the first system sends the data migration instruction to the first application in the first system, including:
[0041] The cloning module in the first system sends the data migration instruction to the decoupling module of the third application in the first system;
[0042] Accordingly, after receiving the data migration instruction, the first application in the first system sends its application data to the cloning module in the first system, including:
[0043] After receiving the data migration instruction, the decoupling module of the third application in the first system sends the application data of the third application to the cloning module in the first system.
[0044] In this application, for the self-developed application, there is a decoupling module. The cloning module in the first system sends a data migration instruction to the decoupling module, so that after receiving the data migration instruction, the decoupling module in the self-developed application collects the application data and sends the application data to the cloning module, thereby realizing the backup of the application data in the self-developed application.
[0045] As another implementation of the first aspect, restoring the first information of the first application in the first application installed on the second system includes:
[0046] The data migration module in the second system sends the application data of the first application to the storage module in the second system, and the application data of the first application carries the second information.
[0047] The storage module in the second system stores the application data of the first application and obtains the storage address of the application data of the first application. The storage module in the second system sends the storage address of the application data of the first application to the data migration module in the second system.
[0048] After receiving the storage address of the application data of the first application, the data migration module in the second system generates a data recovery instruction, which includes the storage address of the application data of the first application and the second information.
[0049] The data migration module in the second system sends the data recovery command to the cloning module in the second system;
[0050] After receiving the data recovery instruction, the cloning module in the second system determines that the data to be recovered is the data in the first application based on the data recovery instruction;
[0051] The cloning module in the second system sends the data recovery command to the first application in the second system;
[0052] After receiving the data recovery instruction, the first application in the second system retrieves the application data of the first application from the storage module according to the storage address in the data recovery instruction, and restores the first information of the first application to the first application.
[0053] In this application, after the second system receives the application data sent by the first system, it first stores the application data, then sends the storage address of the application data to the corresponding application through the cloning module, and finally the application restores the application data after obtaining the application data according to the storage address of the application data, thus realizing fast data transmission and recovery.
[0054] As another implementation of the first aspect, the first application includes a second application, which is not an application developed by the manufacturer of the electronic device;
[0055] The cloning module in the second system sends the data recovery command to the first application in the second system, including:
[0056] The cloning module in the second system sends the data recovery command to the BMS module in the second system;
[0057] After receiving the data recovery instruction, the BMS module in the second system determines that the data to be recovered is data from the second application based on the second information in the data recovery instruction;
[0058] The BMS module in the second system sends the data recovery command to the backup and recovery module of the second application in the second system;
[0059] Accordingly, after receiving the data recovery instruction, the first application in the second system retrieves its application data from the storage module according to the storage address in the data recovery instruction. The first application in the second system then restores the first information of the first application to the first application, including:
[0060] After receiving the data recovery instruction, the backup and recovery module of the second application in the second system retrieves the application data of the second application from the storage module according to the storage address in the data recovery instruction, and restores the first information of the second application to the second application.
[0061] In this application, for third-party applications, the cloning module in the second system transmits data recovery instructions to the backup and recovery module of the third-party application through the BMS module, so that the third-party application can use the backup and recovery module to restore application data after receiving the data recovery instructions, thus realizing the recovery of application data.
[0062] As another implementation of the first aspect, the first application includes a third application, which is an application developed by the manufacturer of the electronic device;
[0063] The cloning module in the second system sends the data recovery command to the first application in the second system, including:
[0064] The cloning module in the second system sends the data recovery command to the decoupling module of the third application in the second system;
[0065] Accordingly, after receiving the data recovery instruction, the first application in the second system retrieves its application data from the storage module according to the storage address in the data recovery instruction. The first application in the second system then restores the first information of the first application to the first application, including:
[0066] After receiving the data recovery instruction, the decoupling module of the third application in the second system retrieves the application data of the third application from the storage module according to the storage address in the data recovery instruction, and restores the first information of the third application to the third application.
[0067] In this application, for self-developed applications, the cloning module in the second system transmits data recovery instructions to the decoupling module of the third-party application, so that the self-developed application can use the decoupling module to recover application data after receiving the data recovery instructions, thus realizing the recovery of application data.
[0068] As another implementation of the first aspect, the data migration instruction further includes a data migration instruction for migrating file data from the first system to the second system, wherein the file data includes at least one of images, videos, audio, and text;
[0069] After the first system receives the data migration instruction, the method further includes:
[0070] The first system sends the file data to the second system;
[0071] The second system receives the file data sent by the first system;
[0072] The second system restores the file data to the second system.
[0073] This application provides a method for migrating file data across user spaces, which makes the data migration across user spaces richer.
[0074] As another implementation of the first aspect, before the first system sends the file data to the second system, the method further includes:
[0075] The data migration module in the first system sends the data migration instruction to the cloning module in the first system. The data migration instruction includes third information, which represents the identification information of the file data.
[0076] After receiving the data migration instruction, the cloning module in the first system determines the data to be migrated as the file data based on the third information in the data migration instruction;
[0077] The cloning module in the first system sends the data migration instruction to the file providing module in the first system;
[0078] Upon receiving the data migration instruction, the file providing module in the first system sends the file data to the cloning module in the first system;
[0079] After receiving the file data, the cloning module in the first system sends the file data to the data migration module in the first system.
[0080] Accordingly, the first system sends the file data to the second system, including:
[0081] The data migration module in the first system sends the file data to the data migration module in the second system;
[0082] Accordingly, the second system receives the file data sent by the first system, including:
[0083] The data migration module in the second system receives the file data sent by the first system.
[0084] In this application, for file data, the data migration module in the first system sends a data migration instruction to the file providing module through the cloning module. The file providing module can collect file data and send the file data to the data migration module through the cloning module, so that the data migration module in the first system can send file data to the data migration module in the second system, thereby realizing the migration of file data across user spaces.
[0085] As another implementation of the first aspect, the second system restores the file data to the second system, including:
[0086] The data migration module in the second system sends the file data to the storage module in the second system;
[0087] After receiving the file data, the storage module in the second system stores the file data and obtains the storage address of the file data. The storage module in the second system then sends the storage address of the file data to the data migration module in the second system.
[0088] After receiving the storage address of the file data, the data migration module in the second system generates a data recovery instruction. The data recovery instruction includes the storage address of the file data and the third information. The data migration module in the second system sends the data recovery instruction to the cloning module in the second system.
[0089] After receiving the data recovery instruction, the cloning module in the second system determines that the data to be recovered is the file data according to the data recovery instruction, and sends the data recovery instruction to the file providing module in the second system.
[0090] After receiving the data recovery instruction, the file providing module in the second system obtains the file data from the storage module based on the storage address of the file data in the data recovery instruction, and then restores the file data to the second system.
[0091] In this application, after the second system receives the file data sent by the first system, it first stores the file data. The data migration module in the second system sends the storage address of the file data to the file providing module through the cloning module, so that the file providing module can obtain the file data according to the storage address of the file data and restore the file data, thus completing the restoration of the file data in the second system.
[0092] As another implementation of the first aspect, after the backup and recovery module of the second application in the second system receives the data recovery instruction, the backup and recovery module of the second application in the second system retrieves the application data of the second application from the storage module according to the storage address in the data recovery instruction. After the backup and recovery module of the second application in the second system restores the first information of the second application to the second application, the method further includes:
[0093] The backup and restore module of the second application in the second system sends the data recovery result to the BMS module in the second system. The data recovery result is used to characterize whether the first information of the second application has been successfully restored.
[0094] After receiving the data recovery result, the BMS module in the second system sends the data recovery result to the cloning module in the second system;
[0095] After receiving the data recovery result, the cloning module in the second system sends the data recovery result to the data migration module in the second system.
[0096] After receiving the data recovery result, the data migration module in the second system sends the data recovery result to the data migration module in the first system.
[0097] In this application, after the application data recovery is completed, the backup and recovery module in the second system sends the data recovery result to the cloning module through the BMS, and the cloning module sends the data recovery result to the data migration module of the second system, so that the second system can send the data recovery result to the data migration module of the first system through the data migration module, so that the user can know whether the data migration was successful.
[0098] As another implementation of the first aspect, after the cloning module in the first system receives the application data of the first application, the method further includes:
[0099] The cloning module in the first system stores the application data of the first application and obtains the storage address of the application data of the first application.
[0100] The cloning module in the first system sends the storage address of the application data of the first application to the data migration module in the first system;
[0101] After receiving the storage address of the application data of the first application, the data migration module in the first system obtains the application data of the first application from the cloning module in the first system according to the storage address of the application data of the first application.
[0102] In this application, when transmitting application data in the first system, the cloning module in the first system can first back up the application data after receiving it, obtain the backup address of the application data, and send the backup address to the data migration module so that the data migration module can obtain the application data according to the backup address, thereby making the data transmission speed faster and the data backup process more efficient.
[0103] In a second aspect, an electronic device is provided, including a processor for running a computer program stored in a memory to implement the method of any one of the first aspects of this application.
[0104] Thirdly, a chip system is provided, including a processor coupled to a memory, wherein the processor executes a computer program stored in the memory to implement the method of any one of the first aspects of this application.
[0105] Fourthly, a computer-readable storage medium is provided, which stores a computer program that, when executed by one or more processors, implements the method of any one of the first aspects of this application.
[0106] Fifthly, this application provides a computer program product that, when run on a device, causes the device to perform the method of any one of the first aspects of this application.
[0107] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description
[0108] Figure 1 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application;
[0109] Figure 2 A schematic diagram illustrating a method for data migration across user spaces using another electronic device, provided in an embodiment of this application;
[0110] Figure 3 A schematic diagram illustrating a method for data migration across user spaces using the WeChat application, provided in an embodiment of this application;
[0111] Figure 4 A schematic diagram illustrating a method for data migration across user spaces using Baidu Cloud, provided in an embodiment of this application;
[0112] Figure 5 A schematic diagram of an interface for cross-user space data migration provided in an embodiment of this application;
[0113] Figure 6 A schematic diagram of an architecture for cross-domain data migration provided in an embodiment of this application;
[0114] Figure 7 This is a schematic diagram of the software architecture of a system in an electronic device provided in an embodiment of this application;
[0115] Figure 8 A schematic diagram of another interface for cross-user space data migration provided in an embodiment of this application;
[0116] Figure 9 A schematic diagram illustrating a data backup method for a third-party application in a first system, provided as an embodiment of this application;
[0117] Figure 10 A schematic diagram illustrating a data recovery method for a third-party application in a second system, provided as an embodiment of this application;
[0118] Figure 11 A schematic diagram illustrating a data backup method for a self-developed application in a first system, provided as an embodiment of this application;
[0119] Figure 12A schematic diagram illustrating a data recovery method for a self-developed application in a second system, provided in an embodiment of this application;
[0120] Figure 13 A schematic diagram of another interface for cross-user space data migration provided in an embodiment of this application;
[0121] Figure 14 A schematic diagram illustrating a file data backup method in a first system provided in this application embodiment;
[0122] Figure 15 This is a schematic diagram of a file data recovery method in a second system provided in an embodiment of this application;
[0123] Figure 16 This is a schematic diagram of a backup method for multiple types of data to be migrated in a first system provided in an embodiment of this application;
[0124] Figure 17 This is a schematic diagram of a method for restoring various types of data to be migrated in a second system provided in an embodiment of this application. Detailed Implementation
[0125] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limiting purposes, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details.
[0126] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.
[0127] It should also be understood that in the embodiments of this application, "one or more" refers to one, two, or more; "and / or" describes the relationship between the associated objects, indicating that three relationships can exist; for example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following associated objects have an "or" relationship.
[0128] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," "fourth," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0129] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0130] The cross-user space data migration method provided in this application can be applied to electronic devices such as tablet computers, mobile phones, laptops, ultra-mobile personal computers (UMPCs), netbooks, and personal digital assistants (PDAs). This application does not limit the specific type of electronic device.
[0131] Figure 1 A schematic diagram of an electronic device is shown. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, antenna 1, antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a touch sensor 180K, etc.
[0132] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0133] Processor 110 may include one or more processing units, such as: application processor (AP), modem processor, graphics processing unit (GPU), image signal processor (ISP), controller, memory, video codec, digital signal processor (DSP), baseband processor, and / or neural network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors.
[0134] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to the instruction opcode and timing signals to complete the control of fetching and executing instructions.
[0135] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0136] Internal memory 121 can be used to store executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of electronic device 100 by running the instructions stored in internal memory 121. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system and at least one application program required for a given function (such as sound playback, image playback, etc.).
[0137] In addition, the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc.
[0138] This application does not specifically limit the structure of the execution entity of the cross-user space data migration method. As long as the code containing the cross-user space data migration method of this application is executed, processing can be performed according to the cross-user space data migration method provided in this application. For example, the execution entity of the cross-user space data migration method provided in this application can be a functional module in an electronic device capable of calling and executing programs, or a processing device applied in an electronic device, such as a chip.
[0139] As user demands increase, smart electronic devices become more powerful, and people rely on them more and more. Users can use electronic devices for work, life, and other related activities. For example, users can store data (e.g., documents, videos, audio, images, etc.) on electronic devices or process the stored data. Among the data stored by users, there is some important or confidential data. To ensure the security of important and confidential data, more secure storage methods are needed.
[0140] In response, some electronic devices employ dual systems (also known as dual user spaces) or multiple systems (multi-user spaces). The various systems within these devices are independent and do not communicate with each other. Each system can install applications, store data, etc. For ease of explanation, this application uses an electronic device with two systems as an example, and for illustrative purposes, one system is referred to as the first system and the other as the second system; alternatively, one system is referred to as the main user space and the other as the sub-user space.
[0141] Currently, when two systems exist within an electronic device, due to the independence of the two systems and their location within the same electronic device, data cannot directly interact between them. In other words, data from one system cannot be directly migrated to another. If a user needs to migrate data from one system to another, they must rely on another electronic device or the data transfer capabilities of certain applications to achieve cross-user space data migration, causing inconvenience. Data migration refers to copying or cutting data from one user space to another.
[0142] In one embodiment, such as Figure 2 The method shown is to achieve data migration across user spaces using another electronic device. Figure 2 The first electronic device contains a main user space and a sub-user space. The following is an example of how data in the main user space of the first electronic device needs to be migrated to the sub-user space of the first electronic device.
[0143] Specifically, the user activates the main user space in the first electronic device and shares or sends the migration data to be migrated from the main user space of the first electronic device to the second electronic device. For example, the first electronic device transmits the migration data to the second electronic device via Bluetooth, and the second electronic device stores the migration data after receiving it. The user then activates the sub-user space in the first electronic device and uses the second electronic device to share or send the stored migration data to the sub-user space of the first electronic device. This ensures that the sub-user space of the first electronic device contains the data migrated from the main user space of the first electronic device, achieving the purpose of transferring data from the main user space to the sub-user space within an electronic device. If data needs to be migrated from the sub-user space to the main user space in the first electronic device, the data can also be transferred using the second electronic device in the same way, which will not be elaborated further here.
[0144] In another embodiment, a method for data migration across user spaces is achieved by leveraging the data transmission function of an application in an electronic device. Figure 3 The electronic device contains a main user space and a sub-user space. The main user space contains a first WeChat application, which logs in using a first account. The sub-user space contains a second WeChat application, which logs in using a second account.
[0145] Specifically, when a user is using the main user space of an electronic device, they open the first WeChat application and send the migration data to be migrated to the second account within that application. After entering the sub-user space and opening the second WeChat application, the user receives the migration data sent by the first account. This creates a space within the sub-user space containing the migration data sent from the main user space, thus achieving the goal of transferring data from the main user space to the sub-user space within an electronic device. Of course, in actual use, applications other than WeChat can also be used for cross-user space data migration, such as QQ or DingTalk.
[0146] In another embodiment, such as Figure 4 The method shown is to achieve cross-user space data migration using Baidu Cloud. Figure 4 Electronic devices contain a main user space and sub-user spaces. When a user uses the main user space of an electronic device, the migration data to be migrated is uploaded to Baidu Cloud via Baidu Netdisk for storage. When a user uses the sub-user space of an electronic device, the migration data is downloaded from Baidu Cloud via Baidu Netdisk, allowing the sub-user space to obtain the migration data migrated from the main user space, thus achieving the purpose of transferring data from the main user space to the sub-user space within an electronic device.
[0147] Therefore, existing methods for cross-user space data migration all require the use of another electronic device or the introduction of other accounts for data transfer. Using another electronic device results in low data transfer efficiency, while introducing other accounts raises concerns about data security. Furthermore, data transfer using cloud storage involves communication between the electronic device and the server, leading to low efficiency. Moreover, when migrating across user spaces using another electronic device or leveraging the data transfer capabilities of certain applications, only images or videos can be transferred between the two systems; locally cached application data and settings data cannot be transferred. Additionally, current methods for cross-user space data migration do not support batch data transfer, resulting in low data transfer efficiency and relatively low security.
[0148] Therefore, in order to achieve direct data transmission between two systems within the same electronic device, this application proposes a cross-user space data migration method that enables cross-user space data migration on a single device without the need for additional accounts or servers. Specifically, as follows... Figure 5 As shown, the electronic device displays during use. Figure 5 (a) of the interface, Figure 5 The interface (a) displays "Remove Data" and "Import Files" options. Users who need to migrate data across user spaces can click either the "Remove Data" or "Import Files" option. In response to the user clicking the "Remove Data" option, the electronic device displays... Figure 5 (b) of the interface, Figure 5 Interface (b) displays the data categories that can be migrated across user data, such as images, videos, audio, text, third-party applications, and self-developed applications. Users can then... Figure 5 In the (b) interface, select the data category that needs to be migrated, for example, such as Figure 5 In interface (b), after the user clicks on images, videos, third-party applications, and self-developed applications, the options for images, videos, third-party applications, and self-developed applications are selected. In response to the user clicking the "OK" option, the electronic device displays... Figure 5 (c) interface, Figure 5 The (c) interface displays movable images, videos, third-party applications, and self-developed applications. Users can... Figure 5 In the (c) interface, select the data to be migrated, for example, such as Figure 5 In interface (c), after the user selects Image 1, Video 1, WeChat, and YOYO, Image 1, Video 1, WeChat, and YOYO are selected. In response to the user clicking the "Migrate" option, the electronic device performs a data migration operation across user spaces.
[0149] Third-party applications are those installed on electronic devices but not developed by the device manufacturer, such as WeChat, Weibo, and Baidu. Self-developed applications are those installed on electronic devices and developed by the device manufacturer, such as the YOYO app.
[0150] Specifically, when multiple systems (user spaces) exist within an electronic device, each system (or user space) is equipped with a data migration module (also called a data migration service or data migration middleware) for cross-user space data transfer. This facilitates data migration across user spaces. For clarity, consider an electronic device with two systems (two user spaces), one called the main user space and the other the sub-user space. A data migration module is configured in the main user space and another in the sub-user space. These data migration modules within the same electronic device can communicate with each other to enable data transfer between different user spaces.
[0151] Taking the migration of data from the main user space to the sub-user space as an example, such as Figure 6As shown, the electronic device backs up the migration data to be migrated from the main user space to the data migration module in the main user space. The data migration module in the main user space sends the migration data to be migrated to the data migration module in the sub-user space. After receiving the migration data sent by the data migration module in the main user space, the data migration module in the sub-user space restores the migration data to the corresponding location for storage. The migration data in this application may include file data, third-party application data, self-developed application data, and system settings data. Among them, file data may include pictures, videos, audio, and text, and the process of migrating file data from one system to another can be a copying process. Third-party application data refers to the data of third-party applications, which may include the installation package, cached data, and application settings data (such as WeChat chat background images), and cached data may include chat history and local cache information (such as cached videos). Self-developed application data refers to the data in self-developed applications, which may include the installation package, cached data, and application settings data. System settings data may include the desktop wallpaper of the electronic device, the display language of the electronic device, the text display font, and the text display font size, etc. The data migration of third-party application data, self-developed application data, and system settings data includes a data backup process and a data recovery process. In the main user space, the third-party application data, self-developed application data, and system settings data are backed up, and then the backed-up data is sent to the sub-user space. Upon receiving the data, the sub-user space restores it within its own space.
[0152] Before introducing the method of this application, the software system of the electronic device involved in the embodiments of this application will be described below. The software system of the electronic device may adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment takes the layered architecture Android system as an example to illustrate the software system of the electronic device.
[0153] Figure 7 This is a block diagram of a software system for an electronic device provided in an embodiment of this application. See also... Figure 7 A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into three layers: the application layer, the system service layer, and the system framework layer, from top to bottom.
[0154] The application layer can include a series of application packages, and it can receive user actions. For example... Figure 7As shown, the application layer can include a settings application, a first application, a second application, a third application, and a fourth application. The first and second applications are self-developed applications, such as the "Intelligent Voice Assistant Application" and the "Smart Life Application." The third and fourth applications are third-party applications installed on the electronic device, such as the "Baidu Application" and the "WeChat Application." Both the first and second applications contain decoupling modules. Both the third and fourth applications contain backup and restore modules (backup agent modules). The decoupling modules and backup agent modules have similar functions, both used to back up and restore data in their respective applications. Specifically, the decoupling module of the first application is used to back up and restore data that can be backed up in the first application. The decoupling module of the second application is used to back up and restore data that can be backed up in the second application. The backup and restore module of the third application is used to back up and restore data in the third application. The backup and restore module of the fourth application is used to back up and restore data in the fourth application. The settings application is a system application used to configure the functions of the electronic device.
[0155] The system service layer may include a data migration module and a cloning module. The data migration module sends data to be migrated from one system to another, enabling cross-user space data migration. The cloning module collects the data to be migrated from the system and stores it, allowing the data migration module to retrieve the data from the cloning module. For example, the cloning module can collect application data and file data. Additionally, the cloning module can process the data to be migrated, such as through compression and encryption.
[0156] The system framework layer may include a backup manager service (BMS) module and a file data provider module (also known as a file provider module). The BMS module is used to transfer data or instructions between the cloning module and the application's backup agent module. For example, the BMS module forwards data backed up in the backup agent module of the first application to the cloning module for processing. The provider module provides stored file data, such as images, audio, video, and text.
[0157] It should be noted that the structure of each system in an electronic device can adopt the above-described approach. Figure 7 The system architecture, for example, both the main user space and the sub-user space adopt the above-mentioned... Figure 7In the system architecture, when data migration occurs between the main user space and the sub-user space, the data migration module in the main user space communicates with the data migration module in the sub-user space to achieve data migration between the two user spaces.
[0158] The following describes a data migration method across user spaces proposed in this application.
[0159] If an application is installed on the first system but not on the second system, the first system can directly send the application's installation package to the second system, allowing the second system to install the application and saving the user the trouble of finding and downloading the installation package themselves. Methods for migrating application installation packages include:
[0160] The first system receives a data migration instruction, which instructs the first system to migrate the installation package of an application (the first application) to the second system. The application can be a third-party application and / or a self-developed application, or other applications.
[0161] The first system sends the application installation package to the second system. All application data can be referred to as application data, which may include the installation package, local cache data (also known as cached data), and application settings data. Local cache data (also known as cached data) and application settings data can also be referred to as "first information."
[0162] After receiving the application installation package sent by the first system, the second system installs the corresponding application in the second system.
[0163] The following section explains the data migration method when the same application is installed in both the first and second systems.
[0164] like Figure 8 As shown, when the user is using the first system, the electronic device displays... Figure 8 (a) of the interface, Figure 8 The interface (a) displays the "Remove Data" option. Users who need to migrate data across user spaces can click the "Remove Data" option. Upon receiving the user's click on the "Remove Data" option, the electronic device displays... Figure 8 (b) of the interface, Figure 8Interface (b) displays the categories of data that can be migrated across user spaces, such as images, videos, audio, documents, third-party applications, and self-developed applications. If a user needs to migrate data from a third-party application, they can click the "Third-Party Applications" option. Upon receiving the user's click on the "Third-Party Applications" option, the third-party application option on the electronic device is selected; the user clicks the "OK" option, and the electronic device displays... Figure 8 (c) interface, Figure 8 The (c) interface displays third-party applications that can be migrated across user spaces, such as WeChat, QQ, and Weibo. Users can select the third-party application for which data needs to be migrated. For example, if a user needs to migrate data from the WeChat application, clicking "WeChat" will select the WeChat application. Figure 8 As shown in (c) above. After the user selects a third-party application, they can click the "Migrate" option. Upon receiving the user's click of the "Migrate" option (data migration operation), the electronic device generates a data migration instruction and sends it to the data migration module in the first system. In actual use, the user can select multiple third-party applications simultaneously to migrate data from multiple applications at the same time. For example, the user can simultaneously select... Figure 8 The “WeChat Application” and “QQ Application” in interface (c) of the program.
[0165] In practical applications, the user selects... Figure 8 After viewing the WeChat application on interface (c), the system can also display the types of data that can be migrated from WeChat, such as WeChat application settings data, WeChat chat history, and local cached data in WeChat, so that users can select the type of data they need to migrate.
[0166] The following is combined Figure 8 This section explains methods for migrating data across user spaces in third-party applications. For example... Figure 9 As shown, Figure 9 The diagram illustrates the process of migrating data across user spaces from a third-party application A (the second application).
[0167] S11, the data migration module in the first system receives a data migration instruction, which includes key information (second information) of the data to be migrated.
[0168] The first system can be either the primary user space or a sub-user space; there are no restrictions here. The data to be migrated is application data from third-party application A.
[0169] For data to be migrated from a third-party application A, key information about the data to be migrated may include the application name or identifier of the third-party application A, the installation time, and the category identifier of the data to be migrated selected by the user. For example, the category identifier for chat logs could be "A1", and the category identifier for application settings data could be "A2", etc. The category identifier can be set as needed.
[0170] S12, the data migration module in the first system sends a data migration instruction to the cloning module in the first system.
[0171] S13, after receiving the data migration instruction, the cloning module in the first system determines, based on the key information in the data migration instruction, that the data to be migrated belongs to a third-party application.
[0172] Specifically, since the key information includes the application name or application identifier of the third application A, the cloning module can determine the application that needs to be migrated based on the application name or application identifier in the key information, query the category to which the application that needs to be migrated belongs, and determine that the application that needs to be migrated belongs to a third-party application; or, the category identifier of the application whose data needs to be migrated is also carried in the key information. The category identifier is used to indicate whether the application whose data needs to be migrated belongs to a third-party application or a self-developed application. For example, if the application whose data needs to be migrated is a third-party application, then the category identifier "1" of the third application is carried in the key information.
[0173] For example, if the key information includes "WeChat," the cloning module can determine that the data in WeChat needs to be migrated based on this information. The cloning module can also determine that WeChat belongs to the category of a third-party application.
[0174] Specifically, after determining that the data to be migrated is from third-party application A, the cloning module can query the data query path of the third-party application to be migrated and write the data query path of third-party application A into the key information of third-party application A in the data migration instruction. For example, if data in WeChat needs to be migrated, the cloning module can query the data query path of WeChat and write the corresponding data query path of WeChat into the corresponding key information of WeChat.
[0175] S14, the cloning module in the first system sends a data migration instruction to the BMS module in the first system.
[0176] S15, after receiving the data migration instruction, the BMS module in the first system determines that the data to be migrated is data from third-party application A based on the key information in the data migration instruction.
[0177] In another embodiment, if the data migration instruction carries a data query path, the BMS module in the first system, after receiving the data migration instruction, can send the data migration instruction to the third-party application A according to the data query path in the data migration instruction.
[0178] S16, the BMS module in the first system sends a data migration instruction to the backup agent module of the third-party application A in the first system.
[0179] S17, after the backup agent module of the third-party application in the first system receives the data migration instruction, the backup agent module retrieves / collects the first data (application data) in the third-party application A. The first data is the data in the third-party application A that can be migrated.
[0180] Specifically, when the key information in the data migration instruction includes the type identifier of the data to be migrated, the backup agent module of the third-party application in the first system collects the first data based on the type identifier of the data to be migrated.
[0181] In this embodiment, the first data may include application settings data, local cache data, chat history, etc. from the third-party application A.
[0182] S18, the backup agent module of the third-party application A in the first system sends the first data to the BMS module in the first system.
[0183] In this embodiment, the backup agent module of third-party application A packages the first data and sends the packaged first data to the BMS module in the first system.
[0184] When packaging the first data, it can also be tagged. The tags contain key information about the first data, allowing the second system to parse it and determine which application the first data should be restored to. This key information is the same as that of the data to be migrated. For example, if the first data is chat history from WeChat, the key information in the first data would be "WeChat".
[0185] S19, after receiving the first data, the BMS module in the first system sends the first data to the clone module in the first system.
[0186] S20, after receiving the first data, the cloning module in the first system backs up the first data and obtains the backup address of the first data.
[0187] Specifically, after receiving the first data, the cloning module can process it, for example, by compressing and / or encrypting it, to obtain processed first data. The cloning module then backs up the processed first data to obtain a backup address. In this embodiment, compressing the first data reduces its storage space usage, thus saving storage space. Furthermore, encrypting the first data ensures its storage and transmission security.
[0188] S21, the cloning module in the first system sends the backup address of the first data to the data migration module of the first system.
[0189] In another implementation, step S20 above can also be: after receiving the first data, the cloning module sends the first data to the data migration module of the first system. Alternatively, the cloning module processes the first data and then sends the processed first data to the data migration module of the first system.
[0190] S22, after receiving the backup address of the first data, the data migration module of the first system retrieves the first data from the cloning module of the first system according to the backup address of the first data.
[0191] Alternatively, after receiving the backup address of the first data, the data migration module of the first system sends a data query command to the cloning module of the first system. The data query command includes the backup address of the first data. After receiving the data query command, the cloning module of the first system queries the first data according to the backup address in the data query command, and then sends the first data to the data migration module of the first system.
[0192] S23, after the data migration module of the first system obtains the first data, the data migration module of the first system sends the first data to the data migration module of the second system.
[0193] In this embodiment, the first data may also be compressed data, encrypted data, or compressed and encrypted data, etc.
[0194] The following is in conjunction with the appendix Figure 10 The process of the second system recovering the first data after receiving the first data is explained.
[0195] S31, the data migration module in the second system receives the first data sent by the data migration module in the first system. The first data is data from third-party application A.
[0196] The first data contains key information about the first data.
[0197] S32, the data migration module in the second system sends the first data to the storage module in the second system so that the storage module in the second system stores the first data and obtains the storage address of the first data. The storage module in the second system then sends the storage address of the first data to the data migration module in the second system.
[0198] S33, the data migration module in the second system receives the storage address of the first data sent by the storage module, and the data migration module in the second system generates a data recovery instruction based on the storage address of the first data.
[0199] The data recovery instruction includes the storage address of the first data and key information about the first data.
[0200] S34, the data migration module of the second system sends a data recovery command to the cloning module in the second system.
[0201] S35, after receiving the data recovery instruction, the cloning module in the second system determines that the first data is data from a third-party application based on the data recovery instruction.
[0202] Specifically, methods for determining that the first data is data from a third-party application include:
[0203] Since the data recovery instruction carries key information about the first data, the cloning module in the second system can determine that the first data is data from a third-party application based on the key information in the first data in the data recovery instruction after receiving the data recovery instruction.
[0204] S36, the cloning module in the second system sends a data recovery command to the BMS module in the second system.
[0205] S37, after receiving the data recovery instruction, the BMS module in the second system determines that the first data is data from third-party application A based on the data recovery instruction.
[0206] In this embodiment, the method by which the BMS module determines that the first data is data from the third-party application A is the same as step S35 described above. Please refer to the description of step S35, which will not be repeated here.
[0207] S38, the BMS module in the second system sends a data recovery command to the backup agent module of the third-party application A to which the first data belongs.
[0208] S39, after receiving the data recovery instruction, the backup agent module of the third-party application A in the second system retrieves the first data from the storage module according to the storage address of the first data in the data recovery instruction, and restores the first data to the third-party application A to obtain the first result information (data recovery result). The first result information is used to characterize whether the first data recovery is successful.
[0209] In this embodiment, after receiving the data recovery instruction, the backup agent module of the third-party application A extracts the key information in the data recovery instruction and verifies the key information to determine whether the first data in the data recovery instruction belongs to its own application data. For example, if the key information of the first data is "WeChat", after receiving the data recovery instruction, the backup agent module of the third-party application A determines that "WeChat" in the key information is its own application name, and thus determines that the first data in the data recovery instruction belongs to its own application data, and can perform recovery processing on the first data.
[0210] S40, the backup agent module of third-party application A in the second system sends the first result information to the BMS module in the second system.
[0211] S41, after receiving the first result information, the BMS module in the second system sends the first result information to the cloning module in the second system.
[0212] S42, after receiving the first result information, the cloning module in the second system sends the first result information to the data migration module of the second system.
[0213] S43, after receiving the first result information, the data migration module in the second system sends the first result information to the data migration module in the first system.
[0214] In this embodiment, after receiving the first result information, the data migration module in the first system sends the first result information to the application layer of the first system for display, so that the user can understand whether the first data migration was successful.
[0215] In the above, after the second system receives the first data, it stores the first data and transmits the storage address of the first data between the various modules of the second system. This can reduce the amount of data transmission and increase the data transmission speed.
[0216] In another possible implementation, the first data can be directly transmitted between the various modules of the second system. Specifically, this includes:
[0217] After executing step S31, the data migration module in the second system generates a data recovery instruction based on the first data, which includes the first data. Steps S34 to S38 are then executed. Upon receiving the data recovery instruction, the backup agent module in the second system extracts the first data from the instruction and recovers it to obtain the first result information. Steps S40 to S43 are then executed.
[0218] When transmitting the first data, if the first data is encrypted and / or compressed, the cloning module in the second system can decrypt and / or decompress the first data.
[0219] Secondly, combining Figure 11 This document describes a method for migrating data across user spaces within a self-developed application. Specifically, it uses the migration of data from self-developed application B (a third-party application) as an example.
[0220] S51, the data migration module in the first system receives a data migration instruction, which includes key information (second information) of the data to be migrated. The data to be migrated is the application data of the self-developed application B.
[0221] In this embodiment, the self-developed application B is the self-developed application that needs to be migrated. Key information about the data to be migrated includes the application name or application identifier of the self-developed application, the type identifier of the data to be migrated (settings data, cached data, etc.), etc.
[0222] S52, the data migration module in the first system sends a data migration instruction to the cloning module in the first system.
[0223] S53, after receiving the data migration instruction, the cloning module in the first system determines that the data to be migrated is the data of the self-developed application B based on the key information in the data migration instruction.
[0224] Specifically, the cloning module determines that the data to be migrated is the data of the self-developed application B based on the key information of the data to be migrated in the data migration instruction.
[0225] S54, the cloning module in the first system sends a data migration instruction to the decoupling module of the self-developed application B.
[0226] S55, after the decoupling module of the self-developed application B in the first system receives the data migration instruction, the decoupling module of the self-developed application B in the first system collects the second data in the self-developed application B, which is the data in the self-developed application B that needs to be migrated.
[0227] The second type of data may include application settings data, local cache data, historical query data, etc.
[0228] S56, the decoupling module of the self-developed application B in the first system sends the second data to the clone module in the first system.
[0229] In this embodiment, the second data includes key information about the second data, so that the second system can determine the location where the second data should be restored after receiving the second data. The key information of the second data is the same as the key information of the data to be migrated in step S51.
[0230] S57, after the cloning module in the first system receives the second data, the cloning module in the first system backs up the second data and obtains the backup address of the second data.
[0231] In another embodiment, after receiving the second data, the cloning module in the first system sends the second data to the data migration module of the first system.
[0232] In another embodiment, after receiving the second data, the cloning module in the first system processes the second data, for example, by compressing and / or encrypting it, to obtain processed second data. The cloning module in the first system then sends the processed second data to the data migration module of the first system.
[0233] In another embodiment, after receiving the second data, the cloning module in the first system processes the second data to obtain processed second data. The cloning module in the first system then backs up the processed second data to obtain the storage address of the second data.
[0234] S58, the cloning module in the first system sends the backup address of the second data to the data migration module in the first system.
[0235] S59, after receiving the backup address of the second data, the data migration module in the first system reads the second data from the cloning module of the first system according to the backup address of the second data.
[0236] S60, after the data migration module in the first system obtains the second data, the data migration module in the first system sends the second data to the data migration module in the second system.
[0237] In another embodiment, if the data migration module in the first system receives the second data sent by the cloning module, the data migration module in the first system directly sends the second data to the data migration module in the second system.
[0238] In another embodiment, if the data migration module in the first system receives the processed second data sent by the cloning module, the data migration module in the first system sends the processed second data to the data migration module in the second system after receiving the processed second data.
[0239] The following is in conjunction with the appendix Figure 12 The process of restoring the second data after the second system receives the second data is explained.
[0240] S61, the data migration module in the second system receives the second data sent by the data migration module in the first system.
[0241] S62, the data migration module in the second system sends the second data to the storage module in the second system, the storage module stores the second data and obtains the storage address of the second data, and the storage module in the second system sends the storage address of the second data to the data migration module in the second system.
[0242] S63, the data migration module in the second system receives the storage address of the second data sent by the storage module, and generates a data recovery instruction based on the storage address of the second data. The data recovery instruction includes the storage address of the second data and key information of the second data.
[0243] S64, the data migration module in the second system sends a data recovery command to the cloning module in the second system.
[0244] S65, after receiving the data recovery instruction, the cloning module in the second system determines that the second data belongs to the data in the self-developed application B based on the key information in the second data in the data recovery instruction.
[0245] In this embodiment, since the data recovery instruction contains key information about the second data, including the application name or application identifier of the self-developed application B, the second data can be determined to be data of the self-developed application B based on the key information, and thus the second data should be recovered to the self-developed application B.
[0246] S66, the cloning module in the second system sends a data recovery command to the decoupling module of the self-developed application B.
[0247] S67, after receiving the data recovery instruction, the decoupling module of the self-developed application B in the second system obtains the second data from the storage module according to the storage address of the second data, restores the second data to the self-developed application B, and obtains the second result information (data recovery result). The second result information indicates whether the second data recovery is successful or the second data recovery fails.
[0248] S68, the decoupling module of the self-developed application B in the second system sends the second result information to the cloning module in the second system.
[0249] S69, after receiving the second result information, the cloning module in the second system sends the second result information to the data migration module in the second system.
[0250] S70, after receiving the second result information, the data migration module in the second system sends the second result information to the data migration module in the first system.
[0251] In this embodiment, after receiving the second result information, the data migration module in the first system sends the second result information to the application layer in the first system so that the user can understand the migration status of the second data based on the second result information.
[0252] In another possible implementation, the second data can be directly transmitted between the various modules of the second system. Specifically, this includes:
[0253] After executing step S61, the data migration module in the second system generates a data recovery instruction based on the second data, which includes the second data. Steps S64 to S66 are then executed. Upon receiving the data recovery instruction, the decoupling module in the second system extracts the second data from the instruction and recovers it to obtain the first result information. Steps S68 to S70 are then executed.
[0254] When transmitting the second data, if the second data is encrypted and / or compressed, the cloning module in the second system can decrypt and / or decompress the second data.
[0255] Finally, combining Figure 13 This application describes a method for migrating file data across user spaces. File data in this application can include text, images, videos, and audio, etc. Specifically, file data can be data captured by a camera, data saved by an application, or data obtained from screenshots. For example, when a user chats on WeChat, they save images and text from the chat content; these saved images and text are considered file data. Similarly, when a user browses a webpage using an application, they save the content of the page by taking a screenshot; this saved page content exists in the form of file data.
[0256] like Figure 13 As shown, when the user is using the first system, the electronic device displays... Figure 13 (a) of the interface, Figure 13The interface (a) displays the "Remove Data" option. Users who need to migrate data across user spaces can click the "Remove Data" option. Upon receiving the user's click on the "Remove Data" option, the electronic device displays... Figure 13 (b) of the interface, Figure 13 Interface (b) displays the categories of data that can be migrated across user spaces, such as images, videos, audio, documents, third-party applications, and self-developed applications. If a user needs to migrate file data, they can click one or more of the "Images," "Videos," "Audio," and "Text" options. Upon receiving a user's click on the "Images" and "Videos" options, those options on the electronic device are selected; if the user clicks "OK," the electronic device displays... Figure 13 (c) interface, Figure 13 The (c) interface displays file data that can be migrated across user spaces, such as Image 1, Image 2, Image 3, Video 1, and Video 2. Users can select the images and videos to be migrated. For example, if a user wants to migrate Image 1 and Video 1, clicking on Image 1 and Video 1 will select them. Figure 13 As shown in (c) above. After the user selects Image 1 and Video 1, they can click the "Migrate" option. Upon receiving the user's click of the "Migrate" option (data migration operation), the electronic device generates a data migration instruction and sends the data migration instruction to the data migration module in the first system.
[0257] The following is combined Figure 14 This paper explains the method for migrating file data across user spaces. Specifically, it uses file data C as an example to illustrate the process.
[0258] S71, the data migration module in the first system receives a data migration instruction, which includes key information about the data to be migrated.
[0259] In this embodiment, the key information of the data to be migrated includes the file data format, size, creation date, file number, etc.
[0260] S72, the data migration module in the first system sends a data migration instruction to the cloning module in the first system.
[0261] S73, after receiving the data migration instruction, the cloning module in the first system determines that the data to be migrated is file data C based on the key information in the data migration instruction.
[0262] S74, the cloning module in the first system sends a data migration instruction to the provider module (file provider module).
[0263] S75, after the provider module in the first system receives the data migration instruction, the provider module in the first system collects third data, which is the file data C to be migrated as indicated by the user in the data migration instruction.
[0264] The third data may include text, images, videos, and / or audio.
[0265] S76, the provider module in the first system sends third data to the clone module in the first system.
[0266] In this embodiment, the third data includes key information about the third data so that the second system can determine the location where the third data should be restored after receiving the third data.
[0267] S77, after the cloning module in the first system receives the third data, the cloning module in the first system backs up the third data and obtains the backup address of the third data.
[0268] In another embodiment, after receiving the third data, the cloning module in the first system sends the third data to the data migration module of the first system.
[0269] In another embodiment, after receiving the third data, the cloning module in the first system processes the third data, for example, by compressing and / or encrypting it, to obtain processed third data. The cloning module in the first system then sends the processed third data to the data migration module of the first system.
[0270] In another embodiment, after receiving the third data, the cloning module in the first system processes the third data to obtain processed third data. The cloning module in the first system then backs up the processed third data to obtain the backup address of the second data.
[0271] S78, the cloning module in the first system sends the backup address of the third data to the data migration module in the first system.
[0272] S79, after the data migration module in the first system receives the backup address of the third data, the data migration module in the first system reads the third data from the cloning module of the first system according to the backup address of the third data.
[0273] S80, after the data migration module in the first system obtains the third data, the data migration module in the first system sends the third data to the data migration module in the second system.
[0274] In another embodiment, if the data migration module in the first system receives third data sent by the cloning module, the data migration module in the first system sends the third data to the data migration module in the second system.
[0275] In another embodiment, if the data migration module in the first system receives the processed third data sent by the cloning module, the data migration module in the first system sends the processed third data to the data migration module in the second system after receiving the processed third data.
[0276] The following is in conjunction with the appendix Figure 15 The process of the second system recovering the third data after receiving it is explained.
[0277] S81, the data migration module in the second system receives the third data sent by the data migration module in the first system.
[0278] S82, the data migration module in the second system generates a data recovery instruction based on the third data, and the data recovery instruction includes the third data.
[0279] S83, the data migration module in the second system sends a data recovery command to the cloning module in the second system.
[0280] S84, after receiving the data recovery instruction, the cloning module in the second system determines that the third data belongs to file data C based on the key information of the third data in the data recovery instruction.
[0281] In one embodiment, if the third data is encrypted, the cloning module in the second system needs to decrypt the third data. If the third data is compressed, the cloning module in the second system needs to decompress the third data.
[0282] S85, the cloning module in the second system sends a data recovery command to the provider module in the second system.
[0283] S86, after receiving the data recovery instruction, the provider module in the second system restores the third data to the corresponding file storage location in the second system and obtains the third result information (data recovery result). The third result information indicates whether the third data recovery was successful or failed.
[0284] S87, the provider module in the second system sends the third result information to the clone module in the second system.
[0285] S88, after receiving the third result information, the cloning module in the second system sends the third result information to the data migration module in the second system.
[0286] S89, after receiving the third result information, the data migration module in the second system sends the third result information to the data migration module in the first system.
[0287] In this embodiment, after receiving the third result information, the data migration module in the first system sends the third result information to the application layer in the first system so that the user can understand the migration status of the file data based on the third result information.
[0288] In another possible implementation, after receiving the third data, the data migration module in the second system can also send the third data to the storage module in the second system. The storage module in the second system stores the third data and obtains its storage address. The storage module in the second system then sends the storage address of the third data to the data migration module in the second system. After receiving the storage address, the data migration module generates a data recovery instruction based on the storage address. The data recovery instruction includes the storage address of the third data and key information about the third data. Steps S83 to S85 are then executed. After receiving the data recovery instruction, the provider module in the second system retrieves the third data from the storage module based on its storage address and restores the third data in the second system to obtain the third result information. Steps S87 to S89 are then executed.
[0289] Next, combined Figure 16 This paper describes a method for simultaneously migrating data from third-party applications, self-developed applications, and file data across user spaces.
[0290] S101, the data migration module in the first system receives a data migration instruction. The data migration instruction includes key information about the data to be migrated. The data to be migrated consists of data from third-party application A, data from self-developed application B, and data from file data C.
[0291] S102, the data migration module in the first system sends a data migration instruction to the cloning module in the first system.
[0292] S103, after receiving the data migration instruction, the cloning module in the first system determines the data to be migrated as data from a third-party application, data from the self-developed application B, and file data based on the key information in the data migration instruction.
[0293] S104, when the data to be migrated is data from a third-party application, the data migration module in the first system sends a data migration instruction to the BMS module in the first system.
[0294] Alternatively, the data migration module in the first system sends a first migration instruction to the BMS module in the first system, the first migration instruction including key information about the data of the third-party application A.
[0295] Among them, the key information in the data of third-party application A includes the application name or application identifier of third-party application A.
[0296] S105, after receiving the data migration instruction, the BMS module in the first system determines that the data to be migrated is the data of third-party application A based on the key information in the data migration instruction.
[0297] Alternatively, after receiving the first migration instruction, the BMS module in the first system determines, based on the key information in the first migration instruction, that the data to be migrated is the data of third-party application A.
[0298] S106, the BMS module in the first system sends a data migration instruction to the backup agent module of the third-party application A.
[0299] Alternatively, the BMS module in the first system sends the first migration instruction to the backup agent module of the third-party application A.
[0300] S107, after receiving the data migration instruction, the backup agent module of the third-party application A in the first system collects the first data in the third-party application A.
[0301] S108, the backup agent module of the third-party application A in the first system sends the first data to the BMS module in the first system.
[0302] S109, after receiving the first data, the BMS module in the first system sends the first data to the clone module in the first system.
[0303] S110, after receiving the first data, the cloning module in the first system backs up the first data and obtains the backup address of the first data.
[0304] In this embodiment, after receiving the first data, the cloning module in the first system processes the first data, such as by compression and encryption, to obtain the processed first data. The cloning module in the first system then backs up the processed first data to obtain the storage address of the first data.
[0305] S111, the cloning module in the first system sends the backup address of the first data to the data migration module in the first system.
[0306] S112, after receiving the backup address of the first data, the data migration module in the first system retrieves the first data from the cloning module in the first system according to the backup address of the first data.
[0307] S113, when the data to be migrated is data from the self-developed application B, the cloning module in the first system sends a data migration instruction to the decoupling module of the self-developed application B.
[0308] Alternatively, the cloning module in the first system sends a second migration instruction to the decoupling module of the self-developed application B, the second migration instruction including key information about the data of the self-developed application B.
[0309] S114, after the decoupling module of the self-developed application B in the first system receives the data migration instruction, the decoupling module of the self-developed application B in the first system collects the second data of the self-developed application B, which is the data that needs to be migrated in the self-developed application B.
[0310] S115, the decoupling module of the self-developed application B in the first system sends the second data to the clone module in the first system.
[0311] S116, after receiving the second data, the cloning module in the first system backs up the second data and obtains the backup address of the second data.
[0312] S117, the cloning module in the first system sends the backup address of the second data to the data migration module in the first system.
[0313] S118, after the data migration module in the first system receives the backup address of the second data, the data migration module in the first system retrieves the second data from the cloning module in the first system according to the backup address of the second data.
[0314] S119, when the data to be migrated is file data C, the cloning module in the first system sends a data migration instruction to the provider module in the first system.
[0315] Alternatively, the cloning module in the first system sends a third migration instruction to the provider module in the first system, the third migration instruction including key information about file data C.
[0316] S120, after receiving the data migration instruction, the provider module in the first system collects third data. The third data is the file data C that needs to be migrated.
[0317] S121, the provider module in the first system sends third data to the clone module in the first system.
[0318] S122, after receiving the third data, the cloning module in the first system backs up the third data and obtains the backup address of the third data.
[0319] In this embodiment, after the cloning module in the first system receives the third data, it processes the third data, such as by compression and encryption, to obtain the processed third data. The cloning module in the first system then backs up the processed third data to obtain the backup address of the third data.
[0320] S123, the cloning module in the first system sends the backup address of the third data to the data migration module in the first system.
[0321] S124, after the data migration module in the first system receives the backup address of the third data, the data migration module in the first system retrieves the third data from the cloning module in the first system according to the backup address of the third data.
[0322] S125, after the data migration module in the first system obtains the first data, the second data, and the third data, the data migration module in the first system sends the first data, the second data, and the third data to the data migration module in the second system.
[0323] Specifically, after the data migration module in the first system obtains the first data, the second data, and the third data, it packages the first data, the second data, and the third data to obtain a data packet of data to be migrated. The data migration module in the first system then sends the data packet of data to be migrated to the data migration module in the second system. The data packet includes the first data, the second data, and the third data.
[0324] The first data includes key information, such as the application name or application identifier of third-party application A.
[0325] The second data includes key information such as the application name or application identifier of the self-developed application B.
[0326] The third data includes key information, such as the data type, which can be images, videos, text, audio, etc.
[0327] Finally, combining Figure 17 This document describes the methods for restoring data from third-party applications, self-developed applications, and file data in the second system.
[0328] S201, the data migration module in the second system receives the data packet sent by the data migration module in the first system. The data packet includes first data, second data and third data.
[0329] In another embodiment, the data migration module in the second system receives first data, second data, and third data sent by the data migration module in the first system.
[0330] S202, after receiving the data packet, the data migration module in the second system generates a data recovery instruction based on the data packet. The data recovery instruction includes first data, second data, and third data.
[0331] S203, the data migration module in the second system sends a data recovery command to the cloning module in the second system.
[0332] S204, after receiving the data recovery instruction, the cloning module in the second system parses the data recovery instruction and determines that the first data in the data recovery instruction is data in third-party application A, the second data is data in self-developed application B, and the third data is file data C.
[0333] In this embodiment, if the first data in the data packet is compressed, the cloning module in the second system needs to decompress the first data. If the first data in the data packet is encrypted, the cloning module in the second system needs to decrypt the second data. The processing of the second and third data will not be described in detail here.
[0334] S205, for the first data, the cloning module in the second system sends a data recovery command to the BMS module in the second system.
[0335] Alternatively, the cloning module in the second system sends first data or a first recovery command to the BMS module in the second system, wherein the first recovery command includes the first data.
[0336] S206, After receiving the data recovery command, the BMS module in the second system parses the data recovery command and determines that the first data is the data of the third-party application A.
[0337] S207, the BMS module in the second system sends a data recovery command to the backup agent module of the third-party application A.
[0338] Alternatively, the BMS module in the second system sends the first data or the first recovery command to the backup agent module of the third-party application A.
[0339] S208, after receiving the data recovery instruction, the backup agent module of the third-party application A in the second system restores the first data to the third-party application A and obtains the first result information, which indicates whether the first data has been successfully restored.
[0340] S209, the backup agent module of third-party application A in the second system sends the first result information to the BMS module in the second system.
[0341] S210, after receiving the first result information, the BMS module in the second system sends the first result information to the cloning module in the second system.
[0342] In another embodiment, after receiving the first result information, the cloning module in the second system sends the first result information to the data migration module in the second system.
[0343] S212, for the second data, the cloning module in the second system sends a data recovery command to the decoupling module of the self-developed application B in the second system.
[0344] Alternatively, the cloning module in the second system sends second data or a second recovery command to the decoupling module of the self-developed application B in the second system, wherein the second recovery command includes the second data.
[0345] S213, after receiving the data recovery instruction, the decoupling module of the self-developed application B in the second system restores the second data to the self-developed application B and obtains the second result information, which indicates whether the second data has been successfully restored.
[0346] S214, the decoupling module of the self-developed application B in the second system sends the second result information to the clone module of the second system.
[0347] In another embodiment, the cloning module in the second system sends the second result information to the data migration module of the second system.
[0348] S216, For the third data, the cloning module in the second system sends a data recovery command to the provider module in the second system.
[0349] Alternatively, the cloning module in the second system sends third data or a third recovery instruction to the provider module in the second system, the third recovery instruction including the third data.
[0350] S217, after receiving the data recovery instruction, the provider module in the second system restores the third data to the storage location of the file data in the second system and obtains the third result information, which indicates whether the third data has been successfully recovered.
[0351] S218, the provider module in the second system sends the third result information to the clone module in the second system.
[0352] In another embodiment, the cloning module in the second system sends third result information to the data migration module in the second system.
[0353] S219, the cloning module in the second system sends result information to the data migration module in the second system. The result information includes first result information, second result information and third result information.
[0354] S220, the data migration module in the second system sends the result information to the data migration module in the first system.
[0355] After receiving the result information sent by the data migration module in the second system, the data migration module in the first system sends the result information to the application layer in the first system so that the user can understand the data migration status based on the result information.
[0356] In another feasible approach, the method for simultaneously migrating data from third-party applications, data from self-developed applications, and file data across user spaces can also include:
[0357] Perform the above steps S101 to S109.
[0358] Perform the above steps S113 to S115.
[0359] Perform the above steps S119 to S121.
[0360] After receiving the first data, the second data, and the third data, the cloning module in the system compresses the first data, the second data, and the third data to obtain a data packet of the data to be migrated.
[0361] The cloning module in the first system stores the data packets of the data to be migrated and obtains the storage address of the data packets of the data to be migrated.
[0362] The cloning module in the first system sends the storage address of the data packet to be migrated to the data migration module in the first system.
[0363] After receiving the storage address of the data packet to be migrated, the data migration module in the first system obtains the data packet to be migrated from the cloning module in the first system according to the storage address of the data packet to be migrated.
[0364] The data migration module in the first system sends a data packet containing the data to be migrated to the data migration module in the second system.
[0365] In another possible implementation, after the data migration module in the second system receives the data packet sent by the data migration module in the first system, the data migration module in the second system sends the data packet to the storage module, and the storage module stores the data packet to obtain its storage address. The storage module in the second system then sends the storage address of the data packet to the data migration module in the second system.
[0366] After receiving the storage address of the data packet, the data migration module in the second system generates a data recovery instruction based on the storage address. The data recovery instruction includes the storage address of the data packet, key information about the first data, key information about the second data, and key information about the third data. The storage address of the data packet can include the storage addresses of the first, second, and third data.
[0367] Perform steps S203 to S220 as described above.
[0368] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0369] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, can implement the steps in the above-described method embodiments.
[0370] This application also provides a computer program product that, when run on a first device, enables the first device to implement the steps described in the various method embodiments above.
[0371] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying the computer program code to the first device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0372] This application also provides a chip system, which includes a processor coupled to a memory. The processor executes a computer program stored in the memory to implement the steps of any method embodiment of this application. The chip system can be a single chip or a chip module composed of multiple chips.
[0373] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0374] Those skilled in the art will recognize that the units and method steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0375] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A method for data migration across user spaces, characterized in that, Applied to an electronic device, wherein the electronic device has a first system and a second system, the method includes: The first system receives a data migration instruction, which includes a data migration instruction to migrate application data of a first application in the first system to the second system; the data migration instruction includes second information, which represents the identification information of the application data of the first application. The data migration module in the first system sends the data migration instruction to the cloning module in the first system; The cloning module in the first system determines that the data to be migrated is data from the first application based on the second information in the data migration instruction; The cloning module in the first system sends the data migration instruction to the first application in the first system; After receiving the data migration instruction, the first application in the first system sends the application data of the first application to the cloning module in the first system. After receiving the application data of the first application, the cloning module in the first system sends the application data of the first application to the data migration module in the first system. The data migration module in the first system sends the application data of the first application to the data migration module in the second system. The application data includes the installation package of the first application. The data migration module in the second system receives the application data of the first application sent by the data migration module in the first system; The second system installs the first application in the second system.
2. The method as described in claim 1, characterized in that, The application data further includes first information of the first application, the first information including cached data and / or application settings data of the first application; the method further includes: After the first application is installed in the second system, the first information of the first application is restored in the first application installed in the second system. When the first information includes the cached data, restoring the first information of the first application involves importing the cached data. When the first information includes the application settings data, restoring the first information of the first application involves setting the first application installed in the second system according to the application settings data.
3. The method as described in claim 2, characterized in that, The first system receives a data migration instruction, including: The data migration module in the first system receives the data migration instruction.
4. The method as described in claim 1, characterized in that, The first application includes a second application, which is not an application developed by the manufacturer of the electronic device; the second information includes identification information of the application data of the second application; The cloning module in the first system sends the data migration instruction to the first application in the first system, including: The cloning module in the first system sends the data migration instruction to the backup management service module in the first system; After receiving the data migration instruction, the backup management service module in the first system determines that the data to be migrated is the data in the second application according to the data migration instruction; The backup management service module in the first system sends the data migration instruction to the backup and recovery module of the second application in the first system; Accordingly, after receiving the data migration instruction, the first application in the first system sends its application data to the cloning module in the first system, including: After receiving the data migration instruction, the backup and recovery module of the second application in the first system sends the application data of the second application to the backup management service module in the first system. After receiving the application data of the second application, the backup management service module in the first system sends the application data of the second application to the cloning module in the first system.
5. The method as described in claim 1, characterized in that, The first application includes a third application, which is an application developed by the manufacturer of the electronic device; the second information includes identification information of the application data of the third application. The cloning module in the first system sends the data migration instruction to the first application in the first system, including: The cloning module in the first system sends the data migration instruction to the decoupling module of the third application in the first system; Accordingly, after receiving the data migration instruction, the first application in the first system sends its application data to the cloning module in the first system, including: After receiving the data migration instruction, the decoupling module of the third application in the first system sends the application data of the third application to the cloning module in the first system.
6. The method as described in claim 2, characterized in that, Restore the first information of the first application in the first application installed on the second system, including: The data migration module in the second system sends the application data of the first application to the storage module in the second system, and the application data of the first application carries the second information. The storage module in the second system stores the application data of the first application and obtains the storage address of the application data of the first application. The storage module in the second system sends the storage address of the application data of the first application to the data migration module in the second system. After receiving the storage address of the application data of the first application, the data migration module in the second system generates a data recovery instruction, which includes the storage address of the application data of the first application and the second information. The data migration module in the second system sends the data recovery command to the cloning module in the second system; After receiving the data recovery instruction, the cloning module in the second system determines that the data to be recovered is the data in the first application based on the data recovery instruction; The cloning module in the second system sends the data recovery command to the first application in the second system; After receiving the data recovery instruction, the first application in the second system retrieves the application data of the first application from the storage module according to the storage address in the data recovery instruction, and restores the first information of the first application to the first application.
7. The method as described in claim 6, characterized in that, The first application includes a second application, which is not an application developed by the manufacturer of the electronic device; The cloning module in the second system sends the data recovery command to the first application in the second system, including: The cloning module in the second system sends the data recovery command to the backup management service module in the second system; After receiving the data recovery instruction, the backup management service module in the second system determines that the data to be recovered is data from the second application based on the second information in the data recovery instruction; The backup management service module in the second system sends the data recovery command to the backup and recovery module of the second application in the second system; Accordingly, after receiving the data recovery instruction, the first application in the second system retrieves its application data from the storage module according to the storage address in the data recovery instruction. The first application in the second system then restores the first information of the first application to the first application, including: After receiving the data recovery instruction, the backup and recovery module of the second application in the second system retrieves the application data of the second application from the storage module according to the storage address in the data recovery instruction, and restores the first information of the second application to the second application.
8. The method as described in claim 6, characterized in that, The first application includes a third application, which is an application developed by the manufacturer of the electronic device; The cloning module in the second system sends the data recovery command to the first application in the second system, including: The cloning module in the second system sends the data recovery command to the decoupling module of the third application in the second system; Accordingly, after receiving the data recovery instruction, the first application in the second system retrieves its application data from the storage module according to the storage address in the data recovery instruction. The first application in the second system then restores the first information of the first application to the first application, including: After receiving the data recovery instruction, the decoupling module of the third application in the second system retrieves the application data of the third application from the storage module according to the storage address in the data recovery instruction, and restores the first information of the third application to the third application.
9. The method as described in claim 3, characterized in that, The data migration instruction also includes a data migration instruction for migrating file data from the first system to the second system, wherein the file data includes at least one of images, videos, audio, and text; After the first system receives the data migration instruction, the method further includes: The first system sends the file data to the second system; The second system receives the file data sent by the first system; The second system restores the file data to the second system.
10. The method as described in claim 9, characterized in that, Before the first system sends the file data to the second system, the method further includes: The data migration module in the first system sends the data migration instruction to the cloning module in the first system. The data migration instruction includes third information, which represents the identification information of the file data. After receiving the data migration instruction, the cloning module in the first system determines the data to be migrated as the file data based on the third information in the data migration instruction; The cloning module in the first system sends the data migration instruction to the file providing module in the first system; After receiving the data migration instruction, the file providing module in the first system sends the file data to the cloning module in the first system; After receiving the file data, the cloning module in the first system sends the file data to the data migration module in the first system. Accordingly, the first system sends the file data to the second system, including: The data migration module in the first system sends the file data to the data migration module in the second system; Accordingly, the second system receives the file data sent by the first system, including: The data migration module in the second system receives the file data sent by the first system.
11. The method as described in claim 10, characterized in that, The second system restores the file data to the second system, including: The data migration module in the second system sends the file data to the storage module in the second system; After receiving the file data, the storage module in the second system stores the file data and obtains the storage address of the file data. The storage module in the second system then sends the storage address of the file data to the data migration module in the second system. After receiving the storage address of the file data, the data migration module in the second system generates a data recovery instruction. The data recovery instruction includes the storage address of the file data and the third information. The data migration module in the second system sends the data recovery instruction to the cloning module in the second system. After receiving the data recovery instruction, the cloning module in the second system determines that the data to be recovered is the file data according to the data recovery instruction, and sends the data recovery instruction to the file providing module in the second system. After receiving the data recovery instruction, the file providing module in the second system obtains the file data from the storage module based on the storage address of the file data in the data recovery instruction, and then restores the file data to the second system.
12. The method as described in claim 7, characterized in that, After receiving the data recovery instruction, the backup and recovery module of the second application in the second system retrieves the application data of the second application from the storage module according to the storage address in the data recovery instruction. After restoring the first information of the second application to the second application, the method further includes: The backup and recovery module of the second application in the second system sends the data recovery result to the backup management service module in the second system. The data recovery result is used to indicate whether the first information of the second application has been successfully recovered. After receiving the data recovery result, the backup management service module in the second system sends the data recovery result to the cloning module in the second system; After receiving the data recovery result, the cloning module in the second system sends the data recovery result to the data migration module in the second system. After receiving the data recovery result, the data migration module in the second system sends the data recovery result to the data migration module in the first system.
13. The method as described in claim 1, characterized in that, After the cloning module in the first system receives the application data from the first application, the method further includes: The cloning module in the first system stores the application data of the first application and obtains the storage address of the application data of the first application. The cloning module in the first system sends the storage address of the application data of the first application to the data migration module in the first system; After receiving the storage address of the application data of the first application, the data migration module in the first system obtains the application data of the first application from the cloning module in the first system according to the storage address of the application data of the first application.
14. An electronic device, characterized in that, The electronic device includes a processor for running a computer program stored in a memory to enable the electronic device to perform the method as described in any one of claims 1 to 13.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by one or more processors, implements the method as described in any one of claims 1 to 13.