Data transfer method, device and storage medium
By detecting the state status and data effectiveness, the data to be transferred to the root system will be automatically transferred to the target system, which solves the problem of data loss after the single system is upgraded to the dual system, and realized the automatic transfer of the data and the improvement of the user experience.
Patent Information
- Application Number
- CN202010426148.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-05-19
- Publication Date
- 2025-01-28
- Estimated Expiration
- 2040-05-19
AI Technical Summary
After upgrading a single system to a dual system, users cannot directly obtain the original single system data, resulting in data loss and poor user experience.
Provide a data transfer method and device. By detecting the state status and data effectiveness, the data to be transferred to the target system will be automatically transferred to the target system when meeting specific conditions.
When the single system is upgraded to the dual system, the single system data is automatically transferred to the target system, the data loss is avoided, the user experience is improved, and the upgrade process is simplified.
Smart Images

Figure CN112817932B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of terminal technology, and in particular to a data transfer method, device and storage medium. Background Art
[0002] Currently, most terminals on the market use a single system. Based on the promotion and use of dual-system mobile phones in the industry, in order to allow users to experience the new functions brought by the dual system, the single-system version can be directly upgraded to the dual-system version through version upgrades.
[0003] However, after upgrading from a single system to a dual system, the original single system data is placed under the root system of the dual system, and the life system and work system directly used by the user cannot directly obtain the original single system data in the root system. That is, for the user, the original single system data is lost, which brings a bad experience to the user.
[0004] In order to solve the above problems and provide users with a better upgrade experience, it is necessary to save the original single system data to the system directly used by the user in the dual system. The commonly used method is to use the backup and restore function to back up the single system data before the system upgrade, and then perform the restore operation in the system directly used by the user after the upgrade.
[0005] The above solutions require additional operations for backup and recovery by the user and are time-consuming. The single system data that can be recovered is also very limited, and additional space is required to store the backup data. Summary of the invention
[0006] The present application provides a data transfer method, device and storage medium to automatically transfer data to one of the dual systems.
[0007] In a first aspect, an embodiment of the present application provides a data transfer method, comprising:
[0008] After receiving the dual system startup command, check the system status and data validity;
[0009] When the system status and data validity meet the data transfer conditions, the data to be transferred in the root system is transferred to the target system.
[0010] In a second aspect, an embodiment of the present application provides a data transfer device, comprising:
[0011] The detection module is configured to detect the system status and data validity after receiving the dual system startup instruction;
[0012] The transfer module is configured to transfer the data to be transferred in the root system to the target system when the system status and data validity meet the data transfer conditions.
[0013] In a third aspect, an embodiment of the present application provides a terminal, the terminal comprising:
[0014] one or more processors;
[0015] a memory for storing one or more programs,
[0016] When the one or more programs are executed by the one or more processors, the one or more processors implement any one of the methods in the embodiments of the present application.
[0017] In a fourth aspect, an embodiment of the present application provides a storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, any one of the methods in the embodiments of the present application is implemented.
[0018] With regard to the above embodiments and other aspects of the present application and their implementation, further description is provided in the accompanying drawings, detailed description and claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 A flowchart of a data transfer method provided in this application;
[0020] Figure 2 It is a structural diagram of the process of transferring user data from a single system to a dual system provided in the application;
[0021] Figure 3 This is the flowchart of upgrading a single system to a dual system provided by this application;
[0022] Figure 4 is a flow chart of a method provided by the present application for determining whether a data transfer condition is met;
[0023] Figure 5 A schematic diagram of the structure of a data transfer device provided by the present application;
[0024] Figure 6 It is a structural diagram of a terminal provided by this application. DETAILED DESCRIPTION
[0025] In order to make the purpose, technical solution and advantages of the present application more clear, the embodiments of the present application will be described in detail below with reference to the accompanying drawings. It should be noted that the embodiments and features in the embodiments of the present application can be combined with each other arbitrarily without conflict.
[0026] The steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions. Also, although a logical sequence is shown in the flowchart, in some cases, the steps shown or described can be performed in a sequence different from that shown here.
[0027] First, the dual system is briefly explained in this application.
[0028] As the functions of smart terminals continue to enrich, smart terminals play an indispensable role in people's daily lives and involve a lot of sensitive information and data, including personal privacy, payment security, etc. Therefore, in order to meet the needs of security and other aspects, mobile phones with dual-system architecture came into being.
[0029] A smart terminal has two user-visible systems at the same time, and work and life are independent of each other. The system currently displayed on the terminal screen is the foreground system, and the other is the background system. The background system is also in operation and can receive messages, etc. In addition, users can easily switch between the two systems, which not only meets the needs of users for non-interference in life and work, but is also convenient and quick to use.
[0030] At present, dual-system terminals use container technology, share a kernel, and support the operation of two systems through lightweight virtualization technology. The life system and the work system are isolated at the operating system layer, and the root file systems, processes and networks of the two systems are completely isolated. The dual-system terminal architecture consists of three systems: a root system, a work system, and a life system. When the terminal is started, the root system is started first, and then the root system prepares the respective file systems for the work system and the life system. Finally, the root system starts the work system and the life system through container technology. The root system will be responsible for overall management, control system switching, and coordinate the collaborative work of the work system and the life system.
[0031] The location of the root system data area in the dual system is actually the same as the location of the single system data area, while the data areas of the life system and the working system are created by the root system for them and have their own storage locations. Therefore, if you need to keep the single system data in the life system, you just need to transfer the user data in the single system data area to the life system data area. Similarly, if you need to keep the single system user data in the working system, you just need to transfer the user data in the single system data area to the working system data area.
[0032] After a single system is upgraded to a dual system, the single system data is actually in the data area of the dual system root system. Therefore, in order to retain the single system data to the target system after the upgrade, the user data in the data area of the dual system root system is actually transferred to the data area of the target system.
[0033] In one embodiment, the present application provides a data transfer method. Figure 1This is a flow chart of a data transfer method provided in the present application. The method can be applied to the situation where the data of a single system is transferred to the system used by the user in the dual system during the process of upgrading a single system to a dual system. The method is performed by the data transfer device provided in the present application, and the above data transfer device can be implemented by software and / or hardware.
[0034] In this embodiment, the data transfer method is applied to a terminal, which may be a mobile smart phone with an operating system, a tablet computer with an operating system, a wearable device with an operating system, and a smart appliance with an operating system. In this embodiment, a mobile smart phone with an operating system is used as an example for description.
[0035] It should be noted that, in addition to being applicable to a single system upgrading a dual Android system architecture, this application is also applicable to scenarios such as a single system upgrading a multiple Android system architecture, or upgrading a heterogeneous dual system architecture. As long as the upgraded system includes an Android system, the solution of this application can be used to retain the user data of the previous single Android system in one of the Android subsystems during the upgrade process.
[0036] like Figure 1 As shown, the data transfer method provided in the embodiment of the present application mainly includes steps S10 and S20.
[0037] S10, after receiving the dual system startup instruction, detecting the system status and data validity;
[0038] S20: When the system status and data validity satisfy the data transfer condition, the data to be transferred in the root system is transferred to the target system.
[0039] In this embodiment, the system may be an Android system, an IOS system, or other terminal operating systems, which are not limited in this embodiment. It should be noted that this embodiment is described by taking the Android system as an example, that is, taking a single Android system upgrading a dual Android system as an example.
[0040] The dual-system startup instruction can be understood as an instruction for instructing the operating system in the terminal to start up. Receiving the dual-system startup instruction can be understood as receiving an instruction for instructing the operating system in the terminal to start up.
[0041] Further, receiving the dual system startup instruction may be that after the single system is upgraded to the dual system, the dual system startup instruction is automatically received when the system upgrade is detected to be complete. Receiving the dual system startup instruction may also be that the dual system startup instruction is received when the user triggers the dual system startup button. The dual system startup button may be a power button set by the terminal, and the dual system startup button may also be a restart button set by the terminal. It should be noted that in this embodiment, only the receiving of the dual system startup instruction is described, but not limited.
[0042] The data to be transferred can be understood as the data transferred to the data area under the root system of the dual system after the single system data is upgraded, which is the user data generated in the process of the terminal using the single system. For example: the data to be transferred includes but is not limited to system application data (setting information of setting application, text messages, mobile phone contacts, call records, alarm settings, etc.), installed third-party applications and data, the content in the built-in SD card (including photos, videos, etc.), special information (such as lock screen password), etc.
[0043] The target system may be any system used by the user in the dual systems, that is, it may be a work system or a life system.
[0044] In this embodiment, before detecting the system status and data validity, it also includes: after the single system data is upgraded, it is first transferred to the data area under the root system of the dual system. The single system data transferred to the data partition under the root system is the data to be transferred described in this implementation.
[0045] In an exemplary embodiment, transferring the data to be transferred in the root system to the target system includes:
[0046] The data to be transferred in the root system is transferred to the target system by moving.
[0047] In this embodiment, the data transfer method adopts a moving method to perform data transfer operations. The moving method is faster than the copying method and reduces the storage space occupied.
[0048] In an exemplary embodiment, transferring the user data in the root system to the data area of the target system includes: transferring a designated directory containing the user data in the root system to a directory in the data area of the target system.
[0049] In an exemplary embodiment, transferring the data to be transferred in the root system to the target system includes:
[0050] The designated directory containing the data to be transferred in the root system is transferred to the target system.
[0051] In an exemplary embodiment, the specified directory includes one or more of the following:
[0052] A directory encrypted with the user's device encryption key;
[0053] A directory encrypted with a user credentials encryption key;
[0054] The directory that stores the data to be transferred and is encrypted using the global encryption key;
[0055] Directory containing non-encrypted user data to be transferred.
[0056] In this embodiment, File Based Encryption (FBE) is briefly introduced for the first time:
[0057] Currently, Android data partitions use FBE, which can use different keys to encrypt different files and decrypt these files separately. File-level encryption is supported in Android 7.0 and higher versions.
[0058] In this embodiment, the designated directory containing the data to be transferred is a subdirectory of the data partition. Since the designated directory is a partition directory using file-level encryption, the impact of file-level encryption needs to be considered to ensure that the data can still be encrypted and decrypted normally after the transfer.
[0059] On devices with file-based encryption enabled, each user has two storage locations that apps can use:
[0060] Credential Encryption (CE) storage space, which is the default storage location and is available only after the user unlocks the device.
[0061] Device Encryption (DE) storage space, available during Direct Boot mode and after the user unlocks the device.
[0062] This separation of storage locations makes work data more secure, and encryption is no longer based solely on the startup password, thus protecting multiple users at the same time.
[0063] There are three types of keys in the existing Android system:
[0064] The first category is the global device encryption key, which is placed in / data / unencrypted. In the dual system implementation, the three systems use a unified set of keys, which are stored in the root system. Because the root system needs to access the directories encrypted with the key under the working system and the life system before starting the working system and the life system, such as / data / app, / data / misc, etc., the key is designed to be unified for the three systems, and the key is installed and decrypted when the root system is started.
[0065] The second category is the user device encryption key. Taking user 0 as an example, the key is placed in / data / misc / vold / user_keys / de / 0. In the dual system, the three systems are independent of each other, and each user creates and uses their own key. The directories encrypted with the key are: / data / system_de / 0, / data / misc_de / 0, / data / user_de / 0, etc. The key is installed and decrypted by each system when it is started.
[0066] The third type is the user credential encryption key. Taking user 0 as an example, the key is placed in / data / misc / vold / user_keys / ce / 0. In the dual system, the three systems are independent of each other, and each user creates and uses their own key. The directories encrypted by the key are: / data / system_ce / 0, / data / misc_ce / 0, etc. The difference between this type of key and the first two types of keys is that if the lock screen password is not set, the key will be installed and decrypted when the system starts. If the lock screen password is set, the system needs to wait for the user to enter the lock screen password before installing and decrypting the key. The key is actually encrypted and saved with the lock screen password. Therefore, when the user does not enter the lock screen password, the corresponding encrypted directory will not be available.
[0067] The global device key is installed and decrypted by the root system in the dual system, so its storage directory needs to be retained under the root system. The directory path is / data / unencrypted.
[0068] Since there is no Android system framework and applications under the root system, user-related directories are not actually needed, and this part contains user data. Therefore, the user device encryption key and user credential encryption key storage directory and encrypted directory need to be moved to the target system.
[0069] Additionally, directories encrypted with the global device encryption key and non-encrypted directories storing user data need to be moved to the target system.
[0070] Therefore, the directories that need to be moved include but are not limited to:
[0071] / data / misc / data / misc_ce / data / misc_de / data / system / data / system_ce / data / system_de / data / vendor / data / vendor_ce / data / vendor_de / data / data / data / user / data / user_de / data / media / data / apex data / app* (that is, all directories starting with app)
[0072] It should be noted that the directory may change with the overall Android version upgrade or demand changes. For example, if a new function needs to create a new directory under the data partition, and the data of this function needs to be upgraded and retained, it is necessary to move the directory. However, the basic principle of confirming whether the directory needs to be moved remains unchanged.
[0073] Directory selection principles: The user device encryption key and user credential encryption key storage directories, as well as the directories encrypted by these two types of keys, need to be moved to the target system. The global device encryption key storage directory must remain in the root system. Directories encrypted with the global device encryption key and non-encrypted directories that store user data need to be moved to the target system. Other directories do not need to be moved, such as the log directory, which can remain in the root system.
[0074] In an exemplary embodiment, the system status and data validity satisfy the data transfer condition, including:
[0075] The dual system is started for the first time;
[0076] The target system is configured for the first time;
[0077] The data to be transferred is valid.
[0078] In this embodiment, when the dual systems are started for the first time, the target system is configured for the first time, and the data to be transferred is valid, it is determined that the system status and data validity meet the data transfer condition.
[0079] Further, in this embodiment, it is first determined whether the dual system is started for the first time. If the dual system is started for the first time, it is determined whether the target system is configured for the first time. If the dual system is not started for the first time, it is determined that the system state does not meet the data transfer condition, and the subsequent process of the dual system startup is executed. If the target system is configured for the first time, it is determined whether the data to be transferred is valid. If the target system is not configured for the first time, it is determined that the system state does not meet the data transfer condition, and the subsequent process of the dual system startup is executed. If the data to be transferred is valid, it is determined that the system state and data validity meet the data transfer condition. If the data to be transferred is invalid, it is determined that the data validity does not meet the data transfer condition, and the subsequent process of the dual system startup is executed.
[0080] Furthermore, in this embodiment, the timing of data transfer is selected after the upgrade operation is completed, after the data partition is successfully loaded and the global device encryption key is installed when the dual system is started for the first time, and before each subdirectory is created for the data partition, the transfer operation is performed by running a script.
[0081] Moving the directory is done before creating the sub-directories for the data partition. This ensures that after the directory is moved, the missing directory in the root system will be automatically created again in the subsequent process, ensuring the stability of the subsequent operation of the system.
[0082] In an exemplary embodiment, the determination scheme for initial startup of the dual systems includes:
[0083] After detecting the first startup mark, it is determined that the dual system is started for the first time;
[0084] The first startup identifier includes one or more of the following: a directory created when the dual systems are first started, a file created when the dual systems are first started, and an attribute identifier set when the dual systems are first started.
[0085] The first startup mark refers to a unique mark after the dual system is started.
[0086] In this embodiment, the unique mark after the dual system is started is judged. If it does not exist, the dual system is started for the first time and the subsequent judgment continues. Otherwise, if the mark exists, it means that the dual system has been started and the move operation is not performed.
[0087] The unique flag can be a unique directory or file created after the dual system is started, or a special attribute set after the dual system is started, but it is not limited to these forms, as long as it can be identified as a flag that the dual system has been started.
[0088] In an exemplary embodiment, the determination scheme for initial startup of the dual systems includes:
[0089] After detecting the preset identification position, it is determined that the dual system is started for the first time;
[0090] The preset identification bit is set when the system upgrade module identifies that the system to be upgraded is a dual system.
[0091] In this embodiment, when the single system upgrade identifies that the version to be upgraded is a dual system, a flag is set. If the flag is read after the dual system is started, it means that it is the first time for the single system to upgrade the dual system, and the data movement operation can be performed. After the movement is completed, the flag is cleared, and the dual system will know that it is not the first time to start and no movement operation is performed when it is started next time. Compared with the optimal solution, this alternative solution requires more modules to be modified, but it can also achieve judgment.
[0092] In an exemplary embodiment, the determination scheme for the initial configuration of the target system includes:
[0093] When it is detected that the data to be transferred is not stored in the data area of the target system, it is determined that the target system is configured for the first time.
[0094] In an exemplary embodiment, the data to be transferred is valid, including:
[0095] The specified directory in the root system that contains the data to be transferred exists and is valid.
[0096] In this embodiment, it is determined whether each subdirectory under the data partition exists and is valid. If it exists and is valid, it means that the data partition already has data when the dual system is started for the first time. This data must have been generated by the single system before the upgrade. It can be confirmed that this is the first time the dual system is started after the single system is upgraded to the dual system, and data needs to be transferred. Otherwise, it means that the dual system is being burned for the first time, or the whole machine is restored to factory settings, etc. In these scenarios, there is no need to perform data transfer operations
[0097] The technical solution provided in this embodiment is to transfer the data under the root system to the data area of the target system when the dual system is started for the first time after the single system is upgraded to the dual system, so as to realize the function of retaining the single system data in the target system. When transferring, relevant judgments need to be made first, such as whether the single system is upgraded to the dual system, whether the user data is valid, etc. This enables the terminal to retain the user's data in the target system while upgrading from the single system version to the corresponding dual system version. The operation is simple and does not increase the duration of the upgrade process. The upgrade process is automatically completed when the user is not aware of it. The retained user data is also very complete, and does not rely on additional storage devices and networks. The user experience is very good.
[0098] In an applied implementation, a process of transferring user data from a single system to a dual system is provided. Figure 2 This is a structural diagram of the process of transferring user data from a single system to a dual system, as provided in the application. Figure 2As shown, after the single-system user data is upgraded, it is first transferred to the data partition under the dual-system root system, and then through the data transfer solution provided by the present application, a part of it is transferred from the root system to the data area of the target system, so as to achieve the single-system user data being retained in the dual-system target system after the upgrade.
[0099] It should be noted that the other system is another system in the dual system except the target system and the root system, and the data in the target system is the data after the data to be transferred in the root system is transferred.
[0100] In an applied implementation, a process of upgrading a single system to a dual system is provided. Figure 3 This is the flowchart of upgrading a single system to a dual system provided by this application, such as Figure 3 As shown, the process of upgrading a single system to a dual system provided in the present application mainly includes steps S31, S32, S33, and S34.
[0101] S31, the single system upgrade module detects the dual system upgrade package and performs an upgrade operation.
[0102] S32, the upgrade module restarts the terminal.
[0103] S33, dual system boot, after the data partition of the root system is loaded successfully and the global device encryption key is installed before creating the subdirectory, the data check and move process is performed. This process will perform a series of judgment checks, and when the check passes, the data move operation will be performed, otherwise S34 will be directly executed.
[0104] S34. The dual system continues with the subsequent processes, including creating missing sub-directories under the data partition, starting the work and life systems, etc.
[0105] In an applicable implementation, a method for determining whether a data transfer condition is met is provided. Figure 4 is a flow chart of a method for determining whether a data transfer condition is met provided by the present application, such as Figure 4 As shown, the process of the method for determining whether the data transfer conditions are met provided in the present application mainly includes steps S41, S42, S43, and S44.
[0106] S41. Determine whether it is the first time that the dual system is started, that is, determine whether a unique mark after the dual system is started exists (such as a unique directory created after the dual system is started, a unique attribute set, etc.); if so, it means that it is not the first time that the dual system is started, then execute S45; if it is the first time, execute S42.
[0107] S42, determine whether the target system is created for the first time, that is, whether there is a data directory in the data area of the target system. If there is, it means that the target system already has data and the data transfer operation cannot be performed, then execute S45. If it is the first time to create, execute S43.
[0108] S43, determine whether the subdirectory to be moved under the data partition is valid, such as whether the user device encryption key and user credential encryption key storage directory exist, whether the directory to be moved exists, etc. If the directory does not exist or is invalid, then execute S45. If the directories are all valid, it means that the data to be restored in these single systems is valid, the check passes, and execute S44.
[0109] S44, perform data transfer operation. The directory path to be moved is pre-configured.
[0110] S45. The dual systems continue with the subsequent process and start the work system and the life system.
[0111] In one embodiment, the present application provides a data transfer device. Figure 5 This is a schematic diagram of the structure of a data transfer device provided by the present application. The device can be used to transfer data from a single system to a system used by a user in a dual system during a process of upgrading a single system to a dual system. The data transfer device can be implemented by software and / or hardware.
[0112] like Figure 5 As shown, the data transfer device provided in the embodiment of the present application mainly includes a detection module 51 and a transfer module 52.
[0113] The detection module 51 is configured to detect the system status and data validity after receiving the dual system startup instruction;
[0114] The transfer module 52 is configured to transfer the data to be transferred in the root system to the target system when the system status and data validity meet the data transfer conditions.
[0115] In an exemplary embodiment, transferring the data to be transferred in the root system to the target system includes:
[0116] The data to be transferred in the root system is transferred to the target system by moving.
[0117] In an exemplary embodiment, transferring the data to be transferred in the root system to the target system includes:
[0118] The designated directory containing the data to be transferred in the root system is transferred to the target system.
[0119] In an exemplary embodiment, the specified directory includes one or more of the following:
[0120] A directory encrypted with the user's device encryption key;
[0121] A directory encrypted with a user credentials encryption key;
[0122] The directory that stores the data to be transferred and is encrypted using the global encryption key;
[0123] Directory containing non-encrypted user data to be transferred.
[0124] In an exemplary embodiment, the system status and data validity satisfy the data transfer condition, including:
[0125] The dual system is started for the first time;
[0126] The target system is configured for the first time;
[0127] The data to be transferred is valid.
[0128] In an exemplary embodiment, the determination scheme for initial startup of the dual systems includes:
[0129] After detecting the first startup mark, it is determined that the dual system is started for the first time;
[0130] The first startup identifier includes one or more of the following: a directory created when the dual systems are first started, a file created when the dual systems are first started, and an attribute identifier set when the dual systems are first started.
[0131] In an exemplary embodiment, the determination scheme for initial startup of the dual systems includes:
[0132] After detecting the preset identification position, it is determined that the dual system is started for the first time;
[0133] The preset identification bit is set when the system upgrade module identifies that the system to be upgraded is a dual system.
[0134] In an exemplary embodiment, the determination scheme for the initial configuration of the target system includes:
[0135] When it is detected that the data to be transferred is not stored in the data area of the target system, it is determined that the target system is configured for the first time.
[0136] In an exemplary embodiment, the data to be transferred is valid, including:
[0137] The specified directory in the root system that contains the data to be transferred exists and is valid.
[0138] The data transfer device provided in this embodiment can execute the data transfer method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of executing the method. For technical details not described in detail in this embodiment, please refer to the data transfer method provided in any embodiment of the present invention.
[0139] It is worth noting that in the embodiment of the above-mentioned data transfer device, the various units and modules included are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application.
[0140] The embodiment of the present application also provides a terminal, Figure 6 is a schematic diagram of the structure of a terminal provided by this application, such as Figure 6 As shown, the terminal includes a processor 61, a memory 62, an input device 63, and an output device 64; the number of processors 61 in the terminal can be one or more. Figure 6 A processor 61 is taken as an example; the processor 61, the memory 62, the input device 63 and the output device 64 in the terminal can be connected by a bus or other means. Figure 6 The example of connecting through bus is taken in the following.
[0141] The memory 62, as a computer-readable storage medium, can be used to store software programs, computer executable programs and modules, such as program instructions / modules corresponding to the data transfer method in the embodiment of the present application (for example, the detection module 51 and the transfer module 52 in the data transfer device). The processor 61 executes various functional applications and data processing of the terminal by running the software programs, instructions and modules stored in the memory 62, that is, implements any method provided in the embodiment of the present application.
[0142] The memory 62 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system and at least one application required for a function; the data storage area may store data created according to the use of the terminal, etc. In addition, the memory 62 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some instances, the memory 62 may further include a memory remotely arranged relative to the processor 61, and these remote memories may be connected to the terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0143] The input device 63 may be used to receive input digital or character information and generate key signal input related to user settings and function control of the terminal. The output device 64 may include a display device such as a display screen.
[0144] The embodiment of the present application further provides a storage medium containing computer executable instructions, wherein the computer executable instructions are used to perform a data transfer method when executed by a computer processor, including:
[0145] After receiving the dual system startup command, check the system status and data validity;
[0146] When the system status and data validity meet the data transfer conditions, the data to be transferred in the root system is transferred to the target system.
[0147] Of course, the storage medium containing computer executable instructions provided in the embodiments of the present application, whose computer executable instructions are not limited to the operations described above, can also execute related operations in the data transfer method provided in any embodiment of the present application.
[0148] Through the above description of the implementation method, the technicians in the relevant field can clearly understand that the present application can be implemented with the help of software and necessary general hardware, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application can be essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as a computer floppy disk, read-only memory (ROM), random access memory (RAM), flash memory (FLASH), hard disk or optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0149] The above description is merely an exemplary embodiment of the present application and is not intended to limit the protection scope of the present application.
[0150] It will be appreciated by those skilled in the art that the term user terminal covers any suitable type of wireless user equipment, such as a mobile phone, a portable data processing device, a portable web browser or a vehicle-mounted mobile station.
[0151] In general, various embodiments of the present application can be implemented in hardware or dedicated circuits, software, logic or any combination thereof. For example, some aspects can be implemented in hardware, while other aspects can be implemented in firmware or software that can be executed by a controller, microprocessor or other computing device, although the present application is not limited thereto.
[0152] Embodiments of the present application may be implemented by executing computer program instructions by a data processor of a mobile device, for example in a processor entity, or by hardware, or by a combination of software and hardware. The computer program instructions may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages.
[0153] The block diagram of any logic flow in the accompanying drawings of the present application can represent program steps, or can represent interconnected logic circuits, modules and functions, or can represent a combination of program steps and logic circuits, modules and functions. The computer program can be stored on a memory. The memory can have any type suitable for the local technical environment and can be implemented using any suitable data storage technology, such as but not limited to read-only memory (ROM), random access memory (RAM), optical memory device and system (digital versatile disc DVD or CD disc), etc. Computer-readable media may include non-transient storage media. The data processor can be any type suitable for the local technical environment, such as but not limited to a general-purpose computer, a special-purpose computer, a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a programmable logic device (FGPA) and a processor based on a multi-core processor architecture.
[0154] By way of exemplary and non-limiting examples, a detailed description of exemplary embodiments of the present application has been provided above. However, various modifications and adjustments to the above embodiments will be apparent to those skilled in the art when considered in conjunction with the accompanying drawings and claims, but will not depart from the scope of the present invention. Therefore, the proper scope of the present invention will be determined according to the claims.
Claims
1. A data transfer method, characterized in that: include: After receiving the dual system startup command, check the system status and data validity; When the system status and data validity meet the data transfer conditions, transferring the data to be transferred in the root system to the target system; The data to be transferred is data transferred to the data area under the root system after the single system data is upgraded; The system status and data validity satisfy the data transfer conditions, including: the dual systems are started for the first time, the target system is configured for the first time, and the data to be transferred is valid.
2. The method according to claim 1, characterized in that: The transferring of the data to be transferred in the root system to the target system comprises: The data to be transferred in the root system is transferred to the target system by moving.
3. The method according to claim 1 or 2, characterized in that: The transferring of the data to be transferred in the root system to the target system comprises: The designated directory containing the data to be transferred in the root system is transferred to the target system.
4. The method according to claim 3, characterized in that The specified directory includes one or more of the following: A directory encrypted with the user's device encryption key; A directory encrypted with a user credentials encryption key; The directory that stores the data to be transferred and is encrypted using the global encryption key; Directory containing non-encrypted user data to be transferred.
5. The method according to claim 1, characterized in that The determination plan for the initial startup of the dual systems includes: After detecting the first startup mark, it is determined that the dual system is started for the first time; The first startup identifier includes one or more of the following: a directory created when the dual systems are first started, a file created when the dual systems are first started, and an attribute identifier set when the dual systems are first started.
6. The method according to claim 1, characterized in that The determination plan for the initial startup of the dual systems includes: After detecting the preset identification position, it is determined that the dual system is started for the first time; The preset identification bit is set when the system upgrade module identifies that the system to be upgraded is a dual system.
7. The method according to claim 1, characterized in that The determination plan for the initial configuration of the target system includes: When it is detected that the data to be transferred is not stored in the data area of the target system, it is determined that the target system is configured for the first time.
8. The method according to claim 1, characterized in that The data to be transferred is valid and includes: The specified directory in the root system that contains the data to be transferred exists and is valid.
9. A terminal, characterized in that: The terminal comprises: one or more processors; a memory for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 8.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Safe mobile electronic equipment for providing application services
CN103002445A
Equipment dual-system protection method and equipment dual-system upgrading method on basis of linux
CN103677947A