Data migration method and electronic equipment

By selecting appropriate backup features and transmission methods based on data type, the data migration process is optimized, solving the problems of long migration time and poor convenience, and achieving efficient and convenient data migration.

CN121705239APending Publication Date: 2026-03-20HONOR DEVICE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411219802.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-30
Publication Date
2026-03-20

AI Technical Summary

Technical Problem

In the process of migrating user data, existing technologies suffer from problems such as long migration time and poor convenience, which affect the user experience.

Method used

By determining the data type of the target data, selecting matching data backup features and transmission methods, and performing data backup and transmission, including alternating backup, compressed backup, file backup, local backup, parallel transmission, and other methods, the data migration process is optimized.

Benefits of technology

It enables efficient and convenient data migration, improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121705239A_ABST
    Figure CN121705239A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a data migration method and electronic equipment. In the method, in response to an obtained data migration request triggered for target data, the data type of the target data is determined according to a target data identifier carried in the data migration request, and the data migration request is used for requesting to migrate the target data to other electronic equipment. And according to the data type of the target data, determining a data backup feature and a data transmission mode matched with the target data. And next, performing backup operation on the target data based on the data backup characteristics to generate data to be migrated, and transmitting the data to be migrated to other electronic equipment based on the data transmission mode. The efficient and convenient data migration method is achieved, the data migration performance is improved, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of terminal technology, and in particular to a data migration method and an electronic device. Background Technology

[0002] With the continuous development of terminal technology, the use of electronic devices such as mobile phones, tablets, and smartwatches is becoming increasingly widespread, and the pace of upgrading and replacement of electronic devices is also accelerating. The upgrading and replacement of electronic devices often involves the migration of user data.

[0003] When users handle large volumes of data, data migration is often time-consuming and inconvenient. Providing an efficient and convenient data migration method is crucial to improving data migration performance and user experience. Summary of the Invention

[0004] To address the aforementioned technical problems, this application provides a data migration method and an electronic device. In this method, in response to a data migration request triggered by acquired target data, the data type of the target data is determined based on the target data identifier carried in the data migration request. The data migration request is used to request the migration of the target data to other electronic devices. Based on the data type of the target data, data backup characteristics and data transmission methods matching the target data are determined. Next, a backup operation based on the data backup characteristics is performed on the target data to generate data to be migrated, and based on the data transmission method, the data to be migrated is transmitted to other electronic devices. This method facilitates an efficient and convenient data migration approach, improves data migration performance, and enhances the user experience.

[0005] In a first aspect, embodiments of this application provide a data migration method applied to a first electronic device, wherein the first electronic device is communicatively connected to a second electronic device. The method includes: acquiring a data migration request triggered on target data, the data migration request being used to request the migration of the target data to the second electronic device; determining the data type of the target data based on a target data identifier carried in the data migration request; determining data backup features and data transmission methods matching the target data based on the data type; performing a backup operation on the target data based on the data backup features to generate data to be migrated; and transmitting the data to be migrated to the second electronic device based on the data transmission methods.

[0006] According to the first aspect, the data types of the target data include system application data, third-party application data, and multimedia data; the third-party applications include other applications in the first electronic device besides the system applications.

[0007] Third-party applications are applications developed by third parties and require users to install them on their electronic devices. System applications are applications pre-installed on electronic devices and are built into the electronic device's operating system.

[0008] According to the first aspect, or any implementation of the first aspect above, determining the data backup features matching the target data based on the data type includes: determining the data backup method and data backup time matching the target data based on the data type, as the data backup features.

[0009] According to the first aspect, or any implementation of the first aspect above, determining the data backup method matching the target data based on the data type includes: when the data type indicates that the target data includes the system application data and the third-party application data, determining that the data backup method for the system application data and the third-party application data is an alternating backup method based on a preset data volume unit.

[0010] The first electronic device can employ an alternating backup method based on preset data volume units to optimize the backup process. For example, the first electronic device can set the data volume unit according to device performance, data transfer speed, and storage space; the data volume unit determines the data block size for a single backup operation.

[0011] According to the first aspect, or any implementation of the first aspect above, the step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: when the data type indicates that the target data includes the system application data and the third-party application data, dividing the target data according to the data type to obtain a system application array and a third-party application array; and based on the preset data volume unit and the corresponding data backup method, alternately and cyclically extracting data from the system application array and the third-party application array for backup to generate the data to be migrated.

[0012] According to the first aspect, or any implementation of the first aspect above, the system application data includes decoupled system data; determining the data backup method matching the target data according to the data type includes: when the target data is the decoupled system data, determining the data backup method matching the target data to be a compressed backup method; and performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: when backing up the system application data, extracting the system application data of the preset data volume unit from the system application array; when the system application data is the decoupled system data, packaging the extracted decoupled system data into a compressed file based on the compressed backup method, as the data to be migrated.

[0013] According to the first aspect, or any implementation of the first aspect above, the system application data includes non-decoupled system data; determining the data backup method matching the target data according to the data type includes: when the target data is the non-decoupled system data, determining the data backup feature matching the target data as a file backup method; and performing a backup operation on the target data based on the data backup feature to generate data to be migrated includes: when backing up the system application data, extracting the system application data of the preset data volume unit from the system application array; when the system application data is the non-decoupled system data, converting the extracted non-decoupled system data into a database file based on the file backup method, as the data to be migrated.

[0014] According to the first aspect, or any implementation of the first aspect above, determining the data backup method matching the target data based on the data type includes: when the target data is the third-party application data, determining the data backup method matching the target data as a local backup method; and performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: when backing up the third-party application data, extracting the third-party application data in the preset data volume unit from the third-party application array; based on the local backup method, caching the extracted third-party application data in a preset temporary storage area in the first electronic device as the data to be migrated, wherein the third-party application data includes application installation packages and application usage data.

[0015] According to the first aspect, or any implementation of the first aspect above, determining the data backup method and data backup time matching the target data according to the data type includes: when the data type indicates that the target data includes the multimedia data, determining that the data backup method matching the multimedia data is a local backup method and a backup method for non-multimedia data, wherein the backup method indicates the data backup time for the multimedia data.

[0016] According to the first aspect, or any implementation of the first aspect above, the step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: dividing the target data according to the data type to obtain a multimedia array; and after the backup operation for the non-multimedia data is completed, cyclically extracting multimedia data in a preset data volume unit from the multimedia array, and caching the extracted multimedia data in a preset temporary storage area in the first electronic device based on the local backup method, as the data to be migrated.

[0017] According to the first aspect, or any implementation of the first aspect above, the third-party application data includes application installation packages and application usage data; determining the data transmission method matching the target data according to the data type includes: when the target data is the system application data, the application installation package, and the multimedia data, determining the data transmission method matching the target data to be a file transmission method; and when the target data is the application usage data, determining the data transmission method matching the target data to be a streaming transmission method.

[0018] According to the first aspect, or any implementation of the first aspect above, the step of transmitting the data to be migrated to the second electronic device based on the data transmission method includes: sending the backed-up application installation package as the data to be migrated to the second electronic device via the file transfer method; receiving an installation completion notification for the backed-up application installation package returned by the second electronic device; and in response to the installation completion notification, sending the backed-up application usage data corresponding to the application installation package to the second electronic device via the streaming method.

[0019] According to the first aspect, or any implementation of the first aspect above, the step of transmitting the data to be migrated to the second electronic device based on the data transmission characteristics includes: sending storage path parameters and backed-up multimedia data as the data to be migrated to the second electronic device via the file transfer method, wherein the storage path parameters indicate the target storage path of the backed-up multimedia data in the second electronic device.

[0020] According to the first aspect, or any implementation of the first aspect above, determining the data transmission method matching the target data according to the data type further includes: determining the data transmission method matching the target data further includes a parallel transmission method, the parallel transmission method including a first parallel transmission method based on the file transmission method or the streaming transmission method, and a second parallel transmission method based on the file transmission method and the streaming transmission method.

[0021] According to the first aspect, or any implementation of the first aspect above, the method further includes: after completing the backup operation for the target data, adding the backed-up target data as the data to be migrated to the data to be migrated queue; the step of transmitting the data to be migrated to the second electronic device based on the data transmission characteristics includes: repeatedly performing the following operations: extracting the data to be migrated from the data to be migrated queue, and sending the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics.

[0022] According to the first aspect, or any implementation of the first aspect above, the step of extracting data to be migrated from the data to be migrated queue and sending the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics includes: extracting the data to be migrated from the data to be migrated queue, wherein the data to be migrated includes backed-up system application data, application installation packages, and application usage data; sending the backed-up system application data and / or the application installation packages to the second electronic device based on the first parallel transmission method and the file transmission method; and sending the backed-up application usage data to the second electronic device based on the first parallel transmission method and the streaming transmission method; wherein the data transmission process corresponding to the file transmission method and the streaming transmission method is performed based on the second parallel transmission method.

