Application control method, and electronic device and storage medium
By displaying response hotspots on terminal devices and automatically identifying target devices for application migration, the problem of insufficient interactive experience in application migration is solved, enabling more efficient cross-device application migration and collaborative use.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-12-18
- Publication Date
- 2026-06-25
AI Technical Summary
How to improve the interactive experience of application migration, especially the user operation efficiency and experience when seamlessly migrating applications between multiple terminal devices.
By displaying a first response hotspot on the first electronic device, users can directly drag and drop the icon of the first application into the hotspot, automatically identify the target device and send migration data, reducing manual selection steps, and combining historical operation data to determine the migration data and display the corresponding user interface on the target device.
It improves the interactive experience of application migration across devices, saves user operations, and enhances the efficiency of collaborative use between devices.
Smart Images

Figure CN2025143556_25062026_PF_FP_ABST
Abstract
Description
An application control method, electronic device and storage medium
[0001] This application claims priority to Chinese Patent Application No. 202411914432.3, filed on December 20, 2024, entitled "An Application Control Method, Electronic Device and Storage Medium", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of terminal technology, and in particular to an application control method, electronic device and storage medium. Background Technology
[0003] With the increasing prevalence of terminal devices, smart devices have become indispensable in people's lives. A user may own multiple types of devices and can migrate applications running on one device to another during use, providing a better user experience. How to improve the interactive experience of application migration requires further research. Summary of the Invention
[0004] This application provides an application control method, an electronic device, and a storage medium. A first electronic device can obtain migration data for a first application based on user actions on the application's icon, and display the icon of a second electronic device that has established a communication connection with the first electronic device in a first window. This eliminates the need for the user to manually select the device to be migrated for the first application, saving user effort. The user can select the icon of the second electronic device to confirm sending the first migration data of the first application to the second electronic device, thus migrating the first application to the second electronic device, improving the interactive experience of cross-device application migration.
[0005] In a first aspect, this application provides an application control method. The method includes: a first electronic device displaying an icon of a first application and a first navigation bar; the first electronic device receiving a first operation on the icon of the first application; in response to the first operation, the first electronic device displaying a first control and a first response hotspot, the first control indicating the first application, and the size of the first response hotspot being larger than the size of the first navigation bar; when the first control is located within the first response hotspot, the first electronic device detecting the end of the first operation, the first electronic device displaying a first window, the first window displaying icons of one or more devices, the icons of the one or more devices including an icon of a second electronic device; the first electronic device receiving a second operation on the icon of the second electronic device; in response to the second operation, the first electronic device sending migration data of the first application to the second electronic device, the migration data of the first application being used by the second electronic device to display a first user interface of the first application.
[0006] Using this method, after the user selects the icon of the first application, the first electronic device can change the display style of the first navigation bar, such as displaying a first response hotspot, to prompt the user to drag the first control indicating the first application to the display area where the first response hotspot is located, thus improving the interactive experience between the electronic device and the user. When the first control is located within the first response hotspot, the first electronic device can confirm the first migration data of the first application. After the user finishes the first operation, the first electronic device can display the icon of the second electronic device in the first window, eliminating the need for the user to manually select the electronic device to be migrated, saving user operations. The user can select the icon of the second electronic device to confirm sending the first migration data of the first application to the second electronic device, thus migrating the first application to the second electronic device, improving the interactive experience of application migration across devices. For example, refer to the description in the embodiment of Figure 7A.
[0007] In one possible implementation, after the first electronic device sends the migration data of the first application to the second electronic device, the first electronic device may continue to display the first window or stop displaying the first window.
[0008] Optionally, when the first electronic device displays the first response hot zone, the first electronic device stops displaying the first navigation bar.
[0009] Optionally, the size of the first response hotspot can be fixed. The size of the first response hotspot can also change with the position of the first control. For example, if the distance between the first control and the preset position is less than a first distance, the size of the first response hotspot gradually increases as the distance between the first control and the preset position decreases. Optionally, once the size of the first response hotspot reaches its maximum, the size of the first response hotspot no longer changes. For example, the maximum size of the first response hotspot can be response hotspot 3006.
[0010] If the distance between the first control and the preset position is less than a first distance, the size of the first response hotspot gradually decreases as the distance between the first control and the preset position increases. Optionally, once the size of the first response hotspot reaches its minimum size, the size of the first response hotspot no longer changes. For example, the minimum size of the first response hotspot can be response hotspot 3004.
[0011] Optionally, the first operation includes selecting the first application and dragging the first control to the display area where the first navigation bar is located.
[0012] Optionally, the icon of the first application is an icon on the desktop of the first electronic device. The icon of the first application can also be an icon displayed in other locations, and this application does not limit this.
[0013] In conjunction with the first aspect, in one possible implementation, before the first electronic device sends the migration data of the first application to the second electronic device, the method further includes: the first electronic device acquiring historical operating data of the first application; and the first electronic device determining the migration data of the first application based on the historical operating data of the first application. In this way, the first electronic device can determine the migration data of the first application through its historical operating data, thereby enabling the migration of the first application to the second electronic device.
[0014] In one possible implementation, the method further includes: a first electronic device acquiring historical running data of a first application; and the first electronic device determining migration data for the first application based on the historical running data and the running status of the first application. In this way, the first electronic device can determine the migration data of the first application based on its historical running data and its running status (on or off), thereby migrating the first application to a second electronic device.
[0015] In conjunction with the first aspect, in one possible implementation, if the first application is running, its historical runtime data includes runtime data generated when the first application is running in the foreground, and its migration data includes data from the second user interface displayed in the foreground before the first application switches to background operation. This second user interface may not be the last second user interface displayed in the foreground before the first application switches to background operation. Alternatively, the first application's migration data may include data from the last second user interface displayed in the foreground before the first application switches to background operation.
[0016] In one possible implementation, before the first electronic device displays the icon of the first application, the method further includes: the first electronic device displaying a second user interface containing the first application, the content of which is the same as or partially the same as the content of the first user interface; the first electronic device displaying the icon of the first application specifically includes: the first electronic device receiving and responding to a third operation, running the first application in the background, and displaying the icon of the first application. In this way, the first electronic device can migrate the first application running in the background to the second electronic device, allowing the second electronic device to continue displaying the data from the second user interface that the first application last displayed in the foreground before switching to background operation.
[0017] Optionally, the second user interface may also be the data in the user interface displayed by the first electronic device when performing the target task through the first application. The target task includes any of the following: video playback task, music playback task, navigation task, content editing task, game task, web browsing task.
[0018] For example, the first application could be a memo app, and the second user interface could be a content editing interface or note editing interface within the memo app. Users can continue editing content or notes that were not finished on the first electronic device on the second electronic device.
[0019] For example, the first application could be the Huawei Music app, and the second user interface could be the audio playback interface within the Huawei Music app. The user can continue listening to music that wasn't finished playing on the first electronic device via the second electronic device.
[0020] For example, the first application could be the Huawei Video app, and the second user interface could be the video playback interface within the Huawei Video app. The user can continue watching the video that was not finished playing on the first electronic device using the second electronic device.
[0021] For example, the first application could be a map application, and the second user interface could be a navigation interface within the map application. The user can continue viewing the navigation information displayed in the first application on the first electronic device while on the second electronic device.
[0022] For example, the first application could be a game application, and the second user interface could be the game interface within the game application. The user can continue playing the game that was not finished on the first electronic device on the second electronic device.
[0023] For example, the first application could be a news application, and the second user interface could be a web browsing interface within the news application. The user can continue viewing the webpage displayed in the first application on the first electronic device while on the second electronic device.
[0024] In conjunction with the first aspect, in one possible implementation, if the first application is in a closed state, the historical running data of the first application includes the running data generated before the first application was closed, and the migration data of the first application includes the data in the user interface displayed by the first electronic device when performing the target task through the first application, the data in the home page of the first application, the data in the user interface displayed by the first electronic device in the foreground before closing the first application, or the data in the user interface last displayed by the first electronic device in the foreground before closing the first application.
[0025] In one possible implementation, before the first electronic device displays the icon of the first application, the method further includes: the first electronic device running the first application in the foreground or background; the first electronic device displaying the icon of the first application specifically includes: the first electronic device receiving and responding to a fourth operation, closing the first application, and displaying the icon of the first application.
[0026] In one possible implementation, the target task includes any of the following: video playback task, music playback task, navigation task, content editing task, game task, web browsing task.
[0027] In this way, the first electronic device can migrate the first application that has been closed to the second electronic device, and the second electronic device can continue to display the data in the second user interface that the first application in the first electronic device was displayed in before it was closed.
[0028] Optionally, the method by which the first electronic device obtains the migration data of the first application based on the on or off state of the first application can be found in the description in the embodiment of Figure 7B.
[0029] In conjunction with the first aspect, in one possible implementation, the migration data of the first application includes: the identifier of the first application and the runtime data of the first application. The runtime data of the first application includes any one of the following: video playback data, music playback data, navigation data, content editing data, game data, and web browsing data.
[0030] In conjunction with the first aspect, in one possible implementation, the first electronic device obtains application information of the first application and device information of the second electronic device; based on the application information of the first application and the device information of the second electronic device, the first electronic device displays an icon of the second electronic device in a first window, wherein the first application matches the second electronic device.
[0031] In one possible implementation, the application information of the first application includes any one or more of the following: the version number of the first application, the system capabilities required by the device for the first application, the chip solution capabilities required by the device for the first application, and the product solution capabilities required by the device for the first application; the device information of the second electronic device includes any one or more of the following: the SDK version number of the operating system, the type of operating system, the manufacturer's identifier, the system capabilities of the operating system, the chip solution capabilities, and the product solution capabilities.
[0032] In this way, the icons of the electronic devices displayed in the first window are all devices that match the first application. This prevents situations where the first application cannot migrate after the user selects an icon of an electronic device displayed in the first window.
[0033] In other possible implementations, after finding nearby devices, the first electronic device can display icons for all found devices in a first window. Then, in response to selecting one of the device icons, the first electronic device can determine whether the selected device matches the first application. If the selected device matches the first application, the first electronic device can migrate the first application to the selected device. If the selected device does not match the first application, the first electronic device can prompt the user that the first application cannot migrate to the selected device.
[0034] Secondly, this application provides an electronic device, namely a first electronic device, including a memory and a processor; wherein the memory and the processor are coupled, the memory is used to store a computer program, and when the processor executes and calls the computer program, the first electronic device executes an application control method provided in any possible implementation of the first aspect.
[0035] Thirdly, this application provides a computer-readable storage medium including instructions that, when executed on a first electronic device, cause the first electronic device to perform an application control method provided in any possible implementation of the first aspect described above.
[0036] Fourthly, this application provides a chip system including one or more processors, which are used to invoke computer instructions to cause a first electronic device to execute an application control method provided in any possible implementation of any of the above aspects.
[0037] Fifthly, this application provides a computer program product containing instructions that, when the computer program product is run on a first electronic device, causes the first electronic device to execute an application control method provided in any possible implementation of any of the above aspects.
[0038] For a description of the beneficial effects in aspects two through five, please refer to the description of the beneficial effects in aspect one; this application will not repeat them here. Attached Figure Description
[0039] Figure 1 shows an architecture diagram of a communication system 10 provided in this application;
[0040] Figure 2A shows a schematic diagram of the hardware structure of an electronic device 100 provided in this application;
[0041] Figure 2B shows a software structure block diagram of an electronic device 100 provided in this application;
[0042] Figures 3A-3K illustrate a schematic diagram of a group of electronic devices 100 migrating a first application from electronic device 100 to electronic device 200 based on user operation.
[0043] Figures 4A-4I illustrate a schematic diagram of another set of electronic devices 100 migrating a first application from electronic device 100 to electronic device 200 based on user operation;
[0044] Figures 5A-5J exemplarily illustrate a schematic diagram of an electronic device 100 receiving a user operation and migrating a first portion of data from a first application to an electronic device 200;
[0045] Figures 6A-6C illustrate schematic diagrams of cross-device collaboration applications;
[0046] Figure 7A illustrates a flowchart of a method for applying cross-device migration;
[0047] Figure 7B illustrates a flowchart of another method for cross-device migration.
[0048] Figures 8A-8M illustrate a schematic diagram of a set of electronic devices 100 transferring data from a first application to electronic devices 200 based on user operations. Detailed Implementation
[0049] The technical solutions in the embodiments of this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.
[0050] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Therefore, features defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0051] The term "user interface (UI)" used in the following embodiments of this application refers to the medium interface through which an application or operating system interacts and exchanges information with a user. It realizes the conversion between the internal form of information and the form that the user can accept. The most common form of user interface is the graphical user interface (GUI), which refers to a user interface related to computer operation displayed in a graphical manner. It can be visual interface elements such as text, icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and widgets displayed on the screen of a wearable device.
[0052] First, let me explain the "application cross-platform migration" and "application multi-platform collaboration" involved in this application.
[0053] Cross-platform application migration refers to an application running on one device and, based on user needs, switching to another device to continue running, while simultaneously ceasing operation on the original device. In other words, in a cross-platform application migration scenario, a first electronic device is running a first application. In response to an operation to migrate the first application to a second electronic device, the first electronic device can instruct the second electronic device to run the first application. Depending on the running state of the first application on the first electronic device during the migration, the second electronic device can continue running the first application. Optionally, after the first application is transferred to the second electronic device, the first electronic device can stop running the first application.
[0054] For example, a first electronic device is running an email application and has received email information entered by the user (such as email address, email subject, email body, etc.). The first electronic device can then transfer the email application to a second electronic device. The second electronic device can run the email application and display the email information that the user has already entered on the first device. This allows the user to continue editing the email on the second electronic device. Optionally, after the email application transfers to the second electronic device, the first electronic device can close the email application.
[0055] Multi-device collaboration refers to the simultaneous or alternating execution of different applications (such as components) on multiple devices to achieve a complete business function, or the simultaneous execution of the same application (such as component) on multiple devices to achieve a complete business function. In other words, in a multi-device collaboration scenario, a first electronic device runs a first application. In response to an operation to use a second electronic device to collaboratively run the first application, the first electronic device can instruct the second electronic device to run the first application or one or more components corresponding to the first application.
[0056] For example, a first electronic device is running a game application and receives an operation that uses a second electronic device for collaboration. The first electronic device can transfer the game application to the second electronic device. Specifically, the first electronic device can run the program corresponding to the component in the game application that provides game controller functionality. The second electronic device can run the program corresponding to the component in the game application that provides game screen display functionality. In this way, the user can view the game screen through the second electronic device and perform game operations using the game controller function on the first electronic device. This multi-device collaboration method can enhance the user's gaming experience.
[0057] It can be seen that cross-platform application migration and multi-platform application collaboration can be used to achieve multi-device linkage, providing distributed services such as cross-device email editing, multi-device collaborative fitness, and multi-screen gaming. This allows users to better utilize multiple devices and improve the user experience in different scenarios.
[0058] This application provides an application control method. The method includes: an electronic device 100 displaying a second user interface and a first navigation bar of a first application, or displaying an icon of the first application and a first navigation bar. The electronic device 100 can receive a first operation from a user on the second user interface or the icon of the first application, and in response to the first operation, the electronic device 100 can display a first control and a first response hotspot.
[0059] When the first control is located within the first response hot zone, and the electronic device 100 detects that the first operation has ended, the electronic device 100 may display a first window. The first window displays icons of one or more devices, and the electronic devices corresponding to the icons of these one or more devices have established a communication connection with the electronic device 100. For example, the icons of the one or more devices include the device icon of the electronic device 200.
[0060] In some embodiments, electronic device 100 can receive and respond to user operations on the device icon of electronic device 200, electronic device 100 can migrate a first application to electronic device 200, electronic device 200 can run the first application and display a first user interface of the first application.
[0061] In some embodiments, electronic device 100 can receive and respond to user operations on the device icon of electronic device 200, and electronic device 100 and electronic device 200 can work together to run a first application.
[0062] Using this method, after the user selects the first application, the electronic device 100 can change the display style of the first navigation bar to prompt the user to drag the first control to the display area where the first response hot zone is located. The electronic device 100 can display the icon of the migrated device or the icon of the collaborative device in the first response hot zone. The user can select the icon of any device to migrate the first application to the device selected by the user or to run the first application collaboratively with the device selected by the user, thereby improving the user experience of cross-device migration or cross-device collaboration of applications.
[0063] Optionally, when the electronic device 100 displays the icon of the second user interface or the first application, the electronic device 100 can receive user input operations on the first navigation bar, such as a click operation. In response to the user's input operation, the electronic device 100 can display a dialog window. The electronic device 100 can input text or audio in the dialog window based on the user's operation. In response to the text or audio input by the user in the dialog window, the electronic device 100 can obtain the response result of the text or audio input by the user in the dialog window and display the response result in the dialog window.
[0064] Optionally, the dialogue window can also be a window provided by a third application in the electronic device 100. The response result of the text or audio entered by the user in the dialogue window can also be obtained by the third application based on the text or audio entered by the user. In some embodiments, the third application can also be referred to as an AI application or a voice assistant application.
[0065] The following is an architecture diagram of a communication system 10 provided in an embodiment of this application.
[0066] As shown in Figure 1, the communication system 10 may include electronic device 100 and electronic device 200.
[0067] As shown in Figure 1, the communication system 10 may include electronic device 100 and electronic device 200. The electronic device 100 shown in Figure 1 is a mobile phone, and the electronic device 200 shown in Figure 1 may include, but is not limited to, any of the following: mobile phone, television, tablet computer, laptop computer, automobile, range hood, table lamp, stereo, refrigerator, soy milk maker, etc.
[0068] It should be noted that electronic device 100 and electronic device 200 can also be other types of devices, and this application does not limit them.
[0069] Electronic device 100 and electronic device 200 establish a communication connection, which can be, for example, a 2G / 3G / 4G / 5G communication connection, a wireless fidelity (Wi-Fi) network communication connection, etc. This application embodiment does not limit the method of the above-mentioned communication connection.
[0070] Optionally, not limited to communication connection, electronic device 200 also needs to be a trusted device of electronic device 100. A trusted device can refer to a device that has logged into the same account as electronic device 100, or it can refer to a device that has logged into a different account by electronic device 200 but the different accounts are related to each other (such as different accounts of family members), or it can refer to a device that has established a trust relationship between electronic device 200 and electronic device 100.
[0071] In some embodiments, electronic device 100 can receive user input to migrate a first application from electronic device 100 to electronic device 200 and run it on electronic device 200, thereby achieving cross-device application migration. In this way, electronic device 200 can continue to run the first application, allowing users to better utilize multiple devices and improving the user experience in different scenarios.
[0072] In some embodiments, electronic device 100 can also receive user operations on electronic device 200 and work with electronic device 200 to run a first application, thus improving the user experience across multiple devices.
[0073] In some embodiments, electronic device 100 can receive user input to migrate first data from a first application in electronic device 100 to electronic device 200, thereby achieving cross-device data migration. In this way, electronic device 200 can display the content corresponding to the first data, and electronic device 100 can perform other tasks. This also allows users to better utilize multiple devices and improve the user experience in different scenarios. For examples, please refer to the description in the embodiments shown in Figures 8A-8M.
[0074] Figure 2A shows a schematic diagram of the hardware structure of an electronic device 100.
[0075] Electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, antenna 1, antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a sensor module 180, a display screen 194, a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include one or more sensors, such as a gyroscope sensor 180B, a magnetic sensor 180D, an accelerometer sensor 180E, a proximity sensor 180F, a touch sensor 180K, etc. In some embodiments, the sensor module 180 may also include one or more of the following sensors: a pressure sensor, a barometric pressure sensor, a proximity sensor, a fingerprint sensor, a temperature sensor, an ambient light sensor, a bone conduction sensor, etc.
[0076] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0077] Processor 110 may include one or more processing units, such as application processor (AP), modem processor, graphics processing unit (GPU), image signal processor (ISP), controller, video codec, digital signal processor (DSP), baseband processor, and / or neural network processing unit (NPU). These different processing units may be independent devices or integrated into one or more processors.
[0078] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0079] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can directly retrieve it from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system. In some embodiments, the processor 110 may include one or more interfaces, such as a universal serial bus (USB) interface.
[0080] USB port 130 is a USB standard compliant interface, specifically a Mini USB port, Micro USB port, or USB Type-C port. USB port 130 can be used to connect a charger to charge electronic device 100, and can also be used for data transfer between electronic device 100 and peripheral devices. It can also be used to connect headphones for audio playback. This interface can also be used to connect other electronic devices, such as AR devices.
[0081] The charging management module 140 receives charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 receives charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 receives wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also supply power to the electronic device via the power management module 141.
[0082] The power management module 141 connects the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, providing power to the processor 110, internal memory 121, display screen 194, and wireless communication module 160, etc. The power management module 141 can also monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage current, impedance). In some other embodiments, the power management module 141 may also be located within the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be located in the same device.
[0083] The wireless communication function of electronic device 100 can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.
[0084] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with tuning switches.
[0085] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0086] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLANs) (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. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, demodulates and filters the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, frequency modulate and amplify them, and then convert them into electromagnetic waves for radiation via antenna 2.
[0087] In some embodiments, electronic device 100 may establish a communication connection with electronic device 200 through mobile communication module 150 or wireless communication module 160.
[0088] In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling electronic device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS).
[0089] Electronic device 100 implements display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.
[0090] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a Miniled LED, a MicroLED, a Micro-OLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, electronic device 100 may include one or N displays 194, where N is a positive integer greater than 1.
[0091] Internal memory 121 may include one or more random access memory (RAM) and one or more non-volatile memory (NVM).
[0092] In some embodiments, the internal memory 121 may store historical running data of the first application. When the first application needs to be migrated to the electronic device 200, the electronic device 100 can obtain the historical running data of the first application from the internal memory 121 to determine the migration data of the first application, and send the migration data of the first application to the electronic device 200 so that the electronic device 200 can continue to run the first application based on the migration data of the first application.
[0093] In some embodiments, the internal memory 121 may also store device information of the electronic device 200 and application information of the first application. The device information may include, but is not limited to, any one or more of the following: the SDK version number of the device's operating system (OS), the device's operating system type, the device's manufacturer identification (ID), the system capabilities of the device's operating system, the device's chip solution capabilities, and the device's product solution capabilities. The application information may include, but is not limited to, any one or more of the following: the application's version number, the system capabilities, chip solution capabilities, and product solution capabilities required by the application. The device information of the electronic device 200 and the application information of the first application can be used by the electronic device 100 to determine whether the first application can be transferred to the electronic device 200.
[0094] The random access memory can be directly read and written by the processor 110. It can be used to store executable programs (such as machine instructions) of the operating system or other running programs, as well as user and application data.
[0095] Non-volatile memory can also store executable programs and user and application data, and can be pre-loaded into random access memory for direct reading and writing by the processor 110.
[0096] The external memory interface 120 can be used to connect to external non-volatile memory, thereby expanding the storage capacity of the electronic device 100. The external non-volatile memory communicates with the processor 110 through the external memory interface 120 to perform data storage functions. For example, music, video, and other files can be stored in the external non-volatile memory.
[0097] Electronic device 100 can implement audio functions, such as making calls and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, and application processor.
[0098] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be located in the processor 110, or some functional modules of the audio module 170 may be located in the processor 110.
[0099] The speaker 170A, also known as a "loudspeaker," is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or make hands-free calls through the speaker 170A.
[0100] The receiver 170B, also known as the "earpiece," is used to convert audio electrical signals into sound signals. When the electronic device 100 answers a telephone call or voice message, the receiver 170B can be brought close to the ear to listen to the voice.
[0101] Microphone 170C, also known as a "microphone" or "voice transducer," is used to convert sound signals into electrical signals. When making a phone call or sending a voice message, the user can speak by bringing their mouth close to microphone 170C, inputting the sound signal into microphone 170C. Electronic device 100 may have at least one microphone 170C. In some embodiments, electronic device 100 may have two microphones 170C, which, in addition to collecting sound signals, can also perform noise reduction. In other embodiments, electronic device 100 may also have three, four, or more microphones 170C, which can collect sound signals, reduce noise, identify the sound source, and perform directional recording, etc.
[0102] The gyroscope sensor 180B can be used to determine the motion attitude of the electronic device 100. In some embodiments, the gyroscope sensor 180B can determine the angular velocity of the electronic device 100 about three axes (i.e., the x, y, and z axes). The gyroscope sensor 180B can be used for image stabilization. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the shake of the electronic device 100, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to counteract the shake of the electronic device 100 by moving in the opposite direction, thus achieving image stabilization. The gyroscope sensor 180B can also be used in navigation and motion-sensing game scenarios.
[0103] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip cover.
[0104] The 180E accelerometer can detect the magnitude of acceleration of electronic device 100 in various directions (typically three axes). When electronic device 100 is stationary, it can detect the magnitude and direction of gravity. It can also be used to identify the posture of electronic devices and applied to applications such as screen orientation switching and pedometers.
[0105] A distance sensor 180F is used to measure distance. Electronic device 100 can measure distance via infrared or laser. In some embodiments, during a shooting scene, electronic device 100 can utilize the distance sensor 180F to measure distance for rapid focusing.
[0106] Touch sensor 180K, also known as a "touch device," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touchscreen." Touch sensor 180K detects touch operations applied to or near it. The touch sensor can 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 display screen 194. In other embodiments, touch sensor 180K may also be located on the surface of electronic device 100, in a different position than display screen 194.
[0107] In some embodiments, the electronic device 100 may further include one or more of buttons, a motor, and an indicator. Buttons may include a power button, volume buttons, etc. Buttons may be mechanical buttons or touch buttons. The electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of the electronic device 100. The motor may generate vibration cues. The indicator may be an indicator light, which can be used to indicate charging status, battery level changes, and can also be used to indicate messages, missed calls, notifications, etc.
[0108] The SIM card interface 195 is used to connect the SIM card.
[0109] Please refer to Figure 2B, which exemplarily illustrates the software structure block diagram of electronic device 100.
[0110] The electronic device provided in this application embodiment can run an operating system (OS). This operating system can be various operating systems used in industry, such as operating systems developed based on OpenHarmony, like HarmonyOS; or other operating systems such as Android™, iOS mobile operating systems; it can also be various open-source operating systems or their derivatives, such as Linux OS, and other embedded operating systems; or it can be a future new operating system, such as an AI operating system based on artificial intelligence (AI). An operating system is a set of interconnected system software programs that manage and control the operation of electronic devices, utilize and run hardware and software resources, and provide public services to organize user interaction. In electronic devices, the operating system connects downwards to the physical devices at the hardware layer and provides a runtime environment for application software upwards.
[0111] An operating system typically includes a kernel layer, a middleware layer, and an application layer. The application layer includes applications, which can include system applications and third-party applications. The middleware layer includes a suite of software providing various services to application developers, or frameworks providing services such as databases, multimedia, and graphics, or capabilities such as distributed scheduling and system scaling. For example, the middleware layer may include a framework layer and / or a system service layer. The framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The system service layer includes the system's core capabilities, providing services to applications through the framework layer. The kernel layer is the layer between hardware and software. The kernel layer may include hardware drivers and the operating system kernel. In addition to providing hardware drivers, the kernel layer also supports functions such as memory management and system process management.
[0112] The electronic devices we use in our daily lives come in various types and forms, and are applied in a wide range of scenarios. Therefore, based on the different forms and functions of electronic devices, different application scenarios, and different user needs, the operating systems used in these devices may also differ. The basic functions implemented by the electronic device provided in this application can be implemented using a general-purpose operating system or a dedicated operating system. To more clearly illustrate the implementation of the embodiments of this application under a specific operating system, the architecture of HarmonyOS is shown below. Those skilled in the art can deduce the implementation of the embodiments of this application under other specific operating systems, such as Android™.
[0113] As shown in Figure 2B, the software architecture of an electronic device can be divided into several layers. In some embodiments, from bottom to top, these layers are: kernel layer, system service layer, framework layer, and application layer. Layers communicate with each other through software interfaces. System functions can be tailored, added, or combined at the subsystem level depending on the deployment scenario of different device forms. Each subsystem can also be tailored, added, or combined at the functional level.
[0114] The Kernel Abstraction Layer (KAL) provides basic kernel capabilities to upper layers by shielding the differences between multiple kernels, including but not limited to process / thread management, memory management, file system, network management, and peripheral device management.
[0115] Kernel Subsystem: Supports the selection of a suitable OS kernel for different resource-constrained devices, including but not limited to Linux kernel, HarmonyOS kernel, LiteOS (Lite Operating System), etc.
[0116] Driver Subsystem: The driver framework is the foundation for the open system hardware ecosystem, providing unified peripheral access capabilities and a framework for driver development and management. The driver framework includes: display drivers, camera drivers, audio drivers, Bluetooth drivers, sensor drivers, etc.
[0117] The system service layer comprises the core capabilities of the system, providing services to applications through the framework layer. This layer includes, but is not limited to, the following subsystems:
[0118] The system's basic capability subsystem set provides fundamental capabilities for the operation, scheduling, and migration of distributed applications across multiple devices. This set may include distributed soft bus, distributed data management, distributed task scheduling, and Ark multi-language runtime; it may also include multi-modal input subsystem, graphics subsystem, security subsystem, and AI business subsystem.
[0119] Basic software service subsystem set: provides public and general software services; the basic software service subsystem set may include event notification subsystem, telephone service subsystem, multimedia subsystem, etc.
[0120] Enhanced software service subsystem suite: Provides differentiated enhanced software services for different devices; the enhanced software service subsystem suite may include smart screen proprietary business subsystem, wearable proprietary business subsystem, IoT proprietary business subsystem, etc.
[0121] Hardware service subsystem set: Provides hardware services; the hardware service subsystem set may include location service subsystem, user IAM (Identity and Access Management) subsystem, wearable proprietary hardware service subsystem, biometric identification, IoT proprietary hardware service subsystem, etc.
[0122] Distributed task scheduling enables distributed service management (discovery, synchronization, registration, and invocation), supporting remote startup, remote invocation, remote connection, and migration of applications across devices.
[0123] In some embodiments, electronic device 100 can migrate a first application running on electronic device 100 to electronic device 200 through distributed task scheduling in electronic device 100 and electronic device 200, or electronic device 100 and electronic device 200 can run the first application collaboratively.
[0124] Distributed data management enables data synchronization, data storage, data sharing, and data access across all scenarios and devices.
[0125] In some embodiments, the electronic device 100 can acquire and store the device information of the electronic device 200 and the application information of the first application through the distributed data management in the electronic device 100, and determine whether the first application can be migrated to the electronic device 200 based on the device information of the electronic device 200 and the application information of the first application.
[0126] The distributed soft bus provides communication-related capabilities for seamless interconnection between multiple devices, including: WLAN service capabilities, Bluetooth service capabilities, soft bus, inter-process communication RPC (Remote Procedure Call), and StarFlash communication capabilities.
[0127] Ark Multilingual Runtime is a unified compilation runtime platform designed to support the joint compilation and execution of multiple programming languages and multiple chip platforms.
[0128] The framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The framework layer includes: the ArkUI framework (which provides a complete infrastructure for UI development of system applications, including UI functions such as components, layouts, animations, and interactive events, as well as a real-time interface preview tool), the user application framework, and the Ability framework (an Ability is a lightweight application; the Ability framework schedules and manages the operation and lifecycle of Abilities). Different devices may have different operating systems, and the APIs they support may also differ.
[0129] The HarmonyOS API is a series of open capabilities provided to support HarmonyOS application development. The HarmonyOS API can be set at the framework layer or independently of the framework layer. The HarmonyOS API includes the Audio API (audio service), Push API (push service), and Account API (account service), among others.
[0130] Applications can include system apps and extended / third-party apps. System apps can include the desktop, control bar, settings, contacts, phone, camera, etc., while extended / third-party apps can include social apps, travel apps, etc.
[0131] This application will provide a detailed description of an application control method provided in this application, combining multiple application scenarios such as cross-device application migration, cross-device application collaboration, and cross-device data flow.
[0132] Scenario 1: Application migration across devices.
[0133] In some embodiments, when the electronic device 100 displays a second user interface of the first application, the electronic device 100 can receive user operations in the second user interface, display a first window, and display an icon of the electronic device 200 on the first window. The electronic device 100 can receive user operations on the icon of the electronic device 200 to migrate the first application to the electronic device 200.
[0134] Figures 3A-3K illustrate a schematic diagram of a set of electronic devices 100 migrating a first application from electronic device 100 to electronic device 200 based on user operation.
[0135] For example, the first application can be a Huawei video application, the second user interface can be a video playback interface, electronic device 100 can be a mobile phone, and electronic device 200 can be a laptop computer.
[0136] For example, as shown in Figure 3A, the electronic device 100 displays a video playback interface 3002, which displays the video content played by the electronic device 100, such as the video title "Take a Brave Step". As shown in Figure 3A, the electronic device 100 also displays a navigation bar 3001.
[0137] As shown in Figure 3A, the electronic device 100 can receive input operations applied to the video playback interface 3002, such as a long press operation. In response to the user's input operation, the electronic device 100 can display the control 3003 shown in Figure 3B. The control 3003 can be located at the position of the user's finger as shown in Figure 3B.
[0138] Optionally, and not limited to long-press operations on the video playback interface 3002, the electronic device 100 can also receive other operations such as selecting the Huawei Video application; this application does not limit this to such operations.
[0139] Optionally, as shown in Figure 3B, the content of the video playback interface 3002 is displayed in the control 3003.
[0140] As shown in Figures 3A and 3B, in response to the distance between the position of control 3003 and the preset position being greater than a first threshold, electronic device 100 still displays navigation bar 3001.
[0141] Optionally, the preset position can indicate the location of navigation bar 3001, the lower edge of the display screen of electronic device 100, or other positions. This application does not limit this.
[0142] For example, if the preset position refers to the position where the navigation bar 3001 is located, the distance between the control 3003 and the navigation bar 3001 can be the distance between the center point of the control 3003 and the center point of the navigation bar 3001, or the distance between the upper edge of the control 3003 and the upper edge of the navigation bar 3001, or the distance between the lower edge of the control 3003 and the lower edge of the navigation bar 3001. This application does not limit the definition of the distance between the control 3003 and the navigation bar 3001.
[0143] For example, if the preset position refers to the position of the lower edge of the display screen of the electronic device 100, the distance between the control 3003 and the lower edge of the display screen of the electronic device 100 can be the distance between the center point of the control 3003 and the lower edge of the display screen of the electronic device 100, the distance between the upper edge of the control 3003 and the lower edge of the display screen of the electronic device 100, or the distance between the lower edge of the control 3003 and the lower edge of the display screen of the electronic device 100.
[0144] As shown in Figures 3B and 3C, the electronic device 100 can continue to receive user input operations on the control 3003, such as dragging the control 3003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 3003 can move with the movement of the user's finger, for example, the control 3003 can be located at the position of the user's finger as shown in Figure 3C.
[0145] As shown in Figure 3C, if the distance between the position of control 3003 and the preset position in Figure 3C is less than a first threshold, the electronic device 100 can expand the size of the navigation bar 3001. For example, the electronic device 100 can display the response hotspot 3004 shown in Figure 3C, and the size of the response hotspot 3004 is larger than the size of the navigation bar 3001.
[0146] As shown in Figures 3C and 3D, the electronic device 100 can continue to receive user input operations on the control 3003, such as dragging the control 3003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 3003 can move with the movement of the user's finger; for example, the control 3003 can be located at the position of the user's finger as shown in Figure 3D.
[0147] As shown in Figure 3D, the distance between the position of control 3003 in Figure 3D and the preset position is less than the first threshold, and the distance between control 3003 in Figure 3D and the preset position is less than the distance between control 3003 and the preset position in Figure 3C. The electronic device 100 can expand the size of the response hotspot 3004. For example, the electronic device 100 can display the response hotspot 3005 shown in Figure 3D, and the size of the response hotspot 3005 is greater than the size of the response hotspot 3004.
[0148] Optionally, the size of the response hotspot can change with the distance between the control 3003 and the preset position. If the distance between the control 3003 and the preset position gradually decreases, the size of the response hotspot gradually increases until it reaches its maximum size, at which point the size of the response hotspot no longer changes. If the distance between the control 3003 and the preset position gradually increases, the size of the response hotspot gradually decreases until it reaches its minimum size, at which point the size of the response hotspot no longer changes. If the distance between the control 3003 and the preset position is greater than a first threshold, the response hotspot switches to displaying the navigation bar 3001.
[0149] Optionally, the smallest response thermal region can be the response thermal region 3004 shown in Figure 3C. The largest response thermal region can be the response thermal region 3006 shown in Figure 3E.
[0150] As shown in Figures 3D and 3E, the electronic device 100 can continue to receive user input operations on the control 3003, such as dragging the control 3003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 3003 can move with the movement of the user's finger, for example, the control 3003 can be located at the position of the user's finger as shown in Figure 3E.
[0151] As shown in Figure 3E, the distance between the position of control 3003 in Figure 3E and the preset position is less than the first threshold, and the distance between control 3003 in Figure 3E and the preset position is less than the distance between control 3003 and the preset position in Figure 3D. Electronic device 100 can expand the size of response hotspot 3005. For example, electronic device 100 can display response hotspot 3006 as shown in Figure 3E, and the size of response hotspot 3006 is greater than the size of response hotspot 3005.
[0152] Optionally, the size of the response hotspot 3006 shown in Figure 3E is the maximum size. If the user continues to drag the control 3003 downwards, the electronic device 100 will no longer expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0153] As shown in Figures 3E and 3F, the electronic device 100 can continue to receive user input operations on the control 3003, such as dragging the control 3003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 3003 can move with the movement of the user's finger, for example, the control 3003 can be located at the position of the user's finger as shown in Figure 3F.
[0154] As shown in Figure 3F, the size of the response hotspot 3006 is at its maximum size. Even if the distance between the control 3003 in Figure 3F and the preset position is less than the distance between the control 3003 and the preset position in Figure 3E, the electronic device 100 will not expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0155] As shown in Figures 3F and 3G, when control 3003 is within the response hotspot 3006, and the user releases their finger, electronic device 100 can display window 3008 as shown in Figure 3G in response to the user releasing their finger. Window 3008 displays a device ring containing multiple device icons, such as icon 3009 of electronic device 100, icon 3010 of electronic device 300, and icon 3011 of electronic device 200. Electronic device 100 can be a mobile phone. Electronic device 200 can be a laptop computer, such as the Magic Book X14 shown in Figure 3G. Electronic device 300 can be a large screen, such as the Max110 shown in Figure 3G.
[0156] Optionally, the electronic device 100 may not display the device ring in window 3008, but may directly display icons of one or more devices that have established a communication connection with the electronic device 100 in window 3008.
[0157] For example, as shown in Figures 3F and 3H, when the control 3003 is within the response hotspot 3006, the user releases their finger. In response to the user releasing their finger, the electronic device 100 can display the window 3014 shown in Figure 3H. The window 3014 displays the icon 3010 of the electronic device 300 and the icon 3011 of the electronic device 200.
[0158] Optionally, electronic devices 200 and 300 may be devices that have established a communication connection with electronic device 100 and are trusted devices of electronic device 100.
[0159] In one possible implementation, after searching for nearby devices, electronic device 100 can further filter these devices, displaying device options in the device ring that match the application to be streamed (such as Huawei Video application). Specifically, electronic device 100 can determine whether the searched device matches the Huawei Video application (i.e., whether the searched device's capabilities meet the requirements for running the Huawei Video application) based on the device information of the searched device and the application information of the Huawei Video application. When a searched device matches the Huawei Video application, electronic device 100 can display the corresponding icon of that device in the device ring. That is to say, electronic devices 200 and 300 in the device ring shown in Figure 3G are both devices that match the Huawei Video application.
[0160] For example, Huawei's video application requires devices to have both screen display and audio playback capabilities. Electronic device 100 can filter out devices with both screen display and audio playback capabilities from the searched devices, and then display the corresponding icons of the filtered devices on the device ring.
[0161] For example, as shown in Figures 3G and 3I, electronic device 100 can receive input operations from the user on icon 3011 of electronic device 200, such as long-pressing icon 3009 of electronic device 100 and moving it to icon 3011 of electronic device 200. In response to the user's input operation, electronic device 100 can migrate the Huawei Video application to electronic device 200.
[0162] Optionally, the task window of the Huawei Video application can also be displayed in window 3008. For input operations on icon 3011 of electronic device 200, the task window of the Huawei Video application can be dragged and moved to the display area where icon 3011 of electronic device 200 is located.
[0163] Optionally, the input operation for the icon 3011 of the electronic device 200 can also be a click operation for the icon 3011 of the electronic device 200.
[0164] For example, as shown in Figures 3H and 3I, electronic device 100 can receive input operations from users on icon 3011 of electronic device 200. For example, by clicking on icon 3011 of electronic device 200, electronic device 100 can migrate the Huawei Video application to electronic device 200.
[0165] For example, when electronic device 100 migrates a Huawei Video application to electronic device 200, it can mean that electronic device 100 can send migration data of the Huawei Video application to electronic device 200. After receiving the migration data of the Huawei Video application sent by electronic device 100, electronic device 100 can stop running the Huawei Video application, that is, close the Huawei Video application. Electronic device 200 can then continue running the Huawei Video application based on the migration data, thus successfully migrating the Huawei Video application to electronic device 200.
[0166] As shown in Figure 3I, after stopping the Huawei Video application, the electronic device 100 can stop displaying the desktop shown in Figure 3I. After continuing to run the Huawei Video application based on the migration data, the electronic device 200 can display the video playback interface 3012 shown in Figure 3J.
[0167] Optionally, the electronic device 100 may not display the user interface shown in Figures 3C-3D. In response to input operations on the video playback interface 3002, the electronic device 100 may directly display the response hotspot 3006 shown in Figure 3E.
[0168] Optionally, the electronic device 100 may not display the user interface shown in Figures 3B-3F, that is, it may not display the response hotspot. In response to input operations on the video playback interface 3002, the electronic device 100 may directly display the window 3008 shown in Figure 3G.
[0169] It is understandable that the display screens of electronic device 200 and electronic device 100 may have different sizes. After the Huawei video application is migrated to electronic device 200, electronic device 200 can adjust the layout of the content displayed on the user interface of the Huawei video application to adapt the display content to the display screen of electronic device 200. This application embodiment does not limit the method for adjusting the layout of the content displayed on the user interface of the Huawei video application.
[0170] In some embodiments, the video playback interface 3012 may further include a migration control. This migration control can be used to migrate the Huawei Video application to the electronic device 100. In response to an operation on the migration control, the electronic device 200 can send a request to migrate the Huawei Video application back to the electronic device 100. This request may include data for restoring the running state of the Huawei Video application. The electronic device 100 can run the Huawei Video application and adjust it to the running state of the Huawei Video application on the electronic device 100 based on this data. For example, if a user switches to playing another video in the Huawei Video application running on the electronic device 200, the electronic device 200 can play the other video selected by the user on the display screen. In response to an operation on the migration control, the electronic device 200 can migrate the Huawei Video application to the electronic device 100. The electronic device 100 can then play the other video selected by the user.
[0171] Optionally, after electronic device 100 migrates the Huawei Video application to electronic device 200, electronic device 100 can continue to run the Huawei Video application; this application does not limit this.
[0172] In other possible implementations, after finding nearby devices, the electronic device 100 can display icons corresponding to all found devices in a device ring. Then, in response to selecting the icon of one of the devices, the electronic device 100 can determine whether the selected device matches the Huawei Video application. If the selected device matches the Huawei Video application, the electronic device 100 can migrate the Huawei Video application to the selected device. If the selected device does not match the Huawei Video application, the electronic device 100 can prompt the user that the Huawei Video application cannot be migrated to the selected device.
[0173] For example, electronic device 100 can receive user input on icon 3011 of electronic device 200, and in response to the user's input, electronic device 100 can confirm whether electronic device 200 is compatible with Huawei Video application.
[0174] If electronic device 200 and Huawei Video application are compatible, electronic device 100 can migrate the Huawei Video application to electronic device 200. For example, refer to the descriptions in the embodiments shown in Figures 3I and 3J.
[0175] If electronic device 200 and Huawei Video application are incompatible, electronic device 100 can display the prompt message 3013 shown in Figure 3K. The prompt message 3013 includes the text "Magic Book X14 does not support running Huawei Video application". The prompt message 3013 is used to inform the user that electronic device 100 cannot migrate Huawei Video application to electronic device 200.
[0176] Using the method shown in Figures 3A-3K, when electronic device 100 displays the second user interface and first navigation bar of the first application, electronic device 100 can receive user operations in the second user interface, selecting the first application to migrate it to electronic device 200. Subsequently, electronic device 100 can change the display style of the first navigation bar to prompt the user to drag the first control to the display area where the first response hotspot is located. Electronic device 100 can then display a device ring within the first response hotspot. The user can select any device on the device ring to migrate the first application to the selected device, improving the user experience of cross-device application migration.
[0177] In some embodiments, when the electronic device 100 displays a desktop, an icon of a first application is displayed on the desktop. The electronic device 100 can receive the operation of the icon of the first application to display a first window. The first window displays an icon of the electronic device 200. The electronic device 100 can receive the user's operation on the icon of the electronic device 200 to migrate the first application to the electronic device 200.
[0178] Figures 4A-4I illustrate a schematic diagram of another set of electronic devices 100 migrating a first application from electronic device 100 to electronic device 200 based on user operation.
[0179] For example, the first application may be a memo application, the icon of the first application may be the icon of the memo application, the electronic device 100 may be a mobile phone, and the electronic device 200 may be a laptop computer.
[0180] For example, as shown in Figure 4A, the electronic device 100 displays a desktop and a navigation bar 3001. An icon for a memo application is displayed on the desktop. The memo application is either running in the background or closed. Optionally, the memo application running in the background means that the electronic device 100 has not closed its processes, but the user interface of the memo application is not displayed. The memo application being closed means that the electronic device 100 has closed the memo application process.
[0181] As shown in Figure 4A, the electronic device 100 can receive user input operations on the icon of the memo application, such as a long press. In response to the user's input operation, the electronic device 100 can display the control 4001 shown in Figure 4B. The control 4001 can be located at the position of the user's finger as shown in Figure 4B.
[0182] Optionally, and not limited to long-pressing the icon of the Notes app, the electronic device 100 can also receive other operations when the Notes app is selected; this application does not limit this to the selection of the Notes app.
[0183] Optionally, as shown in Figure 4B, a memo application icon is displayed within control 4001.
[0184] As shown in Figures 4A and 4B, in response to the distance between the position of control 4001 and the preset position being greater than a first threshold, electronic device 100 still displays navigation bar 3001.
[0185] For an explanation of the distance between the position of control 4001 and the preset position, please refer to the description of the distance between the position of control 3003 and the preset position in the embodiment of Figure 3B. This application will not repeat it here.
[0186] As shown in Figures 4B and 4C, the electronic device 100 can continue to receive user input operations on the control 4001, such as dragging the control 4001 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 4001 can move with the movement of the user's finger, for example, the control 4001 can be located at the position of the user's finger as shown in Figure 4C.
[0187] As shown in Figure 4C, if the distance between the position of control 4001 and the preset position in Figure 4C is less than the first threshold, the electronic device 100 can expand the size of the navigation bar 3001. For example, the electronic device 100 can display the response hotspot 3004 shown in Figure 4C, and the size of the response hotspot 3004 is larger than the size of the navigation bar 3001.
[0188] As shown in Figures 4C and 4D, the electronic device 100 can continue to receive user input operations on the control 4001, such as dragging the control 4001 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 4001 can move with the movement of the user's finger, for example, the control 4001 can be located at the position of the user's finger as shown in Figure 4D.
[0189] As shown in Figure 4D, the distance between the position of control 4001 in Figure 4D and the preset position is less than the first threshold, and the distance between control 4001 in Figure 4D and the preset position is less than the distance between control 4001 and the preset position in Figure 4C. The electronic device 100 can expand the size of the response hotspot 3004. For example, the electronic device 100 can display the response hotspot 3005 shown in Figure 4D, and the size of the response hotspot 3005 is greater than the size of the response hotspot 3004.
[0190] Optionally, the size of the response hotspot can change with the distance between the control 4001 and the preset position. If the distance between the control 4001 and the preset position gradually decreases, the size of the response hotspot gradually increases until it reaches its maximum size, at which point the size of the response hotspot no longer changes. If the distance between the control 4001 and the preset position gradually increases, the size of the response hotspot gradually decreases until it reaches its minimum size, at which point the size of the response hotspot no longer changes. If the distance between the control 4001 and the preset position is greater than a first threshold, the response hotspot switches to displaying the navigation bar 3001.
[0191] Optionally, the smallest response thermal region can be the response thermal region 3004 shown in Figure 4C. The largest response thermal region can be the response thermal region 3006 shown in Figure 4E.
[0192] As shown in Figures 4D and 4E, the electronic device 100 can continue to receive user input operations on the control 4001, such as dragging the control 4001 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 4001 can move with the movement of the user's finger, for example, the control 4001 can be located at the position of the user's finger as shown in Figure 4E.
[0193] As shown in Figure 4E, the distance between the position of control 4001 in Figure 4E and the preset position is less than the first threshold, and the distance between control 4001 in Figure 4E and the preset position is less than the distance between control 4001 and the preset position in Figure 4D. The electronic device 100 can expand the size of the response hotspot 3005. For example, the electronic device 100 can display the response hotspot 3006 shown in Figure 4E, and the size of the response hotspot 3006 is greater than the size of the response hotspot 3005.
[0194] Optionally, the size of the response hotspot 3006 shown in Figure 4E is the maximum size. If the user continues to drag the control 4001 downwards, the electronic device 100 will no longer expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0195] As shown in Figures 4E and 4F, the electronic device 100 can continue to receive user input operations on the control 4001, such as dragging the control 4001 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 4001 can move with the movement of the user's finger, for example, the control 4001 can be located at the position of the user's finger as shown in Figure 4F.
[0196] As shown in Figure 4F, the size of the response hotspot 3006 is at its maximum size. Even if the distance between the control 4001 in Figure 4F and the preset position is less than the distance between the control 4001 and the preset position in Figure 4E, the electronic device 100 will not expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0197] As shown in Figures 4F and 4G, when the control 4001 is within the response hot zone 3006, the user releases their finger. In response to the user releasing their finger, the electronic device 100 can display the window 3008 shown in Figure 4G. For a description of the content displayed in window 3008, please refer to the description in the embodiment of Figure 3G.
[0198] For details on how the electronic device 100 displays window 3008, please refer to the description in the embodiment shown in Figure 3G.
[0199] Optionally, the electronic device 100 may not display the user interface shown in Figures 4C-4D. In response to input operations on the video playback interface 3002, the electronic device 100 may directly display the response hotspot 3006 shown in Figure 4E.
[0200] Optionally, the electronic device 100 may not display the user interface shown in Figures 4B-4F, i.e., it may not display the response hotspot. In response to input operations on the icon for the memo application, the electronic device 100 may directly display the window 3008 shown in Figure 4G.
[0201] For example, as shown in Figures 4G and 4H, electronic device 100 can receive input operations from the user on icon 3011 of electronic device 200, such as long-pressing icon 3009 of electronic device 100 and moving it to icon 3011 of electronic device 200. In response to the user's input operation, electronic device 100 can migrate the memo application to electronic device 200.
[0202] Optionally, the input operation for the icon 3011 of the electronic device 200 can also be a click operation for the icon 3011 of the electronic device 200.
[0203] In response to an input operation to icon 3011 on electronic device 200, electronic device 100 can obtain migration data of the memo application and send the migration data of the memo application to electronic device 200. After receiving the migration data of the memo application sent by electronic device 100, electronic device 200 can continue to run the memo application based on the migration data and display the user interface in the memo application, thereby successfully migrating the memo application to electronic device 200.
[0204] Optionally, if the memo application is closed, the migration data of the memo application may include data from the second user interface within the memo application. The second user interface may include any of the following: the user interface displayed by the electronic device 100 when performing content editing tasks through the memo application, the home page of the memo application, or the last user interface displayed in the foreground by the electronic device 100 before closing the memo application. The user interface displayed when performing content editing tasks through the memo application may refer to a user interface in the memo application where the content is not yet fully edited. Optionally, if the electronic device 100 does not receive a save, complete, or end operation from the user, the electronic device 100 may confirm that the content in that user interface is not yet fully edited. Optionally, if the electronic device 100 analyzes the sentences displayed in the user interface and finds that there are no punctuation marks or no ending punctuation, the electronic device 100 may confirm that the content in that user interface is not yet fully edited. It should be noted that the electronic device 100 may also confirm a user interface where the content is not yet fully edited using other methods, which are not limited in this application.
[0205] Optionally, if the Notes app is open and running in the background, the migration data of the Notes app may include data from the second user interface in the Notes app, which may include the last user interface that the Notes app displayed in the foreground before it was running in the background.
[0206] Optionally, after migrating the Notes app to electronic device 200, electronic device 100 can close the Notes app. If electronic device 100 is running in the background, electronic device 100 can close the Notes app process.
[0207] Optionally, after migrating the Notes app to the electronic device 200, the electronic device 100 may not close the Notes app.
[0208] As shown in Figure 4H, after the Notes application is migrated to the electronic device 200, the electronic device 200 can display the desktop shown in Figure 4H. After continuing to run the Notes application based on the migrated data, the electronic device 200 can display the editing interface 4002 shown in Figure 4I.
[0209] Optionally, the editing interface 4002 may also include a migration control. This migration control can be used to migrate the memo application to the electronic device 100. In response to an operation on the migration control, the electronic device 200 can send a request to the electronic device 100 to migrate the memo application. This request may include data for restoring the running state of the memo application. The electronic device 100 can run the memo application and adjust it to the running state of the memo application on the electronic device 100 based on this data. For example, after the electronic device 200 displays the editing interface 4002, the electronic device 200 can receive user input in the editing interface 4002 to continue editing the meeting minutes. In response to an operation on the migration control, the electronic device 200 can migrate the memo application to the electronic device 100. The electronic device 100 can display the meeting minutes edited by the user on the electronic device 200.
[0210] It is understandable that the display screens of electronic device 200 and electronic device 100 may have different sizes. After the memo application is migrated to electronic device 200, electronic device 200 can adjust the layout of the content displayed on the user interface of the memo application to adapt the displayed content to the display screen of electronic device 200. This application embodiment does not limit the method for adjusting the layout of the content displayed on the user interface of the memo application.
[0211] In some embodiments, in response to a user's input operation on the icon 3011 of the electronic device 200, if the electronic device 200 and the Notes application are incompatible, the electronic device 100 may display a prompt message, which may include the text "Magic Book X14 does not support running the Notes application". This prompt message is used to inform the user that the electronic device 100 cannot migrate the Notes application to the electronic device 200.
[0212] Using the method shown in Figures 4A-4I, electronic device 100 can receive user input on the icon of a first application, selecting the first application to migrate it to electronic device 200. This saves the user the effort of transferring the first application from electronic device 100 to electronic device 200, simplifying the user experience. After selecting the first application, electronic device 100 can change the display style of the first navigation bar to prompt the user to drag the first control to the display area where the first response hotspot is located. Electronic device 100 can display icons of one or more devices within the first response hotspot. The user can select any icon from one or more devices to migrate the first application to the selected device, improving the user experience of cross-device application migration.
[0213] In some embodiments, electronic device 100 may receive user input to migrate a first portion of data from a first application to electronic device 200, and electronic device 200 may run the first application based on the first portion of data. Electronic device 100 may run the first application based on a second portion of data.
[0214] Figures 5A-5J exemplarily illustrate a schematic diagram of an electronic device 100 receiving a user operation and migrating a first portion of data from a first application to an electronic device 200.
[0215] For example, the first application can be a game application, the second user interface can be a game interface, electronic device 100 can be a mobile phone, and electronic device 300 can be a large screen.
[0216] For example, as shown in Figure 5A, the electronic device 100 displays a game interface 5001 and a navigation bar 3001. The game interface 5001 displays a game screen and game operation controls 5002. The game operation controls 5002 may include steering wheel operation controls and skill operation controls.
[0217] As shown in Figure 5A, the electronic device 100 can receive user input operations on the game interface 5001, such as a long press operation. In response to the user's input operation, the electronic device 100 can display the control 5003 shown in Figure 5B. The control 5003 can be located at the position of the user's finger as shown in Figure 5B.
[0218] Optionally, not limited to long-press operations on the game interface 5001, the electronic device 100 can also receive other operations to select the game application; this application does not limit this to such operations.
[0219] Optionally, as shown in Figure 5B, the game screen is displayed in control 5003.
[0220] As shown in Figures 5A and 5B, in response to the distance between the position of control 5003 and the preset position being greater than a first threshold, electronic device 100 still displays navigation bar 3001.
[0221] For an explanation of the distance between the position of control 5003 and the preset position, please refer to the description of the distance between the position of control 3003 and the preset position in the embodiment of Figure 3B. This application will not repeat it here.
[0222] As shown in Figures 5B and 5C, the electronic device 100 can continue to receive user input operations on the control 5003, such as dragging the control 5003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 5003 can move with the movement of the user's finger, for example, the control 5003 can be located at the position of the user's finger as shown in Figure 5C.
[0223] As shown in Figure 5C, if the distance between the position of control 5003 and the preset position in Figure 5C is less than the first threshold, the electronic device 100 can expand the size of the navigation bar 3001. For example, the electronic device 100 can display the response hotspot 3004 shown in Figure 5C, and the size of the response hotspot 3004 is larger than the size of the navigation bar 3001.
[0224] As shown in Figures 5C and 5D, the electronic device 100 can continue to receive user input operations on the control 5003, such as dragging the control 5003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 5003 can move with the movement of the user's finger, for example, the control 5003 can be located at the position of the user's finger as shown in Figure 5D.
[0225] As shown in Figure 5D, the distance between the position of control 5003 in Figure 5D and the preset position is less than the first threshold, and the distance between control 5003 in Figure 5D and the preset position is less than the distance between control 5003 and the preset position in Figure 5C. The electronic device 100 can expand the size of the response hotspot 3004. For example, the electronic device 100 can display the response hotspot 3005 shown in Figure 5D, and the size of the response hotspot 3005 is greater than the size of the response hotspot 3004.
[0226] Optionally, the size of the response hotspot can change with the distance between the control 5003 and the preset position. If the distance between the control 5003 and the preset position gradually decreases, the size of the response hotspot gradually increases until it reaches its maximum size, at which point the size of the response hotspot no longer changes. If the distance between the control 5003 and the preset position gradually increases, the size of the response hotspot gradually decreases until it reaches its minimum size, at which point the size of the response hotspot no longer changes. If the distance between the control 5003 and the preset position is greater than a first threshold, the response hotspot switches to displaying the navigation bar 3001.
[0227] Optionally, the smallest response thermal region can be the response thermal region 3004 shown in Figure 5C. The largest response thermal region can be the response thermal region 3006 shown in Figure 5E.
[0228] As shown in Figures 5D and 5E, the electronic device 100 can continue to receive user input operations on the control 5003, such as dragging the control 5003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 5003 can move with the movement of the user's finger, for example, the control 5003 can be located at the position of the user's finger as shown in Figure 5E.
[0229] As shown in Figure 5E, the distance between the position of control 5003 in Figure 5E and the preset position is less than the first threshold, and the distance between control 5003 in Figure 5E and the preset position is less than the distance between control 5003 and the preset position in Figure 5D. The electronic device 100 can expand the size of the response hotspot 3005. For example, the electronic device 100 can display the response hotspot 3006 shown in Figure 5E, and the size of the response hotspot 3006 is greater than the size of the response hotspot 3005.
[0230] Optionally, the size of the response hotspot 3006 shown in Figure 5E is the maximum size. If the user continues to drag the control 5003 downwards, the electronic device 100 will no longer expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0231] As shown in Figures 5E and 5F, the electronic device 100 can continue to receive user input operations on the control 5003, such as dragging the control 5003 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 5003 can move with the movement of the user's finger, for example, the control 5003 can be located at the position of the user's finger as shown in Figure 5F.
[0232] As shown in Figure 5F, the size of the response hotspot 3006 is at its maximum size. Even if the distance between the control 5003 in Figure 5F and the preset position is less than the distance between the control 5003 and the preset position in Figure 5E, the electronic device 100 will not expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0233] As shown in Figures 5F and 5G, when the control 5003 is within the response hot zone 3006, the user releases their finger. In response to the user releasing their finger, the electronic device 100 can display the window 5008 shown in Figure 5G. For a description of the content displayed in window 5008, please refer to the description in the embodiment of Figure 3G.
[0234] Optionally, the electronic device 100 may not display the user interface shown in Figures 5C-5D. In response to input operations on the game interface 5001, the electronic device 100 may directly display the response hotspot 3006 shown in Figure 5E.
[0235] Optionally, the electronic device 100 may not display the user interface shown in Figures 5C-5F, that is, it may not display the response hotspot. In response to input operations on the game interface 5001, the electronic device 100 may directly display the window 5008 shown in Figure 5G or the window 5009 shown in Figure 6A.
[0236] For example, as shown in Figure 5G, electronic device 100 displays a window 5008, which contains a screen migration control 5010 and an audio stream migration control 5011. The window 5008 also displays icons 3009 (electronic device 100), 3010 (electronic device 300), and 3011 (electronic device 200). Electronic device 100 can receive user input to the screen migration control 5010 to migrate the game application's screen to another device, and electronic device 100 can also receive user input to the audio stream migration control 5011 to migrate the game application's audio stream to another device.
[0237] For example, as shown in Figures 5G and 5H, electronic device 100 can receive user operations on screen migration control 5010, such as a click operation. In response to the user's input operation, electronic device 100 can change the display form of screen migration control 5010, such as darkening the color. Then, electronic device 100 can receive user operations on icon 3010 of electronic device 300, confirming the migration of the game application screen to electronic device 300.
[0238] For example, an operation on icon 3010 of electronic device 300 could be a long press on icon 3009 of electronic device 100 and a movement towards icon 3010 of electronic device 300.
[0239] Optionally, the operation on icon 3010 of electronic device 300 can also be a click operation on icon 3010 of electronic device 300.
[0240] As shown in Figures 5I and 5J, electronic device 100 can transfer the screen of the game application to electronic device 300, which can display the screen of the game application to provide users with a better visual experience. Electronic device 100 can display the game operation controls 5002 and play the audio stream of the game application to facilitate user operation and provide users with a better gaming experience.
[0241] In some embodiments, after electronic device 100 migrates the game application's screen to electronic device 300, electronic device 100 can also receive user input to migrate the game application's audio stream to electronic device 400 (e.g., a speaker). Electronic device 400 is not shown in the figure. The audio playback effect of electronic device 400 is stronger than that of electronic device 100, providing the user with a better auditory experience. In this way, electronic device 100 can display the game screen on a large screen, electronic device 100 can play game sounds through speakers, and the user can control the game using the game operation controls 5002 on electronic device 100, thus optimizing the user's visual, auditory, and control experiences.
[0242] In this way, the game application's running state before and after the transition can be seamlessly connected. Users can continue playing on the large screen from where they were playing on the electronic device 100 during the game application transition. The user's game progress will not be interrupted by the game application transition.
[0243] Scenario 2: Application cross-device collaboration.
[0244] Figures 6A-6C illustrate schematic diagrams of cross-device collaboration in applications.
[0245] Referring to the description in the embodiments of Figures 5A-5F, electronic device 100 can receive user operations and display window 5009 as shown in Figure 6A. Window 5009 also displays icon 3009 of electronic device 100, icon 3010 of electronic device 300, and icon 3011 of electronic device 200. Electronic device 100 can receive user operations on icon 3010 of electronic device 300 and cooperate with electronic device 300 to run the game application.
[0246] For example, an operation on icon 3010 of electronic device 300 could be a long press on icon 3009 of electronic device 100 and a movement towards icon 3010 of electronic device 300, as shown in Figure 6A.
[0247] Optionally, the operation on icon 3010 of electronic device 300 can also be a click operation on icon 3010 of electronic device 300.
[0248] As shown in Figures 6B and 6C, electronic device 100 can display the user interface shown in Figure 6B, which may include game graphics and game control controls. Electronic device 100 can also display the user interface shown in Figure 6C, which may also include game graphics and game control controls. In other words, electronic device 100 and electronic device 300 can collaboratively run the game application and display the same game interface. The game interfaces displayed on electronic device 100 and electronic device 300 will also change synchronously.
[0249] Using the method shown in Figures 6A-6C, when the electronic device 100 displays the second user interface and the first navigation bar of the first application, the electronic device 100 can receive user operations in the second user interface, such as selecting the first application. After selecting the first application, the electronic device 100 can change the display style of the first navigation bar to prompt the user to drag the first control to the display area where the first response hotspot is located. The electronic device 100 can then display a device ring within the first response hotspot. The user can select any device on the device ring, and the electronic device 100 can collaboratively run the first application with the user-selected device, improving the user experience of cross-device application collaboration.
[0250] Figure 7A shows a schematic diagram of a method for applying cross-device migration.
[0251] The method shown in Figure 7A may include, but is not limited to, the following steps:
[0252] S701A, electronic device 100 and electronic device 200 / 300 establish a communication connection.
[0253] In some embodiments, electronic device 100 may also be referred to as a first electronic device. Electronic device 200 / electronic device 300 may also be referred to as a second electronic device.
[0254] Optionally, the communication connection can be, for example, a 2G / 3G / 4G / 5G communication connection, a wireless fidelity (Wi-Fi) network communication connection, etc. This application embodiment does not limit the method of the communication connection.
[0255] Optionally, not limited to communication connection, electronic device 200 / electronic device 300 also needs to be a trusted device of electronic device 100. A trusted device can refer to a device that has logged into the same account as electronic device 200 / electronic device 300 and electronic device 100, or it can refer to a device that has logged into a different account on electronic device 100 but the different accounts are related to each other (such as different accounts of family members), or it can refer to a device that has established a trust relationship with electronic device 100.
[0256] S702A, electronic device 100 displays a second user interface and a first navigation bar for a first application, or displays an icon and a first navigation bar for the first application.
[0257] For example, the first application can be the Huawei Video application, and the second user interface can be the video playback interface 3002 shown in Figure 3A.
[0258] For example, the first application can be a game application, and the second user interface can be the game interface 5001 shown in Figure 5A.
[0259] For example, the first application may be a memo application, and the icon of the first application may be the icon of the memo application shown in Figure 4A.
[0260] The first navigation bar can be navigation bar 3001.
[0261] S703A, electronic device 100 receives a first operation on an icon of a second user interface or a first application, and displays a first control and a first response hotspot.
[0262] In some embodiments, the electronic device 100 may also display a multitasking management center interface, which includes a task window of a first application. The electronic device 100 may receive a first operation from the user on the task window of the first application and display a first control and a first response hotspot.
[0263] Optionally, the size of the first response hotspot is larger than the size of the first navigation bar.
[0264] Optionally, the first operation can be to select the first application and drag the first control to the display area where the first navigation bar is located.
[0265] For example, the first operation for the second user interface may be a long press on the video playback interface 3002 and a drag operation of the control 3003 to the lower edge of the display screen of the electronic device 100.
[0266] For example, the first operation for the second user interface may be a long press on the game interface 5001 and a drag operation of the control 5003 to the lower edge of the display screen of the electronic device 100.
[0267] For example, the first operation on the icon of the first application could be a long press on the icon of the memo application and a drag operation of the control 4001 to the lower edge of the display screen of the electronic device 100.
[0268] In some embodiments, in response to a user’s first operation on an icon of a second user interface or a first application, the electronic device 100 may directly display the first control and the first response hotspot without determining whether the distance between the first control and the preset position is less than or equal to a first threshold.
[0269] In some embodiments, in response to a user’s first operation on an icon of a second user interface or a first application, the electronic device 100 needs to determine whether the distance between the first control and a preset position is less than or equal to a first threshold.
[0270] If the distance between the first control and the preset position is greater than a first threshold, the electronic device 100 will only display the first control and not the first response hotspot. After the electronic device 100 displays the first control, it can continue to receive the user's first operation on the first control, such as dragging the first control and moving it towards the bottom edge of the screen. The electronic device 100 continues to check whether the distance between the first control and the preset position is less than or equal to the first threshold. The electronic device 100 displays the first response hotspot only when the distance between the first control and the preset position is less than or equal to the first threshold.
[0271] If the distance between the first control and the preset position is less than or equal to the first threshold, the electronic device 100 displays the first control and the first response hot zone.
[0272] Optionally, the preset position can indicate the location of navigation bar 3001, the lower edge of the display screen of electronic device 100, or other positions. This application does not limit this.
[0273] For example, if the preset position refers to the position where the navigation bar 3001 is located, the distance between the first control and the navigation bar 3001 can refer to the distance between the center point of the first control and the center point of the navigation bar 3001, or the distance between the upper edge of the first control and the upper edge of the navigation bar 3001, or the distance between the lower edge of the first control and the lower edge of the navigation bar 3001. This application does not limit the definition of the distance between the first control and the navigation bar 3001.
[0274] For example, if the preset position refers to the position of the bottom edge of the display screen of the electronic device 100, the distance between the first control and the bottom edge of the display screen of the electronic device 100 can refer to the distance between the center point of the first control and the bottom edge of the display screen of the electronic device 100, or the distance between the top edge of the first control and the bottom edge of the display screen of the electronic device 100, or the distance between the bottom edge of the first control and the bottom edge of the display screen of the electronic device 100.
[0275] Optionally, the size of the first response hotspot can be determined based on the distance between the position of the first control and a preset position. The size of the first response hotspot can also vary depending on the distance between the position of the first control and the preset position.
[0276] The electronic device 100 continues to receive the first operation on the first control and changes the display size of the first response hot zone according to the drag distance.
[0277] When the distance between the first control and the preset position is less than a first threshold, the electronic device 100 can change the display form of the first navigation bar. For example, the electronic device 100 can display a first response hotspot, the size of which is larger than the size of the first navigation bar, to prompt the user to drag the first control to the display area where the first response hotspot is located.
[0278] After the electronic device 100 displays the first response hotspot, the electronic device 100 can continue to receive the user's first operation on the first control.
[0279] Optionally, if the first operation is to long press the first control and move it in the direction of the display area where the first navigation bar is located, the electronic device 100 can enlarge the size of the first response hot area until the size of the first response hot area reaches its maximum size, and the size of the first response hot area no longer changes.
[0280] Optionally, if the first operation is a long press on the first control and a movement in the opposite direction to the display area where the first navigation bar is located, the electronic device 100 can reduce the size of the first response hotspot until the size of the first response hotspot reaches its minimum size, and then the size of the first response hotspot changes again. If the distance between the position of the first control and the preset position is greater than a first threshold, the electronic device 100 stops displaying the first response hotspot and begins displaying the first navigation bar.
[0281] Optionally, the size of the first response hot zone can also be fixed.
[0282] S704A. When the first control is located within the first response hot zone, the electronic device 100 detects that the first operation has ended and displays a first window, which includes the icon of the electronic device 100 and the icons of the electronic device 200 / 300.
[0283] After the electronic device 100 displays the first response hot zone, when the first control is located within the first response hot zone, the electronic device 100 detects that the first operation has ended, and the electronic device 100 can display the first window.
[0284] If the first control is not within the first response hot zone, and the electronic device 100 detects that the first operation has ended, the electronic device 100 continues to display the second user interface and the first navigation bar, or continues to display the icon of the first application and the first navigation bar.
[0285] Optionally, the first control being located within the first response hot zone can mean that the entire content of the first control is located within the first response hot zone, or it can mean that part of the content of the first control is located within the first response hot zone. This application does not limit this.
[0286] The first window displays an icon of electronic device 100, an icon of electronic device 200 that has established a communication connection with electronic device 100, or an icon of electronic device 300. Optionally, the icon of electronic device 100 may not be displayed in the first window.
[0287] For example, the first window can be window 3008, window 5008, or window 5009. The icon of electronic device 100 can be icon 3009. The icon of electronic device 200 can be icon 3011. The icon of electronic device 300 can be icon 3010.
[0288] In one possible implementation, after finding nearby devices, electronic device 100 can further filter these devices, displaying device options in a device ring that match the first application. Specifically, electronic device 100 can determine whether a found device matches the first application (i.e., whether the found device's capabilities meet the requirements for running the first application) based on the device information of the found devices and the application information of the first application. When a found device matches the first application, electronic device 100 can display the corresponding icon of that device in the first window. In other words, electronic device 200 / electronic device 300 are devices that match the first application.
[0289] In other possible implementations, after searching for nearby devices, the electronic device 100 can display icons corresponding to all the searched devices in a first window. Then, in response to selecting one of the device icons, the electronic device 100 can determine whether the selected device matches the first application. When the selected device matches the first application, the electronic device 100 can migrate the first application to the selected device or the electronic device 100 and the selected device can run the first application together. When the selected device does not match the first application, the electronic device 100 can prompt the user that the first application cannot be migrated to the selected device or that the electronic device 100 and the selected device cannot run the first application together.
[0290] Optionally, the device information may include, but is not limited to, any one or more of the following: the SDK version number of the device's operating system (OS), the device's operating system type, the device's manufacturer identification (ID), the system capabilities of the device's operating system, the device's chip solution capabilities, and the device's product solution capabilities.
[0291] Application information may include, but is not limited to, any one or more of the following: application version number, system capabilities required by the application device, chip solution capabilities, and product solution capabilities.
[0292] Optionally, after electronic device 100 sends the migration data of the first application to electronic device 200 / electronic device 300, electronic device 100 may continue to display the first window or stop displaying the first window.
[0293] S705A, electronic device 100 receives and responds to a second operation for an icon of electronic device 200 / electronic device 300, and obtains migration data for the first application.
[0294] In some embodiments, the second operation may be the operation of selecting the device to which the first application is to be migrated.
[0295] For example, the second operation on the device identifier of electronic device 200 can be a long press operation on icon 3009 of electronic device 100 and a movement operation towards icon 3011 of electronic device 200, as shown in FIG. 3G. It can also be a click operation on icon 3011 of electronic device 200.
[0296] For example, the second operation on the device identifier of electronic device 200 can be a long press operation on icon 3009 of electronic device 100 and a movement operation towards icon 3011 of electronic device 200, as shown in FIG4G. It can also be a click operation on icon 3011 of electronic device 200.
[0297] For example, the second operation on the device identifier of electronic device 300 can be a long press operation on icon 3009 of electronic device 100 and a movement operation towards icon 3010 of electronic device 300, as shown in FIG. 5H. It can also be a click operation on icon 3010 of electronic device 300.
[0298] In other embodiments, the second operation may also be the operation of selecting a device that runs the first application in conjunction with the electronic device 100.
[0299] For example, the second operation on the device identifier of electronic device 300 can be a long press operation on icon 3009 of electronic device 100 and a movement operation towards icon 3010 of electronic device 300, as shown in FIG. 6A. It can also be a click operation on icon 3010 of electronic device 300.
[0300] In response to the second operation, electronic device 100 can acquire migration data of the first application, which is used to restore the running state of the first application on electronic device 100 on electronic device 200 / electronic device 300.
[0301] Optionally, the runtime data of the first application may include, but is not limited to, any of the following: video playback data, music playback data, navigation data, content editing data, game data, and web browsing data.
[0302] In some embodiments, when the first operation is an operation on the second user interface of the first application, the migration data of the first application may include, but is not limited to, the data of the second user interface of the first application. The data of the second user interface is used by the electronic device 200 to continue running the first application and display the first user interface of the first application. The first user interface of the first application is the same as or partially the same as the second user interface of the first application.
[0303] For example, the migration data of the first application can be the running data of the Huawei video application. The migration data of the Huawei video application is used by the electronic device 200 to continue playing the video "Brave Step" based on the progress of the video played on the electronic device 100, so that the video playback will not be interrupted.
[0304] For example, the migration data of the first application could be the running data of a game application. This game application migration data allows the electronic device 300 to continue running the game based on the game progress on the electronic device 100. In this way, the game progress before and after the migration can be seamlessly connected. Users can continue playing on the electronic device 300 from their game progress on the electronic device 100 when the game application migrated, and their game progress will not be interrupted by the migration.
[0305] In some embodiments, when the first operation is an operation on the icon of a first application, the migration data of the first application may include, but is not limited to, data of the second user interface of the first application. This second user interface data is used by the electronic device 300 to continue running the first application and displaying the first user interface of the first application. The first user interface of the first application is the same as or partially the same as the second user interface of the first application.
[0306] Optionally, in response to a first operation on the icon of the first application, the electronic device 100 needs to confirm whether the first application is turned on.
[0307] If the first application is running, the second user interface can be the most recent user interface that the first application displayed in the foreground before being moved to the background. Alternatively, the second user interface can be the user interface that the first application displayed in the foreground before being moved to the background, but not the last time it was displayed in the foreground.
[0308] If the first application is closed, the second user interface can be the user interface most recently displayed in the foreground before the first application was closed. Alternatively, the second user interface can also be the user interface displayed when the first application was performing the target task before it was closed. Alternatively, the second user interface can also be the homepage of the first application. The target task can include, but is not limited to, any of the following: video playback task, music playback task, navigation task, content editing task, game task, web browsing task, etc.
[0309] For example, if the first application is a memo application, and the memo application is closed, in response to the first operation on the memo application, electronic device 100 can obtain the unfinished editing interface of the memo application before it was closed, such as a second user interface. Optionally, if electronic device 100 does not receive a user's save operation or does not recognize an end marker, electronic device 100 can confirm that the user interface is an unfinished editing interface. Electronic device 100 can obtain the data of the second user interface and send it to electronic device 200 / 300. Electronic device 200 / 300 can display the data of the second user interface on the first user interface, and the user can continue editing the unfinished user interface of the memo application on electronic device 200 / 300.
[0310] For example, if the first application is the Huawei Video application, and the Huawei Video application is closed, in response to the first operation on the Huawei Video application, electronic device 100 can obtain the video playback interface of the Huawei Video application before it was closed, which is the interface where the video was not yet finished playing, such as the second user interface. Optionally, if the video in the Huawei Video application has not reached its end position, and electronic device 100 receives a user operation to close the Huawei Video application, then electronic device 100 can confirm that the video playback interface is the interface for the video that was not yet finished playing. Electronic device 100 can obtain the data from the second user interface and send it to electronic device 200 / electronic device 300. Electronic device 200 / electronic device 300 can display the data from the second user interface on the first user interface, i.e., continue playing the video in the Huawei Video application, and the user can watch the video that was not yet finished playing on electronic device 100 on electronic device 200 / electronic device 300.
[0311] For example, if the first application is a navigation application and it is closed, in response to a first operation on the navigation application, electronic device 100 can obtain the navigation interface (e.g., a second user interface) from the navigation application before it was closed. Optionally, if the real-time location of electronic device 100 has not reached the destination indicated by the navigation route, and electronic device 100 receives a user operation to close the navigation application, then electronic device 100 can confirm that the navigation interface is one where navigation has not ended. Electronic device 100 can obtain the data from the second user interface and send it to electronic device 200 / 300. Electronic device 200 / 300 can then display the first user interface based on the data from the second user interface, i.e., continue displaying the navigation interface, allowing the user to continue viewing the navigation route on electronic device 200 / 300.
[0312] In some embodiments, the migration data of the first application may also include the identifier of the first application.
[0313] In some embodiments, the migration data of the first application may also exclude the identifier of the first application.
[0314] For details on how the electronic device 100 determines the first migration data of the first application based on the operating state of the first application, please refer to the description in the embodiment of Figure 7B.
[0315] S706A, electronic device 100 sends the migration data of the first application to electronic device 200 / electronic device 300.
[0316] S707A, electronic device 200 / electronic device 300 display the first user interface of the first application based on the migration data of the first application.
[0317] After acquiring the migration data of the first application, electronic device 100 can send the migration data of the first application to electronic device 200 / 300. Electronic device 200 / 300 can then continue running the first application based on the migration data and display the first user interface of the first application. The first user interface of the first application is the same as or partially the same as the second user interface of the first application.
[0318] For example, the first application can be the Huawei Video application, and electronic device 100 can migrate the Huawei Video application to electronic device 200, where electronic device 200 can continue playing videos from the Huawei Video application.
[0319] For example, the first application can be a memo application, and electronic device 100 can transfer the memo to electronic device 200. Electronic device 200 can continue to display the user interface in the memo application, and the user can continue to edit the content in the memo application in electronic device 200.
[0320] For example, the first application could be a game application, and electronic devices 100 and 200 could work together to run the game application.
[0321] Optionally, if the electronic device 200 has a first application installed, the electronic device 100 can continue to run the first application based on the migration data of the first application and display the first user interface of the first application.
[0322] Optionally, if the first application is not installed on the electronic device 200, the electronic device 100 can also migrate the first application to the electronic device 200. The electronic device 200 can also continue to run the first application based on the migration data of the first application and display the first user interface of the first application.
[0323] Using the method shown in the embodiment of FIG7A, the electronic device 100 can receive user operations on the user interface or the icon of the first application, migrate the first application to other devices selected by the user, or run the first application in collaboration with other devices selected by the user, thereby improving the user experience of application cross-device migration or application cross-device collaboration.
[0324] The following describes how electronic device 100 migrates the first application to electronic device 200 when electronic device 100 receives the user's first operation on the icon of the first application.
[0325] Figure 7B illustrates a flowchart of another method for applying cross-device migration.
[0326] As shown in Figure 7B, electronic device 100 includes an application layer and a framework / system service layer, while electronic device 200 includes a framework / system service layer. The application layer in electronic device 100 includes a first application and a third application. The framework / system service layer in electronic device 100 may include an AI business subsystem, a user program management module, a distributed task scheduler, and a distributed soft bus. The framework / system service layer in electronic device 200 may also include a distributed task scheduler and a distributed soft bus.
[0327] In some embodiments, the third application may also be referred to as an AI application or a voice assistant application.
[0328] In this embodiment of the application, the electronic device 100 can display a first window through a third application, allowing the user to select the target device for migration by the first application within the first window.
[0329] Electronic device 100 can determine the migration data of the first application based on the running status (e.g., on or off) of the first application selected by the user through the AI business subsystem, or through the AI business subsystem and other modules in the framework layer / system service layer. The migration data of the first application is used to migrate the first application in electronic device 100 to electronic device 200, or it can also be used for electronic device 100 and electronic device 200 to run the first application together.
[0330] As shown in Figure 7B, when electronic device 100 receives a user's first operation on the icon of the first application, the method by which electronic device 100 migrates the first application to electronic device 200 may include, but is not limited to, the following steps:
[0331] 1. The application layer in electronic device 100 sends the identifier of the first application to the framework layer / system service layer in electronic device 100.
[0332] Electronic device 100 receives an operation on an icon for a first application. In response to the operation on the icon for the first application, the application layer in electronic device 100 can send the identifier of the first application to the framework layer / system service layer in electronic device 100.
[0333] Optionally, the application layer in electronic device 100 can send the identifier of the first application to the AI business subsystem in electronic device 100.
[0334] The AI business subsystem in electronic device 100 can, together with other modules in the framework layer / system service layer, identify the migration data of the first application based on the running status of the first application.
[0335] For example, the AI business subsystem in electronic device 100 can work with the user program management module and distributed task scheduling in electronic device 100 to determine the migration data of the first application based on the on or off status of the first application.
[0336] For example, the AI business subsystem in electronic device 100 can send the identifier of the first application to the user program management module in electronic device 100. The user program management module in electronic device 100 can confirm the on or off status of the first application, obtain the historical operation data of the first application, and send the on or off status of the first application and the historical operation data of the first application to the AI business subsystem.
[0337] The AI business subsystem in electronic device 100 can determine the migration data of the first application based on the historical operation data of the first application. Alternatively, it can determine the migration data of the first application based on the on or off status of the first application and the historical operation data of the first application.
[0338] If the first application is running, its historical runtime data includes runtime data generated when the application was running in the foreground. The migration data of the first application includes data from its second user interface, which may be the user interface displayed in the foreground before the application was moved to the background. Optionally, the second user interface may be the user interface that the application last displayed in the foreground before moving to the background.
[0339] Optionally, the second user interface may also be the data in the user interface displayed by the first electronic device when performing the target task through the first application. The target task includes any of the following: video playback task, music playback task, navigation task, content editing task, game task, and web browsing task.
[0340] For example, the first application could be a memo app, and the second user interface could be a content editing interface or note editing interface within the memo app. Users can continue editing content or notes that were not finished on the first electronic device on the second electronic device.
[0341] For example, the first application could be the Huawei Music app, and the second user interface could be the audio playback interface within the Huawei Music app. The user can continue listening to music that wasn't finished playing on the first electronic device via the second electronic device.
[0342] For example, the first application could be the Huawei Video app, and the second user interface could be the video playback interface within the Huawei Video app. The user can continue watching the video that was not finished playing on the first electronic device using the second electronic device.
[0343] For example, the first application could be a map application, and the second user interface could be a navigation interface within the map application. The user can continue viewing the navigation information displayed in the first application on the first electronic device while on the second electronic device.
[0344] For example, the first application could be a game application, and the second user interface could be the game interface within the game application. The user can continue playing the game that was not finished on the first electronic device on the second electronic device.
[0345] For example, the first application could be a news application, and the second user interface could be a web browsing interface within the news application. The user can continue viewing the webpage displayed in the first application on the first electronic device while on the second electronic device.
[0346] If the first application is closed, its historical running data includes running data generated before it was closed. The migration data of the first application includes data from the second user interface within the first application. The second user interface can include any of the following: the user interface displayed by the electronic device 100 when performing a target task through the first application, the homepage of the first application, or the user interface displayed in the foreground by the electronic device 100 before closing the first application. The target task can include, but is not limited to, any of the following: video playback task, music playback task, navigation task, content editing task, game task, web browsing task, etc. Optionally, the second user interface can be the last user interface displayed in the foreground by the electronic device 100 before closing the first application.
[0347] Optionally, after obtaining the migration data of the first application, the AI business subsystem in the electronic device 100 can send the migration data of the first application to the distributed task scheduler in the electronic device 100.
[0348] The distributed task scheduling in electronic device 100 can obtain information about one or more devices that have established a first communication connection with electronic device 100, including electronic device 200.
[0349] Optionally, the distributed task scheduling in the electronic device 100 can send information about one or more devices that have established a first communication connection with the electronic device 100 to a third application, and the third application can display icons of one or more devices that have established a first communication connection with the electronic device 100 in a first window.
[0350] Optionally, the third application can receive the user's selection of the electronic device 200 and send the information of the electronic device 200 to the distributed task scheduler.
[0351] Optionally, if the electronic device 100 has not established a communication connection with other devices, the electronic device 100 may prompt the user to establish a communication connection with other devices.
[0352] Optionally, if the electronic device 100 fails to establish a communication connection with the first type of device, the electronic device 100 may prompt the user to establish a communication connection with the first type of device. The first type of device is associated with the first application. In this way, the electronic device 100 can confirm the migration of the first application to an electronic device compatible with it, thereby improving the user experience of cross-device application migration.
[0353] For example, if the first application is a video playback application, then the first type of device can be a large screen, allowing users to watch videos on a large screen and enhancing their visual experience. As another example, if the first application is an audio playback application, then the first type of device can be a speaker, allowing users to listen to music through a speaker and enhancing their auditory experience.
[0354] 2. Based on the user's operation of selecting electronic device 200, electronic device 100 acquires and sends the migration data of the first application and information of electronic device 200 to the distributed soft bus in electronic device 100.
[0355] Electronic device 100 can receive the operation of selecting electronic device 200, that is, selecting electronic device 200 as the target device for the first application migration. After selecting electronic device 200, the framework layer / system service layer in electronic device 100 can send the migration data of the first application and the information of electronic device 200 to the distributed soft bus in electronic device 100.
[0356] Optionally, electronic device 100 can send migration data of the first application and information of electronic device 200 to the distributed soft bus in electronic device 100 through distributed task scheduling in electronic device 100.
[0357] Optionally, electronic device 100 can send migration data of the first application to the distributed soft bus in electronic device 100 through the AI business subsystem in electronic device 100. Electronic device 100 can also send information of electronic device 200 to the distributed soft bus in electronic device 100 through the distributed task scheduling in electronic device 100.
[0358] 3. The distributed soft bus in electronic device 100 sends the migration data of the first application to the distributed soft bus in electronic device 200 based on the information of electronic device 200.
[0359] In response to the operation of selecting electronic device 200, electronic device 100 can send the migration data of the first application and the information of electronic device 200 to the distributed soft bus on electronic device 100. The distributed soft bus on electronic device 100 then sends the migration data of the first application to the distributed soft bus on electronic device 200 based on the information of electronic device 200.
[0360] Optionally, the distributed soft bus on electronic device 100 can send the first content to electronic device 200 based on the communication connection between electronic device 100 and electronic device 200. The communication connection between electronic device 100 and electronic device 200 includes, but is not limited to, any of the following: Bluetooth, Wi-Fi, UWB, Starflash, etc.
[0361] 4. The distributed soft bus on the electronic device 200 sends the migration data of the first application to the application layer on the electronic device 200.
[0362] 5. The application layer on the electronic device 200 continues to display the first user interface of the first application based on the migration data of the first application, and the second user interface of the first application is the same as or partially the same as the first user interface of the first application.
[0363] After acquiring the migration data of the first application, the distributed soft bus on electronic device 200 can send the migration data of the first application to the application layer on electronic device 200. The application layer on electronic device 200 can schedule the corresponding functional modules to continue displaying the first user interface of the first application based on the migration data of the first application, so as to realize the migration of the first application from electronic device 100 to electronic device 200. The content of the second user interface of the first application is the same as or partially the same as the content of the first user interface of the first application.
[0364] For example, the content in the second user interface may differ from the content in the first user interface. This could include situations where, if both the second and first user interfaces are video playback interfaces, the video playback progress in the second user interface differs from that in the first user interface.
[0365] Scenario 3: Data transfer across devices.
[0366] In some embodiments, when the electronic device 100 displays a first user interface of a first application, the first user interface includes first data. The electronic device 100 can receive user operations on the first data, display a first response hotspot, and display a device ring within the first response hotspot. An icon of the electronic device 200 is displayed on the device ring. The electronic device 100 can receive user operations on the icon of the electronic device 200 and transfer the second data corresponding to the first data to the electronic device 200.
[0367] Figures 8A-8M illustrate a schematic diagram of a set of electronic devices 100 transferring data from a first application to electronic devices 200 based on user operations.
[0368] For example, the first application may be an instant messaging application, the first user interface may be a chat interface, the electronic device 100 may be a mobile phone, and the electronic device 200 may be a laptop computer.
[0369] For example, as shown in Figure 8A, electronic device 100 displays a chat interface and navigation bar 3001 of an instant messaging application, which includes a file 8001 sent by contact “Lily”.
[0370] As shown in Figure 8A, the electronic device 100 can receive user input operations on the icon of the file 8001, such as a long press. In response to the user's input operation, the electronic device 100 can display the control 8002 shown in Figure 8A. The control 8002 can be located at the position of the user's finger as shown in Figure 8A.
[0371] Optionally, as shown in Figure 8A, the control 8002 displays an icon for file 8001.
[0372] As shown in Figure 8B, in response to the distance between the position of control 8002 and the preset position being greater than the first threshold, electronic device 100 still displays navigation bar 3001.
[0373] For an explanation of the distance between the position of control 8002 and the preset position, please refer to the description of the distance between the position of control 3003 and the preset position in the embodiment of Figure 3B. This application will not repeat it here.
[0374] As shown in Figures 8A and 8B, the electronic device 100 can continue to receive user input operations on the control 8002, such as dragging the control 4001 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 8002 can move with the movement of the user's finger, for example, the control 8002 can be located at the position of the user's finger as shown in Figure 8B.
[0375] As shown in Figure 8B, if the distance between the position of control 8002 and the preset position in Figure 8B is less than the first threshold, the electronic device 100 can expand the size of the navigation bar 3001. For example, the electronic device 100 can display the response hotspot 3004 shown in Figure 8B, and the size of the response hotspot 3004 is larger than the size of the navigation bar 3001.
[0376] As shown in Figures 8B and 8C, the electronic device 100 can continue to receive user input operations on the control 8002, such as dragging the control 8002 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 8002 can move with the movement of the user's finger, for example, the control 8002 can be located at the position of the user's finger as shown in Figure 8C.
[0377] As shown in Figure 8C, if the distance between the position of control 8002 and the preset position in Figure 8C is less than the first threshold, the electronic device 100 can expand the size of the navigation bar 3001. For example, the electronic device 100 can display the response hotspot 3004 shown in Figure 8C. The size of the response hotspot 3005 is larger than the size of the response hotspot 3004.
[0378] As shown in Figures 8C and 8D, the electronic device 100 can continue to receive user input operations on the control 8002, such as dragging the control 8002 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 8002 can move with the movement of the user's finger, for example, the control 8002 can be located at the position of the user's finger as shown in Figure 8D.
[0379] As shown in Figure 8D, the distance between the position of control 8002 in Figure 8D and the preset position is less than the first threshold, and the distance between control 8002 in Figure 8D and the preset position is less than the distance between control 8002 and the preset position in Figure 8C. The electronic device 100 can expand the size of the response hotspot 3004. For example, the electronic device 100 can display the response hotspot 3006 shown in Figure 8D. The size of the response hotspot 3006 is larger than the size of the response hotspot 3005.
[0380] Optionally, the size of the response hotspot can change with the distance between the control 8002 and the preset position. If the distance between the control 8002 and the preset position gradually decreases, the size of the response hotspot gradually increases until it reaches its maximum size, at which point the size of the response hotspot no longer changes. If the distance between the control 8002 and the preset position gradually increases, the size of the response hotspot gradually decreases until it reaches its minimum size, at which point the size of the response hotspot no longer changes. If the distance between the control 8002 and the preset position is greater than a first threshold, the response hotspot switches to displaying the navigation bar 3001.
[0381] Optionally, the smallest response thermal region can be the response thermal region 3004 shown in Figure 8B. The largest response thermal region can be the response thermal region 3006 shown in Figure 8D.
[0382] As shown in Figures 8D and 8E, the electronic device 100 can continue to receive user input operations on the control 8002, such as dragging the control 8002 towards the lower edge of the display screen of the electronic device 100. In response to this user operation, the control 8002 can move with the user's finger, for example, the control 8002 can be located at the position of the user's finger as shown in Figure 8E.
[0383] As shown in Figure 8E, the size of the response hotspot 3006 is at its maximum size. Even if the distance between the control 4001 in Figure 8E and the preset position is less than the distance between the control 8002 in Figure 8D and the preset position, the electronic device 100 will not expand the size of the response hotspot 3006 and will continue to display the response hotspot 3006.
[0384] As shown in Figures 8E and 8F, when the control 8002 is within the response hot zone 3006, the user releases their finger. In response to the user releasing their finger, the electronic device 100 can display the window 3008 shown in Figure 8F. The window 3008 displays the control 8003 and a device ring. The control 8003 is used to indicate the file selected by the user. For a description of the content displayed in the window 3008, please refer to the description in the embodiment of Figure 3G.
[0385] For details on how the electronic device 100 displays window 3008, please refer to the description in the embodiment shown in Figure 3G.
[0386] For example, as shown in Figures 8F, 8G and 8H, electronic device 100 can receive input operations from a user on icon 3011 of electronic device 200, such as long-pressing icon 3009 of electronic device 100 and moving it to icon 3011 of electronic device 200. In response to the user's input operation, electronic device 100 can transfer file 8001 to electronic device 200.
[0387] Optionally, the input operation for the icon 3011 of the electronic device 200 can also be a click operation for the icon 3011 of the electronic device 200.
[0388] As shown in Figure 8G, after electronic device 100 transfers file 8001 to electronic device 200, electronic device 100 can display the chat interface shown in Figure 8G. Optionally, electronic device 100 can also continue to display window 3008 as shown in Figure 8F.
[0389] As shown in Figure 8H, after receiving file 8001 sent by electronic device 100, electronic device 200 can display user interface 8004 as shown in Figure 8H. The content displayed in user interface 8004 is the content of file 8001. Optionally, electronic device 200 can display the content of file 8001 based on the application corresponding to file 8001.
[0390] Figure 8I shows a schematic flowchart of a method for an electronic device 100 to transfer second data corresponding to first data to an electronic device 200 based on user operation.
[0391] The method shown in Figure 8I includes, but is not limited to, the following steps:
[0392] S801A, electronic device 100 and electronic device 200 establish a communication connection.
[0393] For an explanation of S801A, please refer to the description of S701A in the embodiment of Figure 7A.
[0394] S802A, electronic device 100 displays a second user interface and a first navigation bar for a first application, the second user interface displaying first data.
[0395] For example, the first application could be an instant messaging application, and the second user interface could be the chat interface shown in Figure 8A. The first data could be file 8001 shown in Figure 8A. The first navigation bar could be navigation bar 3001.
[0396] S803A, electronic device 100 receives a first operation in response to the first data and displays a first control and a first response hotspot.
[0397] For example, the first operation could be a long press on file 8001 and a drag operation of control 8002 toward the lower edge of the display screen of electronic device 100.
[0398] S804A, electronic device 100 executes S704A in the embodiment of FIG7A. Specifically, please refer to the description of S703A in the embodiment of FIG7A, which will not be repeated here.
[0399] S805A, electronic device 100 receives and responds to a second operation for a device identifier of electronic device 200, and acquires second data.
[0400] For example, the second operation on the device identifier of electronic device 200 can be a long press operation on icon 3009 of electronic device 100 and a movement operation towards icon 3011 of electronic device 200, as shown in FIG8F. It can also be a click operation on icon 3011 of electronic device 200.
[0401] Optionally, the second data and the first data can be the same or different. The second data includes any of the following: text, document, table, image, webpage, or link.
[0402] Optionally, when the electronic device 100 receives a user operation to drag the first control into the first response hotspot and releases it within the first response hotspot, the electronic device 100 can verify the validity of the second data. If the second data is valid, the electronic device 100 can share the second data to other devices. If the second data is invalid, the electronic device 100 can prompt the user that the second data cannot be shared to other devices. Invalid data may include data such as advertisements. Valid data may refer to data other than invalid data. Optionally, invalid and valid data may also include other types of data, which this application does not limit.
[0403] Optionally, when the electronic device 100 receives a user operation to drag the first control into the first response hotspot, the electronic device 100 can confirm the data volume of the second data. If the data volume of the second data exceeds a preset data volume, the electronic device 100 can extract key data from the second data and then share the key data from the second data with other devices. Optionally, the data volume of the second data can refer to information such as the number of characters contained in the second data. Optionally, the electronic device 100 may also directly extract key data from the second data without confirming whether the data volume of the second data exceeds the preset data volume. For example, key data may include any one or more of the following: time, location, name, quantity, contact information, etc. Optionally, the definition of valid data contained in different dimensions of data is different.
[0404] Optionally, when the electronic device 100 receives a user operation to drag the first control into the first response hot zone, the electronic device 100 can display special effects, such as gradient colors, flowing light effects on the border, vibration, etc., in the first response hot zone.
[0405] S806A, electronic device 100 sends the second data to electronic device 200.
[0406] S807A, Electronic Device 200 runs second data based on a second application.
[0407] Optionally, after receiving the second data sent by the electronic device 100, the electronic device 200 may display a prompt message to inform the user that the electronic device 200 has received the second data sent by the electronic device 100.
[0408] Optionally, if the electronic device 200 also includes a second navigation bar similar to the first navigation bar, after receiving the second data sent by the electronic device 100, the electronic device 200 can change the display style of the first navigation bar, for example, displaying a second response hotspot similar to the first response hotspot, and displaying prompt information within the first response hotspot.
[0409] In response to a second operation targeting the device identifier of electronic device 200, electronic device 100 can acquire second data and transfer the second data to electronic device 200. After receiving the second data sent by electronic device 100, electronic device 200 can acquire a second application matching the second data based on the second data, run the second data based on the second application, and display the content in the second data.
[0410] Optionally, if the electronic device 200 does not have an application compatible with the second data installed, the electronic device 200 may display a message indicating that the second data cannot be opened. Optionally, the electronic device 200 may also prompt the user to download a second application so that the electronic device 200 can open the second data.
[0411] For example, electronic device 200 may display user interface 8004 as shown in FIG8H.
[0412] Through the embodiments shown in Figures 8A-8I, the electronic device 100 can receive data selected and transferred by the user, thereby improving the convenience of data transfer across devices.
[0413] In some embodiments, when the electronic device 100 displays a second user interface of a first application, the second user interface includes first data. The electronic device 100 can receive user operations on the first data, display a first response hotspot, and display a device ring within the first response hotspot. The device ring displays an icon of the electronic device 200. The electronic device 100 can receive user operations on the icon of the electronic device 200 and obtain icons of one or more applications in the electronic device 200 that correspond to the second data. The electronic device 100 then receives user operations on the icon of the second application among the icons of the one or more applications, and transfers the second data corresponding to the first data to the second application in the electronic device 200. The second data is related to the first data, and the second data may be the same as or different from the first data.
[0414] Figures 8J-8L illustrate a schematic diagram of a set of electronic devices 100 transferring second data corresponding to a first data stream to electronic devices 200 based on user operation.
[0415] Referring to the description in the embodiments of Figures 8A-8F, the electronic device 100 may display window 3008.
[0416] For example, as shown in FIG8J, electronic device 100 can receive input operations from a user on icon 3011 of electronic device 200, such as long-pressing icon 3009 of electronic device 100 and moving it to icon 3011 of electronic device 200. In response to the user's input operation, electronic device 100 can display icons of one or more applications as shown in FIG8K.
[0417] Optionally, the input operation for the icon 3011 of the electronic device 200 can also be a click operation for the icon 3011 of the electronic device 200.
[0418] In some embodiments, before displaying the icons of one or more applications within window 3008, electronic device 100 may obtain application information of the applications installed in electronic device 200. Based on the application information of the applications installed in electronic device 200 and file 8001, electronic device 100 may determine one or more applications installed in electronic device 200 that match a first application (i.e., the applications installed in electronic device 200 can display and open file 8001). Then, in response to selecting the icon of one of the applications, electronic device 100 may transfer file 8001 to the selected device and the selected application.
[0419] In some embodiments, and other embodiments, before displaying icons of one or more applications within window 3008, electronic device 100 may obtain application information of applications installed on electronic device 200. Based on the applications installed on electronic device 200, it displays icons of one or more applications within window 3008. Window 3008 only shows a portion of the applications; the user can swipe within window 3008 to view other applications on electronic device 200. Then, in response to selecting an application's icon, electronic device 100 may determine whether the selected application matches file 8001. When the selected application matches file 8001, electronic device 100 can transfer file 8001 to the selected device and the selected application. When the selected application does not match file 8001, electronic device 100 may prompt the user that file 8001 cannot be transferred to the selected application and to select another application.
[0420] As shown in Figure 8K, window 3008 also displays the icons 8007 for the WPS application, 8008 for the Word application, and 8009 for the Reading application.
[0421] As shown in Figure 8L, electronic device 100 can receive user input operations on the Word application icon 8008, such as a click operation. Electronic device 100 can send the Word application icon and file 8001 to electronic device 200. Electronic device 200 can open file 8001 through the Word application and display the contents of file 8001. For example, electronic device 200 can display the user interface shown in Figure 8H.
[0422] Figure 8M illustrates a flowchart of a method by which another electronic device 100 transfers second data corresponding to first data to an electronic device 200 based on user operation.
[0423] The method shown in Figure 8M includes, but is not limited to, the following steps:
[0424] S801B, electronic device 100, and electronic device 200 execute S801A-S804A.
[0425] S802B, electronic device 100 receives and responds to a second operation for the device identifier of electronic device 200.
[0426] For example, the second operation on the device identifier of electronic device 200 can be a long press operation on icon 3009 of electronic device 100 and a movement operation towards icon 3011 of electronic device 200, as shown in FIG8J. It can also be a click operation on icon 3011 of electronic device 200.
[0427] S803B, in response to the second operation, the electronic device 100 obtains application information of the application installed in the second application, and displays the icons of one or more applications in a first window, the icons of the one or more applications including the icon of the second application.
[0428] In some embodiments, the application information of the application installed in the second application may be obtained from the electronic device 200 after the electronic device 100 receives the second operation. In other embodiments, the application information of the application installed in the second application may be obtained after the electronic device 100 and the electronic device 200 establish a communication connection. This application does not limit the timing at which the electronic device 100 obtains the application information of the application installed in the second application.
[0429] For example, the icons of one or more applications can be the WPS application icon 8007, the Word application icon 8008, and the Reading application icon 8009 shown in Figure 8K. The icon of the second application can be the Word application icon 8008 shown in Figure 8K.
[0430] In some embodiments, the icons of one or more applications displayed in the first window may be icons of applications that match the second data. After obtaining the application information of the applications installed in the second application, the electronic device 100 can determine, based on the application information of the applications installed in the electronic device 200 and file 8001, one or more applications installed in the electronic device 200 that match the first application (i.e., the applications installed in the electronic device 200 can display and open file 8001). Then, the electronic device 100 can display the icons of one or more applications in the first window based on the one or more applications that match the first application.
[0431] In some embodiments, the icons of one or more applications displayed in the first window may also be the icons of applications that have not been filtered. After obtaining the application information of the applications installed in the second application, the electronic device 100 may directly display the icons of one or more applications installed in the electronic device 200 in the first window.
[0432] S804B, Electronic Device 100 receives operations on icons for a second application.
[0433] S805B, electronic device 100 sends second data and the identifier of the second application to electronic device 200.
[0434] S806B, Electronic Device 200 runs second data based on a second application.
[0435] In response to a user's action on the icon of a second application, if the second application matches the second data, electronic device 100 can send the second data and the identifier of the second application to electronic device 200. After obtaining the second data and the identifier of the second application, electronic device 200 can run the second data based on the second application.
[0436] Optionally, if the second application is not the application that matches the second data, the electronic device 100 may prompt the user that the second data cannot be transferred to the second application in the electronic device 200, and the user may choose other applications in the electronic device 200.
[0437] Through the embodiments shown in Figures 8J-8M, the electronic device 100 can receive data selected by the user and open applications of the data being transferred, thereby improving the convenience of data transfer across devices.
[0438] The above are merely some embodiments and implementation methods of this application. The scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0439] It is understood that the user interfaces described in the embodiments of this application are merely example interfaces and do not constitute a limitation on the solution of this application. In other embodiments, the user interface may adopt different interface layouts, may include more or fewer controls, and may add or remove other functional options, as long as they are based on the same inventive concept provided in this application, they are all within the protection scope of this application.
[0440] It should be noted that, without causing contradictions or conflicts, any feature in any embodiment of this application, or any part of any feature, can be combined, and the combined technical solution is also within the scope of the embodiments of this application.
[0441] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
A cross-device flow transfer method is applied, characterized in that, The method includes: The first electronic device displays an icon for the first application and a first navigation bar; The first electronic device receives a first operation on the icon of the first application; In response to the first operation, the first electronic device displays a first control and a first response hotspot, the first control being used to indicate the first application, and the size of the first response hotspot being larger than the size of the first navigation bar; When the first control is located within the first response hot zone, the first electronic device detects that the first operation has ended, and the first electronic device displays a first window, which displays icons of one or more devices, including the icon of the second electronic device. The first electronic device receives a second operation targeting the icon of the second electronic device; In response to the second operation, the first electronic device sends migration data of the first application to the second electronic device, and the migration data of the first application is used by the second electronic device to display a first user interface of the first application. The method of claim 1, wherein Before the first electronic device sends the migration data of the first application to the second electronic device, the method further includes: The first electronic device acquires the historical running data of the first application; The first electronic device determines the migration data of the first application based on the historical operation data of the first application. The method according to claim 2, characterized in that If the first application is in an open state, the historical running data of the first application includes the running data generated when the first application is running in the foreground, and the migration data of the first application includes the data in the second user interface displayed in the foreground before the first application is switched to background running. The method according to claim 3, characterized in that Before the first electronic device displays the icon of the first application, the method further includes: The first electronic device displays the second user interface of the first application, and the content of the second user interface is the same as or partially the same as the content of the first user interface; The first electronic device displays the icon of the first application, specifically including: The first electronic device receives and responds to the third operation, runs the first application in the background, and displays the icon of the first application. The method according to claim 2, characterized in that If the first application is closed, the historical running data of the first application includes the running data generated before the first application was closed, and the migration data of the first application includes the data in the user interface displayed by the first electronic device when performing the target task through the first application, the data in the home page of the first application, and the data in the user interface displayed in the foreground by the first electronic device before closing the first application. The method according to claim 5, characterized in that Before the first electronic device displays the icon of the first application, the method further includes: The first electronic device runs the first application in the foreground or background; The first electronic device displays the icon of the first application, specifically including: The first electronic device receives and responds to the fourth operation, closes the first application, and displays the icon of the first application. The method according to claim 5 or 6, characterized in that The target task includes any one of the following: video playback task, music playback task, navigation task, content editing task, game task, or web browsing task. The method according to any one of claims 1 to 7, characterized in that The migration data of the first application includes: the identifier of the first application and the running data of the first application. The running data of the first application includes any one of the following: video playback data, music playback data, navigation data, content editing data, game data, and web browsing data. The method according to any one of claims 1 to 8, characterized in that The first operation includes selecting the first application and dragging the first control to the display area where the first navigation bar is located. The method according to any one of claims 1 to 9, characterized in that The icon of the first application is the icon on the desktop of the first electronic device. The method according to any one of claims 1 to 10, characterized in that The method further includes: The first electronic device acquires the application information of the first application and the device information of the second electronic device; The first electronic device displays an icon of the second electronic device in the first window based on the application information of the first application and the device information of the second electronic device, wherein the first application is matched with the second electronic device. The method of claim 11, wherein The application information of the first application includes any one or more of the following: the version number of the first application, the system capabilities required by the device for the first application, the chip solution capabilities required by the device for the first application, and the product solution capabilities required by the device for the first application. The device information of the second electronic device includes any one or more of the following: the SDK version number of the operating system, the type of operating system, the manufacturer's identifier, the system capabilities of the operating system, the chip solution capabilities, and the product solution capabilities. An electronic device, being a first electronic device, characterized in that The first electronic device includes a memory and a processor; wherein the memory and the processor are coupled, the memory is used to store a computer program, and when the processor executes the computer program, it causes the first electronic device to perform the method of any one of claims 1-12. A computer-readable storage medium, characterized by Includes instructions that, when executed on a first electronic device, cause the first electronic device to perform the method of any one of claims 1-12. A computer program product, characterized in that Includes a computer program, which, when run on a first electronic device, causes the first electronic device to perform the method of any one of claims 1-12.