[0023] According to the first aspect, or any implementation of the first aspect above, the step of extracting the data to be migrated from the data to be migrated queue and sending the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics includes: after the non-multimedia data in the data to be migrated queue has been sent, extracting the backed-up multimedia data from the data to be migrated queue; and sending the backed-up multimedia data to the second electronic device based on the first parallel transmission mode and the file transmission mode.

[0024] According to the first aspect, or any implementation of the first aspect above, the method further includes: after the backed-up multimedia data has been sent, sending a multimedia data scanning notification to the second electronic device.

[0025] Secondly, embodiments of this application provide an electronic device, including: one or more processors, a memory, and one or more computer programs, wherein the one or more computer programs are stored in the memory, and when the computer programs are executed by the one or more processors, the electronic device performs the following steps: obtaining a data migration request triggered on target data, the data migration request being used to request the migration of the target data to another electronic device; determining the data type of the target data based on a target data identifier carried in the data migration request; determining data backup features and data transmission methods matching the target data based on the data type; performing a backup operation on the target data based on the data backup features to generate data to be migrated; and transmitting the data to be migrated to the other electronic device based on the data transmission methods.

[0026] Thirdly, embodiments of this application provide a computer-readable storage medium including a computer program that, when run on an electronic device, causes the electronic device to execute instructions for the method as described in any possible implementation of the first aspect. Attached Figure Description

[0027] Figure 1 This illustration schematically shows a system architecture diagram applicable to the data migration method of this application embodiment;

[0028] Figure 2 This is a schematic diagram of the structure of an electronic device as an example.

[0029] Figure 3 A software architecture block diagram of an electronic device as an example;

[0030] Figure 4 This is a schematic diagram illustrating the module architecture applicable to the data migration method of this application embodiment, as exemplarily shown.

[0031] Figure 5 This is an exemplary flowchart illustrating the process architecture of a first electronic device migrating target data to a second electronic device in an embodiment of this application.

[0032] Figure 6 This is a schematic diagram illustrating the data type division of the target data as an example.

[0033] Figure 7 This is a schematic diagram illustrating a data migration method according to an embodiment of this application;

[0034] Figure 8 This is a schematic diagram illustrating another data migration method according to an embodiment of this application;

[0035] Figure 9 This is a schematic diagram illustrating another data migration method according to an embodiment of this application;

[0036] Figure 10 This is a schematic diagram illustrating the parallel data transmission process of an embodiment of this application. Detailed Implementation

[0037] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0038] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.

[0039] The terms "first" and "second," etc., used in the specification and claims of this application are used to distinguish different objects, not to describe a specific order of objects. For example, "first target object" and "second target object," etc., are used to distinguish different target objects, not to describe a specific order of target objects.

[0040] In the embodiments of this application, the words "exemplarily" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of the words "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.

[0041] In the description of the embodiments in this application, unless otherwise stated, "multiple" means two or more. For example, multiple processing units means two or more processing units; multiple systems means two or more systems.

[0042] Figure 1 The diagram shows a system architecture applicable to the data migration method provided in this application embodiment. The system architecture includes a first electronic device 100 and a second electronic device 200. A communication connection can be established between the first electronic device 100 and the second electronic device 200. The first electronic device 100 can migrate the data to be migrated to the second electronic device 200.

[0043] In some embodiments, the first electronic device 100 may be a sending device for sending data to be migrated to the second electronic device 200. The first electronic device 100 may be, for example, an old device previously used by the user.

[0044] The second electronic device 200 can be a receiving device for receiving data to be migrated, for receiving data to be migrated sent by the first electronic device 100. For example, the second electronic device 200 can be a new device newly used by the user to replace the first electronic device 100.

[0045] For example, the first electronic device 100 and the second electronic device 200 can be electronic devices of the same type or different types. For example, the first electronic device 100 can be a mobile phone, and the second electronic device 200 can be a tablet computer. In addition, the first electronic device 100 and the second electronic device 200 can also be electronic devices of different brands. For example, the first electronic device 100 can be a mobile phone of brand A, and the second electronic device 200 can be a mobile phone of brand B.

[0046] In addition, the embodiments of this application are also applicable to backing up the data to be migrated in the first electronic device 100 to a storage device. Therefore, the second electronic device 200 can also be a storage device for storing the data to be migrated in the first electronic device 100. The storage device can be, for example, a cloud server, a hard drive, or a USB flash drive.

[0047] Alternatively, the first electronic device 100 may be configured with a data migration application. Furthermore, the functionality of this data migration application can also be integrated into other applications.

[0048] This application proposes a data migration scheme applied to a first electronic device. The first electronic device, in response to a data migration request triggered by target data, determines the data type of the target data based on the target data identifier carried in the data migration request. The data migration request is used to request the migration of the target data to a second electronic device. The first electronic device can determine data backup characteristics and data transmission methods matching the target data based on its data type. Next, the first electronic device can perform a backup operation on the target data based on the data backup characteristics to generate data to be migrated, and then transmit the data to be migrated to the second electronic device based on the data transmission method.

[0049] Electronic devices may include mobile phones, tablets, smartwatches, laptops, smart home devices, in-vehicle devices, virtual-real fusion devices, augmented reality devices, netbooks, etc. The embodiments of this application can be applied to various scenarios requiring data migration.

[0050] To better understand the embodiments of this application, the structure of the first electronic device 100 of the embodiments of this application will be described below.

[0051] like Figure 2 The diagram shows the structure of the first electronic device 100. Optionally, the first electronic device 100 can be referred to as a terminal or a terminal device. The specific product form of the first electronic device 100 can be a smart terminal, such as a mobile phone, tablet computer, wearable device, augmented reality / virtual reality device, laptop computer, in-vehicle device, personal digital assistant (PDA), or other electronic devices with data migration capabilities. Specifically, the functional modules involved in this application can be deployed on the DSP chip of the relevant device, specifically as applications or software. A data migration function can be achieved through software installation or upgrades, and through hardware calls and coordination.

[0052] It should be understood that, Figure 2 The first electronic device 100 shown is merely an example of an electronic device, and the first electronic device 100 may have more or fewer components than those shown in the figure, may combine two or more components, or may have different component configurations. Figure 2 The various components shown can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits.

[0053] The first electronic device 100 may include: a processor 110, a memory 200, a mobile communication module 130, a wireless communication module 140, a sensor module 150, a button 160, a motor 161, an indicator 162, a camera 163, and a display screen 164. The sensor module 150 may include pressure sensors, gyroscope sensors, accelerometers, temperature sensors, motion sensors, barometric pressure sensors, magnetic sensors, distance sensors, proximity sensors, fingerprint sensors, touch sensors, ambient light sensors, bone conduction sensors, etc.

[0054] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, memory, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.

[0055] 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.

[0056] The wireless communication function of the first electronic device 100 can be implemented through antenna 1, antenna 2, mobile communication module 130, wireless communication module 140, modem processor, and baseband processor.

[0057] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the first electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be reused to improve antenna utilization.

[0058] The mobile communication module 130 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the first electronic device 100. The mobile communication module 130 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc.

[0059] The wireless communication module 140 can provide solutions for wireless communication applications on the first electronic device 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies.

[0060] In some embodiments, the antenna 1 of the first electronic device 100 is coupled to the mobile communication module 130, and the antenna 2 is coupled to the wireless communication module 140, so that the first electronic device 100 can communicate with the network and other devices through wireless communication technology.

[0061] The first electronic device 100 implements display functions through a GPU, a display screen 164, and an application processor. The processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.

[0062] The display screen 164 is used to display images, videos, etc., and the display screen 164 includes a display panel. In some embodiments, the first electronic device 100 may include one or N display screens 164, where N is a positive integer greater than 1.

[0063] The first electronic device 100 can perform shooting functions through an ISP, camera 163, video codec, GPU, display screen 164, and application processor.

[0064] The ISP (Image Signal Processor) is used to process data fed back from the camera 163. For example, when taking a picture, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, and the camera's photosensitive element transmits the electrical signal to the ISP for processing, transforming it into an image visible to the naked eye. The ISP can also perform algorithmic optimization of image noise, brightness, and skin tone. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In some embodiments, the ISP can be set in the camera 163.

[0065] Camera 163 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into image signals in standard formats such as RGB and YUV. In some embodiments, the first electronic device 100 may include one or N cameras 163, where N is a positive integer greater than 1.

[0066] The camera 163 can be located at the edge of the electronic device, and can be an under-display camera or a pop-up camera. The camera 163 can include a front-facing camera or a rear-facing camera. This application embodiment does not limit the specific location and shape of the camera 163. The first electronic device 100 can include one or more cameras with different focal lengths, such as telephoto cameras, wide-angle cameras, ultra-wide-angle cameras, or panoramic cameras.

[0067] The memory 120 can be used to store computer executable program code, which includes instructions. The processor 110 executes various functional applications and data processing of the first electronic device 100 by running the instructions stored in the memory 120, such as enabling the first electronic device 100 to implement the data migration method in this embodiment. The memory 120 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.). The data storage area may store data created during the use of the first electronic device 100. Furthermore, the memory 120 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.

[0068] A touch sensor, also known as a "touch panel," can be located on the display screen 164. The touch sensor and display screen 164 together form a touchscreen, also called a "touch screen." The touch sensor detects touch operations applied to or near it. The touch sensor can then transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through the display screen 164.

[0069] A pressure sensor is used to sense pressure signals and can convert these signals into electrical signals. In some embodiments, the pressure sensor may be located on the display screen 164. The first electronic device 100 may also calculate the position of a touch based on the detection signal from the pressure sensor.

[0070] A gyroscope sensor can be used to determine the motion attitude of the first electronic device 100. In some embodiments, the angular velocity of the first electronic device 100 about three axes (i.e., the x, y, and z axes) can be determined by the gyroscope sensor.

[0071] An accelerometer can detect the magnitude of acceleration of the first electronic device 100 in various directions (generally three axes). When the first electronic device 100 is stationary, the accelerometer can detect the magnitude and direction of gravity. The accelerometer can also be used to identify the posture of the electronic device, and is applied in applications such as screen orientation switching and pedometers.

[0072] Buttons 160 include a power button, volume buttons, etc. Buttons 160 can be mechanical buttons or touch buttons. The first electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of the first electronic device 100.

[0073] The software system of the first electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This embodiment of the invention uses the layered architecture Android system as an example to exemplify the software structure of the first electronic device 100.

[0074] like Figure 3 The software architecture diagram of the first electronic device 100, as exemplarily illustrated, divides the software into several layers, each with a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into five layers, from top to bottom: the application layer, the application framework layer, the Android runtime, the system layer, and the kernel layer.

[0075] The application layer can include a series of application packages, such as Figure 3 As shown, the application package may include gallery, phone, messaging, data migration applications, etc.

[0076] Data migration applications can be used to provide data migration functionality. Data migration applications include, for example, an application interface and logic modules. The application interface can also be called a user interface.

[0077] The application interface is the medium through which data migration applications interact and exchange information with users, converting the internal form of information into a user-acceptable format. In some embodiments, the application interface of a data migration application may include a data selection interface, a data transfer interface, and a data migration report interface, etc.

[0078] The data selection interface displays a list of target data selected by the user. The data transfer interface displays relevant information when migrating target data from the first electronic device 100 to the second electronic device 200, such as the currently being transferred data type, data transfer progress, data transfer rate, and the time required for data transfer completion. The data migration report interface displays a notification message indicating when the migration operation from the first electronic device 100 to the second electronic device 200 is complete.

[0079] In some embodiments, the logical modules of a data migration application may include a data type differentiation module, a data backup feature determination module, and a data transmission mode decision module.

[0080] The data type differentiation module distinguishes the data type of the target data to be migrated. Data types include, for example, system application data, third-party application data, and multimedia data. Third-party applications can be applications other than system applications in the first electronic device. The data backup feature determination module determines the data backup features matching the target data based on its data type. The data transmission mode decision module determines the data transmission method for transmitting the target data based on its data type.

[0081] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer, including various components and services to support Android development. The application framework layer includes some predefined functions. For example... Figure 3 As shown, the application framework layer may include a window manager, resource manager, content provider, notification manager, and screen management service, etc.

[0082] Window managers are used to manage windowed applications, for example. A window manager can obtain the screen size, determine if a status bar is present, lock the screen, capture screenshots, and perform other actions.

[0083] The file explorer can provide applications with various resources, such as localized strings, icons, images, layout files, video files, etc.

[0084] The system layer includes system libraries and the Android Runtime. System libraries can include multiple functional modules, such as image rendering libraries, image compositing libraries, function libraries, and media libraries. The image rendering library provides image processing functions to help meet various image processing needs.

[0085] The Android runtime consists of the core libraries and the virtual machine. The Android runtime is responsible for scheduling and managing the Android system. The core libraries comprise two parts: one part contains the functionalities that Java calls, and the other part consists of the Android core libraries. The application layer and application framework layer run in the virtual machine, which executes the Java files of the application layer and application framework layer into binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.

[0086] Understandable Figure 3 The components included in the system framework layer, system library, and runtime layer shown do not constitute a specific limitation on the first electronic device 100. In other embodiments of this application, the first electronic device 100 may include more or fewer components than shown, or combine some components, or split some components, or have different component arrangements.

[0087] The kernel layer is the layer between the hardware and the aforementioned software layers. The kernel layer includes at least display drivers, audio drivers, and sensor drivers. Hardware may include devices such as cameras, displays, microphones, processors, and memory.

[0088] In the following embodiments, the example is taken where both the first electronic device 100 and the second electronic device 200 are mobile phones, and the purpose of convenient phone switching is achieved through data migration.

[0089] Figure 4 A schematic diagram of the module architecture applicable to the data migration method provided in the embodiments of this application.

[0090] like Figure 4 As shown, the first electronic device runs a UI process and a service process. The UI process is responsible for handling the user interface, managing user input and display output. The UI process may include, for example, a connection module, a session management module, a transmission client module, and a data backup module. The service process runs in the system background, responsible for performing system tasks or operations that applications need to perform continuously for extended periods.

[0091] UI processes and service processes typically need to work together. For example, the UI process can communicate with the service process via AIDL (Android Interface Definition Language) calls. For instance, when a user triggers an operation (such as file upload) on the application interface, the UI process passes the request to the service process, which then performs the actual upload operation in the background and sends the upload result back to the UI process to update the user interface.

[0092] The first electronic device can be configured with a data migration application, which enables the migration of target data from the first electronic device to a second electronic device. The second electronic device can be a new device that performs the data migration with the first electronic device. The second electronic device also runs a UI process and service processes, such as a connection module, a session management module, a transmission server module, and a data recovery module.

[0093] Once the data migration application is opened, the display interface of the first electronic device may include a first area, a second area, and other areas. The first area may include an old device selection control, and the second area may include a new device selection control. In response to receiving a touch operation on the old device selection control, the first electronic device may scan for connectable candidate devices, including, for example, the second electronic device. Furthermore, the first electronic device may also receive a target connection code transmitted by the second electronic device. This target connection code is used to uniquely identify the current connection and may be, for example, a PIN code.

[0094] After scanning for a connectable second electronic device, or receiving a target connection code transmitted by the second electronic device, the connection module in the first electronic device can establish a communication connection with the connection module in the second electronic device. The communication connection may include, for example, WiFi connection, Bluetooth connection, NFC, etc.

[0095] The session management module in the first electronic device and the second electronic device can be used to transmit content such as sessions, service signaling, and socket messages, for example, to transmit basic instructions, data types to be migrated, terminal versions, application versions, heartbeat packets, etc.

[0096] The transmission client module in the first electronic device initiates and manages data transmission with the second electronic device. The transmission server module in the second electronic device receives and processes data transmission requests from the first electronic device. For example, when the first electronic device detects a user confirmation operation based on the "Start Migration" control, the transmission client module establishes a data migration channel with the transmission server module in the second electronic device to transmit the data to be migrated to the transmission server module through the data migration channel. After receiving the migrated data, the transmission server module can send a receipt confirmation or response message to the transmission client module according to the data transmission protocol.

[0097] The data backup module in the first electronic device is used to back up the target data to be migrated. The backed-up target data constitutes the data to be migrated. Target data includes, for example, system application data, third-party application data, and multimedia data. For instance, the data backup module can call a service process to retrieve multimedia data from the media library of the application framework layer FWK and basic key data from FWK's basic database. Basic key data includes, for example, key data such as contacts, SMS messages, call logs, documents, system settings, memos, and calendars. Alternatively, the data backup module can also use the service process to call FWK's FileBackup service to back up the target data.

[0098] The data recovery module in the second electronic device is used to recover data based on the received migrated data. For example, the data recovery module can call a service process, which in turn calls FWK's PMS (Project Management Service) for application installation, and then calls FWK's BMS (Business Management Service) for data recovery.

[0099] For example, Figure 5 This is a flowchart illustrating the process of migrating target data from a first electronic device to a second electronic device, as provided in an embodiment of this application. (Refer to...) Figure 5 As shown, the corresponding data migration method may include the following steps:

[0100] Step S110: The first electronic device establishes a connection with the second electronic device.

[0101] In step S120, the first electronic device obtains a data migration request triggered by the target data. The data migration request is used to request the migration of the target data to the second electronic device.

[0102] In step S130, the first electronic device determines the data type of the target data based on the target data identifier carried in the data migration request.

[0103] In step S140, the first electronic device determines the data backup characteristics and data transmission method that match the target data based on the data type of the target data.

[0104] In step S150, the first electronic device performs a backup operation on the target data based on data backup characteristics to generate data to be migrated.

[0105] In step S160, the first electronic device transmits the data to be migrated to the second electronic device based on the determined data transmission method.

[0106] The steps in the embodiments of this application are illustrated below.

[0107] Step S110: The first electronic device establishes a connection with the second electronic device.

[0108] In some embodiments, both the first electronic device and the second electronic device have a data migration application installed, such as a "swap clone" application, which can be used to interact with the user.

[0109] For example, when a user needs to migrate data from a first electronic device (e.g., an old device) to a second electronic device (e.g., a new device), the user can click the data migration application icon displayed on the main interface of the first electronic device. In response to the user's click on the data migration application icon, the first electronic device displays relevant instructions regarding the data migration function. For example, the first electronic device may display device type selection options, such as "This is a new device" and "This is an old device." In response to the user's click on the "This is an old device" option, the first electronic device displays multiple device types for the user to choose from, such as the Honor old device type (i.e., the type corresponding to when the first electronic device is an Honor device), the Android old device type (i.e., the type corresponding to when the first electronic device is an Android device other than an Honor device), and the iOS old device type (i.e., the type corresponding to when the first electronic device is an iPhone, iPad, or other device using the iOS system).

[0110] In response to a user's click on the device type of the first electronic device, the first electronic device displays a hotspot QR code required to establish a WiFi connection with the second electronic device, along with instructions for the user to perform the connection operation on the second electronic device. The user can align the scanning window of the hotspot QR code displayed on the second electronic device with the hotspot QR code displayed on the first electronic device, allowing the second electronic device to scan the hotspot QR code displayed on the first electronic device, thereby connecting the second electronic device to the hotspot of the first electronic device and establishing a WiFi connection between the two devices.

[0111] Correspondingly, users can also click the data migration application icon displayed on the main interface of the second electronic device, and in response to the user's click on the data migration application icon, the second electronic device displays relevant instructions on the data migration function.

[0112] It should be noted that in practical applications, the interface involved in the connection process between the first electronic device and the second electronic device may include more or less content, and this embodiment does not limit this.

[0113] In other embodiments, the first electronic device and the second electronic device may also be connected using other connection methods besides the WiFi connection described above. For example, the first electronic device and the second electronic device may also establish a connection through NFC or Bluetooth.

[0114] In addition, the first electronic device and the second electronic device can also connect using other connection methods besides scanning QR codes, such as proximity detection or touch detection.

[0115] In step S120, the first electronic device obtains a data migration request triggered by the target data. The data migration request is used to request the migration of the target data to the second electronic device.

[0116] For example, after the first electronic device and the second electronic device successfully establish a connection, the data migration application installed on the first electronic device automatically scans for transferable data in the device and automatically generates a list of transferable data. The main interface of the data migration application displays the list of transferable data so that the user can select the target data to be migrated from the list.

[0117] In response to the user's selection of target data in the list of transferable data, the data migration application triggers the internal backup management module. The backup management module obtains the data information associated with the target data and generates a data migration request, which is used to request the migration of the target data to a second electronic device.

[0118] In some embodiments, the data migration request includes a data identifier for the target data. This data identifier can be a unique identifier used to characterize the target data, such as the filename of the target data. Furthermore, the data migration request may also include metadata of the target data, data integrity verification information, and other settings that may affect the data migration.

[0119] Metadata includes information such as data format, data size, creation and modification dates, file path, permissions, version information, and category tags. Settings that may affect data migration include software dependencies, network settings, hardware dependencies, data synchronization settings, and configuration files. For example, the target data may be closely associated with specific software, applications, or databases. When migrating target data, it is necessary to ensure that the corresponding software or environment is also installed on the second electronic device to ensure correct data reading and use.

[0120] In step S130, the first electronic device determines the data type of the target data based on the target data identifier carried in the data migration request.

[0121] For example, the backup management module determines the data type of the target data based on the target data identifier carried in the data migration request. The data type of the target data may include, for example, system application data, third-party application data, and multimedia data.

[0122] Third-party applications are distinct from system applications. They can be created by third parties and require user installation on the electronic device. System applications, on the other hand, are pre-installed on the electronic device and are built into its operating system. Third-party applications include all other applications present on the electronic device besides system applications.

[0123] Third-party application data includes data from various types of applications, such as social networking apps, shopping apps, and gaming apps. This data can include application installation packages and usage data, such as account data, password data, interaction and social data, personalization settings data, favorites data, and usage history data. For example, for social networking applications, usage history data could include chat logs.

[0124] System application data can include both non-decoupled system data and decoupled system data.

[0125] Non-decoupled system data includes, for example, SMS messages, contacts, and call logs. Non-decoupled system data is characterized by shared storage, cross-application access, and tight coupling. For instance, non-decoupled system data is typically stored in a shared system database and is accessible to multiple applications and services. For example, system applications and third-party applications in a first electronic device may access non-decoupled system data, and the management and access permissions of non-decoupled system data usually need to be controlled at the system level.

[0126] Decoupled system data includes data such as clocks, weather, and settings, while non-decoupled system data features modular design, independent deployment, and low coupling. Taking a clock application as an example, the clock application manages data related to clock functions, such as alarm settings, world clocks, and timers. Data for each clock function is typically stored in a local database or system-provided storage. The clock application can run independently and does not depend on the application data or functional logic of other applications. Other applications can obtain the current time through the system's time API, but they typically do not directly access the clock application's data.

[0127] Multimedia data includes images, videos, audio, and documents.

[0128] In step S140, the first electronic device determines the data backup characteristics and data transmission method that match the target data based on the data type of the target data.

[0129] In step S150, the first electronic device performs a backup operation on the target data based on data backup characteristics to generate data to be migrated.

[0130] For example, the backup management module in the first electronic device determines the data backup method and data backup time that match the target data based on the data type of the target data, as data backup characteristics. The backup management module sends the data backup characteristics that match the target data to the data backup module, and the data backup module performs a backup operation on the target data based on the data backup characteristics to obtain the backed-up target data, which, for example, constitutes the data to be migrated.

[0131] For example, when the data type indicates that the target data includes both system application data and third-party application data, the backup management module determines that the backup method for the system application data and third-party application data is an alternating backup method based on a preset data volume unit. The backup management module uses this alternating backup method based on the preset data volume unit to optimize the backup process. For instance, the backup management module can set the data volume unit according to device performance, data transfer speed, and storage space; the data volume unit determines the data block size for a single backup operation.

[0132] In some embodiments, where the data type indicates that the target data includes system application data and third-party application data, the data backup module divides the target data according to the data type to obtain a system application array and a third-party application array. Data items in each array can be sorted according to preset rules, such as by file size, file priority, or other metrics.

[0133] Next, the data backup module, based on preset data volume units and corresponding data backup methods, alternately and cyclically extracts data from the system application array and the third-party application array for backup, in order to generate data to be migrated.

[0134] For example, the data backup module extracts system application data (in units of a preset data size) from the system application array and backs it up, resulting in the backed-up system application data. After the backup is complete, the data backup module switches to the third-party application array and extracts third-party application data (in units of a preset data size) for backup. The data backup module uses an alternating backup method to gradually complete the backup of all data. This method can effectively balance the backup order of system application data and third-party application data, which helps ensure the synchronization of different types of data in terms of backup time.

[0135] For example, when the target data is decoupled system data, the backup management module determines that the data backup method matching the target data is compressed backup. When backing up system application data, the data backup module extracts system application data from the system application array in a preset data volume unit. When the system application data is decoupled system data, the data backup module packages the extracted decoupled system data into a compressed file based on the compressed backup method, which is then used as the data to be migrated.

[0136] The data backup module can package the extracted decoupled system data into one or more compressed files. This compressed backup method effectively reduces the size of the data to be migrated, improving backup efficiency and data transfer speed during the migration process. It also maintains the data structure relationships of the decoupled system data, facilitating the efficient and secure transfer of the decoupled system data to the second electronic device during migration.

[0137] When the target data is non-decoupled system data, the backup management module determines that the data backup characteristic matching the target data is file backup. When backing up system application data, the data backup module extracts system application data from the system application array in a preset data volume unit. When the system application data is non-decoupled system data, the data backup module, based on the file backup method, converts the extracted non-decoupled system data into a database file as the data to be migrated.

[0138] The data backup module can convert the extracted non-decoupled system data into structured database files to improve the portability and accessibility of the data. For example, the data backup module can map different data items from the non-decoupled system data to corresponding tables or fields in the database, ensuring that the data structure relationships of the non-decoupled system data are maintained. After converting the non-decoupled system data into a database file, the data backup module backs up the database file, obtaining the backed-up non-decoupled system data as the data to be migrated.

[0139] When the target data is third-party application data, the backup management module determines that the data backup method matching the target data is local backup. When backing up third-party application data, the data backup module extracts a preset data volume unit of third-party application data from the third-party application array, and based on the local backup method, caches the extracted third-party application data in a preset temporary storage area on the first electronic device as data to be migrated. Third-party application data includes application installation packages and application usage data.

[0140] The data backup module can prioritize caching extracted third-party application data in the local storage space of the data migration application to reduce network dependencies during the data backup process and improve the backup speed of third-party application data. During the data caching process, the data backup module can organize and optimize the third-party application data, such as removing redundant data, merging small files, and optimizing data structures, to ensure efficient transmission and accurate recovery of third-party application data during the data migration process.

[0141] When the data type indicates that the target data includes multimedia data, the backup management module determines the backup method matching the multimedia data as either a local backup method or a later backup method relative to the non-multimedia data. The later backup method indicates the backup time for the multimedia data.

[0142] The data backup module divides the target data according to data type to obtain a multimedia array. After the backup operation for non-multimedia data is completed, the data backup module cyclically extracts multimedia data in preset data units from the multimedia array, and caches the extracted multimedia data in a preset temporary storage area in the first electronic device based on local backup method, as data to be migrated.

[0143] For example, the backup management module can restrict multimedia data backup to occur only after non-multimedia data backup is complete, thus prioritizing the protection of critical system application data and third-party application data. Furthermore, the backup management module can also select appropriate time periods for multimedia data backup operations based on device usage and resource availability.

[0144] Furthermore, the transmission management module in the first electronic device can determine the data transmission method matching the target data based on the data type of the target data. For example, when the target data is system application data, a third-party application installation package, or multimedia data, the transmission management module determines the data transmission method matching the target data to be file transfer. When the target data is application usage data of a third-party application, the transmission management module determines the data transmission method matching the target data to be streaming.

[0145] In step S160, the first electronic device transmits the data to be migrated to the second electronic device based on the determined data transmission method.

[0146] The data transmission module in the first electronic device can transmit the backed-up target data as the data to be migrated to the second electronic device based on the determined data transmission method.

[0147] The data transmission module can transfer backed-up system application data, application installation packages, and multimedia data to a second electronic device via file transfer.

[0148] System application data typically includes system-level configuration files, system logs, and user settings. System application data plays a crucial role in the normal operation of the system, exhibiting strong stability and dependency. Although the data volume is relatively small, its importance is relatively high.

[0149] Application installation packages (such as .apk and .ipa files) typically contain the complete binary files, resource files, and metadata required for installation of third-party applications. Application installation package files are usually large in size and need to be installed and run correctly on the target device.

[0150] Multimedia data, including images, videos, audio, and documents, typically occupies a large amount of storage space, has diverse data formats, and requires a high degree of continuity and integrity in the data transmission process.

[0151] File transfer solutions are typically used to transfer complete files or large blocks of data. Commonly used file transfer protocols include FTP (File Transfer Protocol), SFTP (SSH File Transfer Protocol), and HTTP / HTTPS. File transfer solutions can efficiently handle large and diverse data volumes, significantly reducing data transfer time when transferring large application installation packages and multimedia files. File transfer solutions can encrypt system application data and sensitive files during transmission, contributing to a high level of data security. Furthermore, file transfer solutions offer various transmission optimization strategies, making data transfer more flexible and efficient, adaptable to different data types and network environments.

[0152] Third-party application usage data includes user operation logs, preference settings, cache files, etc., which are characterized by strong continuity and large data volume. The data transmission module can transmit the backed-up application usage data as a data stream through a pipe to the entry point of the DStream transmission channel. The DStream transmission channel performs real-time direct streaming of the backed-up application usage data. After receiving the data stream transmitted through the DStream transmission channel, the data migration application in the second electronic device can pass the data stream to the BMS (Backup Management Service) interface in the second electronic device. The BMS interface can parse and process the received data stream and restore the corresponding data to the corresponding third-party application.

[0153] In some embodiments, the data transmission module can send the backed-up application installation package as migration data to the second electronic device via file transfer. Furthermore, the data transmission module can also receive an installation completion notification for the backed-up application installation package from the second electronic device, and in response to the installation completion notification, send the backed-up application usage data corresponding to the application installation package to the second electronic device via streaming.

[0154] The data transmission module can send the storage path parameters and the backed-up multimedia data as the data to be migrated to the second electronic device via file transfer. The storage path parameters indicate the target storage path of the backed-up multimedia data in the second electronic device.

[0155] As an optional embodiment, the data transmission module can allocate data migration tasks to different processes or threads during the data transfer process, thereby processing multiple data transfer tasks in parallel and improving overall data transmission efficiency. Therefore, data transmission methods matching the target data also include parallel transmission methods, which include a first parallel transmission method based on file transfer or streaming, and a second parallel transmission method based on both file transfer and streaming.

[0156] For example, the data transmission module can send data to be migrated to a second electronic device by running data migration tasks. The data transmission module can assign multiple data migration tasks to different threads or processes to achieve parallel processing of multiple data migration tasks and improve the overall transmission efficiency of data migration.

[0157] In some embodiments, after completing the backup operation on the target data, the data backup module can add the backed-up target data as data to be migrated to the migration queue. The data transmission module can perform the following operations in a loop: extract the data to be migrated from the migration queue, and send the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics.

[0158] The data transfer module can extract data to be migrated from the data queue. This data includes backed-up system application data, application installation packages, and application usage data. The data transfer module can send the backed-up system application data and / or application installation packages to the second electronic device based on a first parallel transfer mode and a file transfer mode. Additionally, the data transfer module can also send the backed-up application usage data to the second electronic device based on a first parallel transfer mode and a streaming transfer mode. During data transfer, the data transfer processes corresponding to the file transfer mode and the streaming transfer mode are based on the second parallel transfer mode.

[0159] The first parallel transmission method is mainly for data transmission using a single transmission method, suitable for simultaneously transmitting multiple data items to be migrated based on file transfer or streaming in the same data migration task. The second parallel transmission method is mainly for data transmission using multiple transmission methods, that is, simultaneously transmitting multiple data items to be migrated based on both file transfer and streaming.

[0160] The data transmission module, based on the first parallel transmission scheme, uses file transfer to send the backed-up system application data and / or application installation packages to the second electronic device. That is, the data transmission module uses file transfer to run multiple data migration tasks in parallel, sending multiple preset data units of backed-up system application data and / or application installation packages to the second electronic device.

[0161] The data transmission module, based on the first parallel transmission scheme, uses streaming transmission to send the backed-up application usage data to the second electronic device. That is, the data transmission module uses streaming transmission to run multiple data migration tasks in parallel, sending multiple preset data units of backed-up application usage data to the second electronic device.

[0162] During this process, the data transmission module can also run multiple data migration tasks based on file transfer and streaming transfer methods in parallel, based on the second parallel transmission scheme, so as to send data of different data types to be migrated to the second electronic device in parallel.

[0163] After the non-multimedia data in the data queue to be migrated has been sent, the data transmission module extracts the backed-up multimedia data from the data queue to be migrated, and sends the backed-up multimedia data to the second electronic device based on the first parallel transmission method and the file transfer method. That is, the data transmission module uses the file transfer method to run multiple data migration tasks in parallel, sending multiple preset data units of backed-up multimedia data to the second electronic device.

[0164] After all the backed-up multimedia data has been migrated, the data transmission module sends a multimedia data scan notification to the second electronic device to instruct the second electronic device to scan the multimedia data in the local database.

[0165] In the above embodiments, the functional modules involved in the data migration process, such as the backup management module, data backup module, transmission management module, data transmission module, receiving management module, and data receiving module, can be functional modules built into the data migration application or functional modules provided by the operating system of the electronic device. Such functional modules may be independent of the data migration application. This embodiment does not limit this.

[0166] Figure 6 The diagram illustrates the data type classification of the target data.

[0167] The backup management module in the first electronic device responds to a received data migration request triggered by the target data, and determines the data type of the target data based on the target data identifier carried in the data migration request. For example... Figure 6 As shown, the target data types include system application data, third-party application data, and multimedia data. System application data includes decoupled system data and non-decoupled system data, while third-party application data includes application installation packages and application usage data.

[0168] For example, decoupled system data can be module data of independent core system functions in the first electronic device. For instance, it can be obtained from the independent storage area of ​​a system application via a standard interface provided by the Android system, or from the system settings database of the first electronic device. Decoupled system data may include, for example, data such as clock, weather, and settings.

[0169] Non-decoupled system data can be data closely integrated with the core system functions of the first electronic device. For example, it can be obtained from the system database through system APIs or content providers. Non-decoupled system data includes, for example, data such as SMS messages, contacts, and call logs.

[0170] An application installation package can be the installation file data of a third-party application running on the Android system. An application installation package may include, for example, the third-party application's DEX file, resource files, manifest file, and signing certificate. The DEX file may contain the compiled bytecode of the third-party application, which the Android system can use to run the application. Resource files may contain data such as images, layout files, and string resources related to the third-party application. The manifest file may contain data such as the third-party application's name, icon, permissions, activities, and services. Figure 6 As shown, third-party applications include example applications such as Application 1 and Application 2.

[0171] Application usage data can include various data generated by users when using third-party applications, such as user settings, operation logs, user preferences, cache files, temporary files, favorites data, etc.

[0172] Multimedia data includes, for example, images, videos, documents, and audio data stored in the first electronic device.

[0173] The data backup module in the first electronic device can back up multimedia data, non-decoupled system data, decoupled system data, application installation packages, and application usage data to obtain the backed-up corresponding data. The backed-up corresponding data constitutes the data to be migrated in the data migration task.

[0174] The data transmission module in the first electronic device can use file transfer to send backed-up multimedia data, non-decoupled system data, decoupled system data, and application installation packages to the second electronic device. For example, the data transmission module can use uncompressed parallel direct transmission to send backed-up multimedia data to the second electronic device. Alternatively, the data transmission module can use streaming transmission to send backed-up application usage data to the second electronic device, such as using multi-application parallel streaming direct transmission.

[0175] Figure 7 The diagram illustrates a process diagram of a data migration method. Figure 7 As shown, the data migration process may include the following operations:

[0176] S101, The backup management module in the first electronic device triggers the preparation of migration data items and generates a list of modules to be backed up.

[0177] In response to a data migration request triggered by the target data, the backup management module initiates the preparation of migration data items and generates a list of modules to be backed up. The module type of the modules to be backed up matches the data type of the target data, which may include multimedia data, system application data, and third-party application data.

[0178] S102, The data migration application in the first electronic device performs protocol initialization.

[0179] In response to a data migration request triggered by target data, the data migration application initializes the transport protocol. For example, the data migration application can select a suitable data transfer protocol and parameter configuration based on the data type of the target data. Data transfer protocols include, for example, file transfer protocols and streaming protocols. File transfer protocols include, for example, FTP (File Transfer Protocol), SFTP (SSH File Transfer Protocol), HTTP / HTTPS, etc., while streaming protocols include, for example, TCP (Transmission Control Protocol), UDP (User Datagram Protocol), RTSP (Real-Time Streaming Protocol), etc. Parameter configuration includes, for example, settings for port numbers, API certificates, digital certificates, timeout periods, etc.

[0180] For protocols requiring a handshake (such as TCP and SSL / TLS), data migration applications can also establish a handshake process to achieve a stable and secure connection. Additionally, data migration applications can perform connection testing, transmission path verification, and resource locking during the initialization phase.

[0181] S201, The receiving management module in the second electronic device initializes the data transmission protocol.

[0182] Data transmission protocols include, for example, file transfer protocols and streaming protocols.

[0183] S202, The data migration application in the second electronic device performs protocol initialization.

[0184] S103. The backup management module in the first electronic device divides the list of modules to be backed up into a third-party application list, a system application list, and a multimedia data list according to the module type of the modules to be backed up.

[0185] S104. The data backup module in the first electronic device performs alternating backups of the target data, and after the backup is completed, it transmits the backed-up target data as the data to be migrated to the data transmission channel to obtain the list of data to be migrated.

[0186] The data backup module alternately extracts target data from the third-party application list and the system application list for backup, obtaining the backed-up target data. The data backup module then uses this backed-up target data as the data to be migrated, transmitting it to the data transmission channel to obtain the list of data to be migrated.

[0187] S105. The transmission management module in the first electronic device generates a transmission channel creation notification based on the data type of the data to be migrated.

[0188] S106. In response to the received channel creation notification, the data transmission application in the first electronic device creates a data transmission channel and sends the channel creation notification to the data transmission application in the second electronic device.

[0189] When the data to be migrated is third-party application data, such as application usage data for a third-party application, the data transfer application creates a streaming channel for transmitting the application usage data. The streaming channel can divide the application usage data into small chunks (called "data streams") and send the application usage data from a first electronic device to a second electronic device in the form of a continuous stream.

[0190] When the data to be migrated consists of non-third-party application data and application installation packages for third-party applications, the data transfer application creates a file transfer channel for transmitting these data. A file transfer channel is a communication path used to transfer file data; it can be a physical connection channel or a virtual channel based on a data transmission protocol.

[0191] S107, The data transmission application in the first electronic device reports a callback to the data transmission module that the channel has been successfully created.

[0192] S203. The data transmission application in the second electronic device creates a data transmission channel in response to the received channel creation notification.

[0193] S204, The data transmission application in the second electronic device reports a callback to the receiving management module that the channel has been successfully created.

[0194] S205, The receiving management module in the second electronic device creates a data receiving queue.

[0195] For example, the data receiving queue can be a data structure or buffer in a second electronic device used to manage data received from external devices. It can ensure the orderliness and efficiency of the data migration process by sequentially storing and streaming the data received from external devices. The data receiving queue can be, for example, a first-in, first-out (FIFO) data structure, which can be used to temporarily store data received from external devices until the data is processed or passed to the next stage of system components.

[0196] S108, The data transmission module in the first electronic device reads the list of data to be migrated in a loop and extracts the data to be sent from the list of data to be migrated.

[0197] For example, the data transmission module can read the list of data to be migrated in a loop, and extract data to be migrated in a preset data volume unit from the list of data to be migrated as data to be sent.

[0198] S109, The data transmission module in the first electronic device prepares to send data for non-third-party applications and application installation packages for third-party applications.

[0199] For example, the data transmission module can perform operations such as data filtering, data integrity verification, transmission protocol selection, network environment check, log recording and monitoring, permission verification and access control, and error recovery mechanism preparation to prepare for sending data to non-third-party applications.

[0200] S110. The data migration application in the first electronic device uses file transfer to send non-third-party application data and third-party application installation packages to the data migration application in the second electronic device through the file transfer channel.

[0201] S206. The data migration application in the second electronic device uses file transfer to send non-third-party application data and third-party application installation packages to the data receiving module.

[0202] S207. The data receiving module in the second electronic device receives non-third-party application data and application installation packages of third-party applications, and triggers data recovery.

[0203] For example, non-third-party application data may include decoupled system data and non-decoupled system data. After receiving the compressed file corresponding to the decoupled system data, the data receiving module can store the compressed file in the cache directory of the data migration application and decompress it in the cache directory. After decompression, the data receiving module notifies the corresponding system module in the second electronic device to perform data recovery. After receiving the database backup file corresponding to the non-decoupled system data, the data receiving module can restore the database backup file to the target database instance.

[0204] S111, The data transmission module in the first electronic device prepares to send application data for third-party applications.

[0205] S110. The data migration application in the first electronic device adopts a streaming method to send the application data to the data migration application in the second electronic device through the streaming channel.

[0206] S208. The data migration application in the second electronic device adopts a streaming transmission method to send application usage data to the data receiving module.

[0207] S209. The data receiving module in the second electronic device receives the application usage data and triggers BMS recovery.

[0208] For example, after receiving the stream file corresponding to the application usage data, the data receiving module uses the BMS (Backup Management System) in the second electronic device to decode the received stream file to obtain the data to be written to disk. Furthermore, the data receiving module writes the data to disk into the disk of the second electronic device through the operating system's buffer.

[0209] Figure 8 This diagram illustrates the process of another data migration method. Figure 8 As shown, the data migration process may include the following operations:

[0210] S301, The data transmission module in the first electronic device transmits the application installation package through the Dfile file transfer channel.

[0211] S401, The data receiving module in the second electronic device receives the application installation package through the Dfile channel.

[0212] S402. The data recovery module in the second electronic device installs the application installation package and sends an installation success message to the first electronic device after successful installation.

[0213] S302, The transmission management module in the first electronic device receives the installation success message.

[0214] S303, The transmission management module in the first electronic device starts the streaming transmission channel.

[0215] S304. The data migration application in the first electronic device initializes the protocol and initiates a communication connection with the second electronic device.

[0216] For example, the data migration application can perform transport protocol initialization to establish the necessary communication connection with the second electronic device before the actual data stream is transmitted. Furthermore, the data migration application can perform operations such as protocol handshake, parameter configuration, and security negotiation with the second electronic device, for instance, configuring transmission parameters based on packet size, data transmission rate, and timeout. Additionally, the data migration application can perform initialization operations such as buffer allocation, bandwidth management, test data transmission, and connection confirmation.

[0217] Before the actual data stream is transmitted, the first electronic device and the second electronic device need to establish necessary communication connections, such as network connections, communication protocol connections, session connections, authentication and security connections, and handshake connections. For example, a necessary local area network connection is established between the first and second electronic devices to enable real-time transmission of large amounts of data. Alternatively, a TCP / IP connection or a UDP connection may be established between the first and second electronic devices before the actual data stream is transmitted.

[0218] S305, Data migration application upload connection successful callback in the first electronic device.

[0219] S306, The data transmission module in the first electronic device receives a successful connection callback.

[0220] S403. After the application installation package is installed, the data receiving module in the second electronic device starts the streaming channel.

[0221] S404, The data migration application in the second electronic device performs channel initialization.

[0222] For example, data migration applications can perform channel initialization operations such as connection establishment, transport protocol selection, data flow control, and buffer settings.

[0223] S405, Data migration application upload in the second electronic device successfully connects to the first electronic device.

[0224] S405, The data receiving module in the second electronic device receives a connection success callback.

[0225] S307, The BMS in the first electronic device begins to output a backup output stream of application data.

[0226] S308, the data transmission module in the first electronic device transmits fd to the channel transmission interface and starts direct streaming.

[0227] For example, the data transmission module passes the fd (file descriptor) of the backed-up application usage data to the channel transmission interface to enable the direct transmission of the backed-up application usage data in the form of a data stream.

[0228] S309, The data migration application in the first electronic device sends a data stream through the Dstream channel.

[0229] S407, The data migration application in the second electronic device receives data streams through the Dstream channel.

[0230] S408, The data recovery module in the second electronic device receives the data stream and performs data recovery.

[0231] For example, the data recovery module receives the data stream of application usage data and imports the application usage data into the corresponding third-party application to achieve data recovery of application usage data.

[0232] S310, the transmission management module in the first electronic device closes the streaming transmission channel in response to the completion of data backup.

[0233] S311, The data migration application in the first electronic device destroys the streaming channel and shuts down the data stream.

[0234] S409. The data migration application in the second electronic device timed out and did not receive new data, so a shutdown callback was reported.

[0235] S410, The data receiving module in the second electronic device confirms that data reception is complete.

[0236] Figure 9 This schematically illustrates the process of yet another data migration method. For example... Figure 9 As shown, the data migration process may include the following operations:

[0237] S501, The operating system of the first electronic device sends a data migration request to the data migration client.

[0238] S502, the data migration client of the first electronic device performs protocol initialization.

[0239] S601, The operating system of the second electronic device sends a data migration request to the data migration server.

[0240] S602, the data migration server of the second electronic device performs protocol initialization.

[0241] S503, The data migration client of the first electronic device establishes a communication connection with the data migration server of the second electronic device.

[0242] The first electronic device and the second electronic device can establish a WiFi connection, or they can use other connection methods besides WiFi, such as NFC or Bluetooth.

[0243] In addition, the first electronic device and the second electronic device can establish a connection by scanning a QR code, or they can establish a connection by other methods besides scanning a QR code, such as proximity detection or touch detection.

[0244] S504, The operating system of the first electronic device verifies the local storage space.

[0245] S505, The operating system of the first electronic device obtains a list of multimedia files from the multimedia library.

[0246] For example, when local storage space is available, the operating system can invoke a specific API or service provided by the multimedia library, passing query parameters to the multimedia library to obtain a list of multimedia files in the multimedia library. Query parameters may include, for example, file name, file type, creation time, file size, etc.

[0247] S506, The multimedia library of the first electronic device returns multimedia file information.

[0248] For example, the multimedia library retrieves and returns relevant multimedia file information based on the operating system's request. This multimedia file information includes metadata such as filename, file path, file size, creation time, and format type.

[0249] S507, The operating system of the first electronic device sets the multimedia file list and storage path parameters.

[0250] For example, the operating system generates a multimedia file list based on the received multimedia file information. The multimedia file list indicates the multimedia files to be migrated from the first electronic device. The operating system can also set storage path parameters for the multimedia files, which indicate the target storage path for the multimedia files in the second electronic device. The setting of the target storage path may involve user input or may be automatically selected and generated according to a preset configuration; this embodiment does not limit this.

[0251] S508, the operating system of the first electronic device calls the file direct transfer sending interface to the data migration client.

[0252] S509, the data migration client of the first electronic device sends multimedia files through the Dfile channel.

[0253] For example, the data migration client uses a direct transfer method via the Dfile channel to transmit multimedia files, and the data transmission process may not involve compression / decompression. After receiving the multimedia files, the second electronic device can directly write them to disk at the location indicated by the target storage path set in the first electronic device.

[0254] S510, the data migration client of the first electronic device notifies the operating system of multimedia file sending information.

[0255] S603, The data migration server of the second electronic device writes the multimedia files to disk according to the target storage path.

[0256] For example, the data migration server can directly write multimedia files to disk according to the location indicated by the target storage path, without involving a data recovery process. Alternatively, the multimedia data transfer process can be performed after other types of data transfer are completed.

[0257] S604, the data migration server of the second electronic device notifies the operating system of the multimedia file reception result.

[0258] S511, The data migration client of the first electronic device sends a notification that all multimedia files have been sent to the operating system of the second electronic device.

[0259] S605, The operating system of the second electronic device notifies the multimedia library to perform a data scan.

[0260] For example, after receiving a notification that all multimedia files have been sent, the operating system of the second electronic device can uniformly notify the multimedia library to scan for new files to ensure that the multimedia library displays correctly.

[0261] Figure 10 The diagram illustrates the process of parallel data transmission. For example... Figure 10 As shown, data transmission methods for the data to be migrated include file transfer and streaming. For example, decoupled system data, non-decoupled system data, third-party application installation packages, and multimedia data can be transferred using file transfer. Third-party application usage data can be transferred using streaming.

[0262] Parallel transmission schemes in the data transmission process include a first parallel transmission scheme based on file transfer or streaming, and a second parallel transmission scheme based on both file transfer and streaming.

[0263] like Figure 10 As shown, the first electronic device can use file transfer to transmit at least a portion of the decoupled system data, non-decoupled system data, and third-party application installation packages to the second electronic device in parallel. After the transmission of the decoupled system data, non-decoupled system data, and third-party application installation packages is complete, the first electronic device can use file transfer to transmit multiple multimedia data units of preset data size to the second electronic device in parallel.

[0264] In addition, the first electronic device can use streaming to transmit application usage data of multiple preset data units to the second electronic device in parallel.

[0265] Parallel transmission schemes based on file transfer or streaming methods constitute the first parallel transmission method. The first parallel transmission method is mainly for data transmission using a single transmission method and is suitable for transmitting multiple data to be migrated simultaneously using file transfer or streaming methods in the same data migration task.

[0266] During this period, the data transfer process between application-used data and non-application-used data can be carried out in parallel. A parallel transfer scheme based on file transfer and streaming methods constitutes the second parallel transfer method. The second parallel transfer method is mainly for data transfer using multiple transfer methods, that is, simultaneously transferring multiple pieces of data to be migrated based on file transfer and streaming methods.

[0267] There may be third-party applications that use a large amount of data, and the data transfer process may cover the longest path of data migration.

[0268] As an alternative approach, the degree of parallelism in the data transmission process can be limited based on parameters such as the number of files, file size, the CPU load capacity of the first electronic device, and the data recovery capability of the second electronic device. For example, each data transmission channel can handle a maximum of three concurrent transmission tasks, such as simultaneously transmitting data used by a maximum of three applications.

[0269] It is understood that, in order to achieve the above-mentioned functions, electronic devices include hardware and / or software modules that perform the respective functions. Based on the algorithmic steps of the examples described in the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware 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 in conjunction with the embodiments, but such implementation should not be considered beyond the scope of this application.

[0270] All relevant content of each step involved in the above method embodiments can be referenced from the functional description of the corresponding functional module, and will not be repeated here.

[0271] This embodiment also provides an electronic device, including: one or more processors, a memory, and one or more computer programs, wherein the one or more computer programs are stored in the memory, and when the computer programs are executed by the one or more processors, the electronic device performs the following steps: obtaining a data migration request triggered on target data, the data migration request being used to request the migration of the target data to another electronic device; determining the data type of the target data based on the target data identifier carried in the data migration request; determining data backup features and data transmission methods matching the target data based on the data type; performing a backup operation on the target data based on the data backup features to generate data to be migrated; and transmitting the data to be migrated to another electronic device based on the data transmission method.

[0272] This embodiment also provides a computer storage medium storing computer instructions. When the computer instructions are executed on an electronic device, the electronic device performs the aforementioned method steps to implement the data migration method described in the above embodiment.

[0273] This embodiment also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned steps to implement the data migration method described in the above embodiment.

[0274] In addition, embodiments of this application also provide an apparatus, which may specifically be a chip, component, or module. The apparatus may include a connected processor and a memory; wherein the memory is used to store computer execution instructions, and when the apparatus is running, the processor may execute the computer execution instructions stored in the memory to cause the chip to execute the data migration methods in the above-described method embodiments.

[0275] In this embodiment, the electronic device, computer storage medium, computer program product or chip are all used to execute the corresponding method provided above. Therefore, the beneficial effects that can be achieved can be referred to the beneficial effects of the corresponding method provided above, and will not be repeated here.

[0276] Through the above description of the embodiments, those skilled in the art will understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.

[0277] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another apparatus, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0278] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0279] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0280] Any content in the various embodiments of this application, as well as any content in the same embodiment, can be freely combined. Any combination of the above content is within the scope of this application.

[0281] 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 readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0282] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

[0283] The steps of the methods or algorithms described in conjunction with the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium well known in the art. One exemplary embodiment couples a storage medium to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can reside in an ASIC.

[0284] Those skilled in the art will recognize that the functions described in the embodiments of this application in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any medium that facilitates the transfer of a computer program from one place to another. Storage media can be any available medium that can be accessed by a general-purpose or special-purpose computer.

[0285] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

Claims

1. A data migration method, characterized in that, Applied to a first electronic device, wherein the first electronic device is communicatively connected to a second electronic device, the method includes: Obtain a data migration request triggered on target data, the data migration request being used to request the migration of the target data to the second electronic device; The data type of the target data is determined based on the target data identifier carried in the data migration request; Based on the data type, determine the data backup characteristics and data transmission method that match the target data; Perform a backup operation on the target data based on the data backup characteristics to generate data to be migrated; and Based on the data transmission method, the data to be migrated is transmitted to the second electronic device.

2. The method according to claim 1, characterized in that, The target data includes system application data, third-party application data, and multimedia data. The third-party applications include other applications in the first electronic device besides the system applications.

3. The method according to claim 2, characterized in that, The step of determining the data backup features matching the target data based on the data type includes: Based on the data type, determine the data backup method and data backup time that match the target data, as the data backup characteristics.

4. The method according to claim 3, characterized in that, The step of determining the data backup method matching the target data based on the data type includes: If the data type indicates that the target data includes the system application data and the third-party application data, the data backup method for the system application data and the third-party application data is determined to be an alternating backup method based on a preset data volume unit.

5. The method according to claim 4, characterized in that, The step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: If the data type indicates that the target data includes both system application data and third-party application data, the target data is divided according to the data type to obtain a system application array and a third-party application array; and Based on the preset data volume unit and the corresponding data backup method, data is extracted and backed up alternately from the system application array and the third-party application array to generate the data to be migrated.

6. The method according to claim 5, characterized in that, The system application data includes decoupled system data; determining the data backup method matching the target data based on the data type includes: When the target data is the decoupled system data, the data backup method matching the target data is determined to be a compressed backup method; and The step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: When backing up the system application data, extract the system application data of the preset data volume unit from the system application array; When the system application data is the decoupled system data, the extracted decoupled system data is packaged into a compressed file based on the compression backup method, and used as the data to be migrated.

7. The method according to claim 5, characterized in that, The system application data includes non-decoupled system data; determining the data backup method matching the target data based on the data type includes: When the target data is the non-decoupled system data, the data backup feature matching the target data is determined to be a file backup method; and The step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: When backing up the system application data, extract the system application data of the preset data volume unit from the system application array; In the case where the system application data is the non-decoupled system data, the extracted non-decoupled system data is converted into a database file based on the file backup method, and used as the data to be migrated.

8. The method according to claim 5, characterized in that, The step of determining the data backup method matching the target data based on the data type includes: If the target data is the third-party application data, the data backup method matching the target data is determined to be the local backup method; and The step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: When backing up the third-party application data, the third-party application data in the preset data volume unit is extracted from the third-party application array; Based on the local backup method, the extracted third-party application data is cached in a preset temporary storage area in the first electronic device as the data to be migrated. The third-party application data includes application installation packages and application usage data.

9. The method according to claim 3, characterized in that, The step of determining the data backup method and data backup time matching the target data based on the data type includes: If the data type indicates that the target data includes the multimedia data, the data backup method matching the multimedia data is determined to be either a local backup method or a later backup method relative to the non-multimedia data. The "backup after" method indicates the data backup time for the multimedia data.

10. The method according to claim 9, characterized in that, The step of performing a backup operation on the target data based on the data backup characteristics to generate data to be migrated includes: The target data is divided according to the data type to obtain a multimedia array; and After the backup operation for the non-multimedia data is completed, multimedia data of a preset data volume unit is extracted from the multimedia array in a loop, and based on the local backup method, the extracted multimedia data is cached in a preset temporary storage area in the first electronic device as the data to be migrated.

11. The method according to claim 2, characterized in that, The third-party application data includes application installation packages and application usage data; based on the data type, a data transmission method matching the target data is determined, including: When the target data consists of the system application data, the application installation package, and the multimedia data, the data transmission method matching the target data is determined to be a file transfer method; and If the target data is data used by the application, the data transmission method that matches the target data is determined to be a streaming transmission method.

12. The method according to claim 11, characterized in that, The step of transmitting the data to be migrated to the second electronic device based on the data transmission method includes: The backed-up application installation package is sent to the second electronic device as the data to be migrated using the file transfer method described above. Receive an installation completion notification from the second electronic device for the backed-up application installation package; and In response to the installation completion notification, the backed-up application usage data corresponding to the application installation package is sent to the second electronic device via the streaming method.

13. The method according to claim 11, characterized in that, The step of transmitting the data to be migrated to the second electronic device based on the data transmission characteristics includes: Using the file transfer method, the storage path parameters and the backed-up multimedia data are sent to the second electronic device as the data to be migrated, wherein the storage path parameters indicate the target storage path of the backed-up multimedia data in the second electronic device.

14. The method according to claim 11, characterized in that, Determining a data transmission method matching the target data based on the data type further includes: The data transmission method that matches the target data further includes a parallel transmission method, which includes a first parallel transmission method based on the file transmission method or the streaming transmission method, and a second parallel transmission method based on the file transmission method and the streaming transmission method.

15. The method according to claim 14, characterized in that, The method further includes: After the backup operation for the target data is completed, the backed-up target data is added to the migration queue as the data to be migrated. The step of transmitting the data to be migrated to the second electronic device based on the data transmission characteristics includes: The following operations are performed in a loop: extract the data to be migrated from the queue of data to be migrated, and send the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics.

16. The method according to claim 15, characterized in that, The step of extracting the data to be migrated from the queue of data to be migrated, and sending the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics, includes: Extract the data to be migrated from the queue of data to be migrated. The data to be migrated includes backed-up system application data, application installation packages, and application usage data. Based on the first parallel transmission method and the file transmission method, the backed-up system application data and / or the application installation package are sent to the second electronic device; Based on the first parallel transmission method and the streaming transmission method, the backed-up application usage data is sent to the second electronic device; The data transmission process corresponding to the file transfer method and the stream transfer method is based on the second parallel transfer method.

17. The method according to claim 15, characterized in that, The step of extracting the data to be migrated from the queue of data to be migrated, and sending the extracted data to be migrated to the second electronic device based on the corresponding data transmission characteristics, includes: After the non-multimedia data in the data queue to be migrated has been sent, the backed-up multimedia data is retrieved from the data queue to be migrated; and Based on the first parallel transmission method and the file transfer method, the backed-up multimedia data is sent to the second electronic device.

18. The method according to claim 17, characterized in that, The method further includes: After the backed-up multimedia data has been sent, a multimedia data scan notification is sent to the second electronic device.

19. An electronic device, characterized in that, include: One or more processors, memory, and one or more computer programs, wherein the one or more computer programs are stored in the memory, and when the computer programs are executed by the one or more processors, cause the electronic device to perform the following steps: Obtain a data migration request triggered on target data, the data migration request being used to request the migration of the target data to other electronic devices; The data type of the target data is determined based on the target data identifier carried in the data migration request; Based on the data type, determine the data backup characteristics and data transmission method that match the target data; The target data is backed up based on the data backup characteristics to generate data to be migrated; as well as Based on the data transmission method, the data to be migrated is transmitted to the other electronic devices.

20. A computer-readable storage medium, characterized in that, Includes a computer program that, when run on an electronic device, causes the electronic device to perform the data migration method as described in any one of claims 1 to 18.