A screen projection method, device, storage medium and computer program product

By directly installing and launching the same application on the screen mirroring device, and utilizing data synchronization and loading request mechanisms, the problem of large response latency in control operations during wireless screen mirroring is solved, improving the user experience and reducing power consumption.

CN115904282BActive Publication Date: 2026-01-20HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202110953448.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-19
Publication Date
2026-01-20
Estimated Expiration
2041-08-19

AI Technical Summary

Technical Problem

In wireless screen mirroring applications, there is a significant delay between the user's control operations on the receiving end and the displayed response, which affects the user experience.

Method used

By directly installing and launching the same application on the projection device as on the source device, and utilizing data synchronization and loading request mechanisms, the latency of application startup and data loading is reduced, enabling instant response to user operations.

Benefits of technology

It reduces the operation latency of the screen projection device, improves the user experience, and reduces the power consumption of the screen projection device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115904282B_ABST
    Figure CN115904282B_ABST
Patent Text Reader

Abstract

The embodiment of the application provides a screen projection method and device, a storage medium and a computer program product. The method is applied to a first electronic device, and the method comprises the following steps: receiving screen projection content data of a second electronic device; displaying a screen projection interface according to the screen projection content data; obtaining a first input event according to a first user input for the screen projection content; sending the first input event to the second electronic device; when an application start notification for a first application is received, determining whether a second application is installed on the first electronic device, wherein the second application is the same application as the first application installed on different devices; and when the second application is installed on the first electronic device, starting the second application installed on the first electronic device. According to the method, the operation time delay can be reduced and the power consumption of the screen projection device can be reduced on the basis of ensuring the user application operation experience.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computers, in particular to a screen projection method and device, a storage medium and a computer program product. BACKGROUND

[0002] In the prior art application scenario, multi-screen collaboration is a distributed technology that can realize collaborative operation between cross-system and cross-device. After connecting a mobile phone with a computer or a tablet computer, or connecting a tablet computer with a computer, resource sharing and operation across devices can be realized.

[0003] One application scenario of multi-screen collaboration is wireless screen projection. Wireless screen projection generally refers to a technology that transmits the screen display content of a source multimedia terminal with strong core processing capability to a destination multimedia terminal in the form of streaming media for real-time display through a wireless network. The source terminal mainly refers to a mobile intelligent device such as a mobile phone with a strong independent core processing system, and the service terminal refers to a multimedia service terminal, including a tablet computer, an electronic whiteboard, a large screen, a television, and the like that support screen reception and have good audio-visual effects. Through wireless screen projection, the content or media files (photo gallery, music, and video) of a mobile phone / tablet computer can be projected onto a large screen to obtain a cross-screen experience. For example, in August 2019, Huawei Developer Conference EMUI10 released multi-screen collaboration, realizing seamless collaboration between a PC and a mobile phone. On November 25, 2019, Huawei MatePad and Full-Scenario Conference, the flagship new product MatePad Pro tablet computer was officially released, which is equipped with the EMUI10 system and supports the multi-screen collaboration function, and can project the screen of a mobile phone directly onto a tablet computer.

[0004] In the wireless screen projection application scenario, user input back channel (UIBC) generally refers to a function of controlling a sending terminal device through a wireless screen projection receiving terminal. It allows a user to control a mobile phone / tablet computer using the input device of the receiving terminal under screen projection. Different input devices are available for different screen projection devices, including a keyboard, a mouse, a remote controller, and a touch screen.

[0005] In the UIBC application scenario, a user controls a sending terminal device through a wireless screen projection receiving terminal. Since the actual execution device responding to the user control operation is the sending terminal device, the time delay between the user's control operation on the wireless screen projection receiving terminal and the response result of the control operation displayed on the wireless screen projection receiving terminal is much larger than the time delay between the user's direct control operation on the sending terminal device and the response result of the control operation directly displayed on the sending terminal device, which greatly reduces the user's device use experience. Therefore, a new screen projection scheme is needed to reduce the time delay between the user's control operation on the wireless screen projection receiving terminal and the response result of the control operation displayed on the wireless screen projection receiving terminal. SUMMARY

[0006] Therefore, the application provides a screen projection method and device, a storage medium and a computer program product to solve the problem of reverse control in the existing screen projection application scenario.

[0007] In a first aspect, an embodiment of the application provides a screen projection method, which is applied to a first electronic device, and the method comprises the following steps:

[0008] receiving screen projection content data of a second electronic device;

[0009] displaying a screen projection interface according to the screen projection content data, the screen projection interface being used to display screen projection content corresponding to the screen projection content data;

[0010] obtaining a first input event according to a first user input, wherein the first user input is an operation performed on the screen projection content;

[0011] sending the first input event to the second electronic device;

[0012] when an application startup notification for a first application is received, determining whether a second application is installed on the first electronic device, wherein the second application is the same application as the first application installed on different devices, and when a response operation of the first input event on the second electronic device is to start the first application installed on the second electronic device, the second electronic device generates the application startup notification for the first application;

[0013] when the second application is installed on the first electronic device, starting the second application installed on the first electronic device.

[0014] In an implementation manner of the first aspect, the starting the second application installed on the first electronic device comprises:

[0015] displaying a first application interface, the first application interface being used to display a running screen of the second application, and the first application interface being an independent window interface or a full-screen interface.

[0016] In an implementation manner of the first aspect, the starting the second application installed on the first electronic device comprises:

[0017] replacing the screen projection content with the running screen of the second application, and displaying the running screen of the second application in the screen projection interface.

[0018] In an implementation manner of the first aspect, the starting the second application installed on the first electronic device comprises:

[0019] In a process of starting the second application, when first application data needs to be loaded, the starting process is paused, description information of the first application data is sent to the second electronic device, the first application data being local application data of the second application on the first electronic device;

[0020] The second application data sent by the second electronic device is received, wherein the second application data is local application data of the first application on the second electronic device, and the second application data matches the description of the first application data;

[0021] The second application data is loaded to replace the loading link of the first application data, and the starting process is continued.

[0022] In an implementation form of the first aspect, the data loading request is used as the description information.

[0023] In a process of starting the second application, when there is a first data loading request, the first data loading request is sent to the second electronic device, wherein the first data loading request is used to request to load the first application data.

[0024] The second application data sent by the second electronic device is received, wherein the second electronic device locates the second application data according to the first data loading request.

[0025] The second application data is loaded to replace the loading link of the first application data, including responding to the first data loading request based on the second application data.

[0026] In an implementation form of the first aspect, the starting of the second application installed on the first electronic device includes:

[0027] Before starting the first application, first application starting data needed in a process of starting the second application is confirmed, the first application starting data being local application data of the second application on the first electronic device;

[0028] Description information of the application starting data is sent to the second electronic device;

[0029] The second application starting data sent by the second electronic device is received, the second application starting data being local application data of the first application on the second electronic device, and the second application starting data corresponding to the description information of the first application starting data;

[0030] In a process of starting the first application installed on the first electronic device, when the first application starting data needs to be loaded, the second application starting data is loaded.

[0031] In an implementation form of the first aspect, the method further comprises:

[0032] obtaining a second input event according to a second user input, wherein the second user input is an operation performed on a running screen of the second application;

[0033] during a process in which the second application responds to the second input event, when third application data needs to be loaded, suspending a response flow, sending description information of the third application data to the second electronic device, the third application data being local application data of the second application on the first electronic device;

[0034] receiving fourth application data sent by the second electronic device, wherein the fourth application data is local application data of the first application on the second electronic device, and the fourth application data matches the description of the third application data;

[0035] loading the fourth application data to replace a loading link of the third application data, and continuing the response flow.

[0036] In an implementation form of the first aspect, a data loading request is used as the description information of the third application data.

[0037] during the process in which the second application responds to the second input event, when there is a second data loading request, sending the second data loading request to the second electronic device, wherein the second data loading request is used to request to load the third application data;

[0038] the receiving the fourth application data sent by the second electronic device, wherein the second electronic device locates the fourth application data according to the second data loading request;

[0039] the loading the fourth application data to replace the loading link of the third application data, comprises responding to the second data loading request based on the fourth application data.

[0040] In an implementation form of the first aspect, the method further comprises:

[0041] confirming all local application data that can be loaded during running of the second application on the first electronic device;

[0042] sending description information of all the local application data that can be loaded during running of the second application to the second electronic device;

[0043] receive the local application data of the first application sent by the second electronic device, the second application start data being the local application data of the first application on the second electronic device, the local application data of the first application corresponding to description information of all local application data possibly loaded in the running process of the second application;

[0044] obtain a third input event according to a third user input, the third user input being an operation performed on the running interface of the second application;

[0045] in the process in which the second application responds to the third input event, when it is needed to load the local data of the second application, load the local application data of the first application.

[0046] In an implementation manner of the first aspect, the method further includes:

[0047] after the second application is closed, delete the application data sent by the second electronic device on the first electronic device.

[0048] In an implementation manner of the first aspect, the method further includes:

[0049] synchronize the application data newly generated in the running process of the second application to the first application on the second electronic device.

[0050] In the second aspect, the application provides a screen projection method, the method being applied to a second electronic device, and the method includes:

[0051] send screen projection content data to a first electronic device, the screen projection content data being used for enabling the first electronic device to display screen projection content corresponding to the screen projection content data;

[0052] receive a first input event sent by the first electronic device, the first input event being an input event obtained by the first electronic device according to a first user input, the first user input being an operation performed on the screen projection content displayed by the first electronic device;

[0053] when the response operation of the first input event on the second electronic device is to start a first application installed on the second electronic device, generate an application start notification for the first application;

[0054] send the application start notification to the first electronic device.

[0055] In an implementation manner of the second aspect, the generation of the application start notification for the first application includes:

[0056] when the response operation of the first input event on the second electronic device is starting a first application installed on the second electronic device, in response to the first input event, starting the first application;

[0057] when the first application is started, generating an application start notification for the first application.

[0058] In an implementation form of the second aspect, the generating the application start notification for the first application comprises:

[0059] when the response operation of the first input event on the second electronic device is starting a first application installed on the second electronic device, not starting the first application, and generating an application start notification for the first application.

[0060] In an implementation form of the second aspect, the method further comprises:

[0061] receiving application data description information of the second application sent by the first electronic device;

[0062] sending local application data of the first application matching the application data description information to the first electronic device.

[0063] In a third aspect, the present application provides an electronic device, comprising a display device, a memory for storing computer program instructions, and a processor for executing program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to execute the method steps of the first aspect.

[0064] In a fourth aspect, the present application provides an electronic device, comprising a memory for storing computer program instructions, and a processor for executing program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to execute the method steps of the second aspect.

[0065] In a fifth aspect, the present application provides a computer readable storage medium, which stores a computer program, and when the computer program is run on a computer, the computer is enabled to execute the method of the first aspect or the second aspect.

[0066] In a sixth aspect, the present application provides a computer program product, which comprises a computer program, and when the computer program is run on a computer, the computer is enabled to execute the method of the first aspect or the second aspect.

[0067] According to the above technical solutions provided by the embodiments of the present application, at least the following technical effects can be achieved:

[0068] According to the method of the embodiment of the present application, when the user operates the application currently running on the screen projection device on the screen projection window of the screen projection device, the APP installed on the screen projection device can be directly used to respond to the operation of the user, so as to reduce the operation delay and the power consumption of the screen projection device on the basis of ensuring the user application operation experience. BRIEF DESCRIPTION OF DRAWINGS

[0069] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the embodiments will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.

[0070] Figure 1 Fig. 1 shows a mobile phone screen projection application scenario according to an embodiment of the present application;

[0071] Figure 2 Fig. 2 shows an electronic device structure according to an embodiment of the present application;

[0072] Figure 3 Fig. 3 is a software structure block diagram of an electronic device according to an embodiment of the present application;

[0073] Figure 4 Fig. 4 shows an operation execution flow of a mobile phone screen projection tablet according to an embodiment of the present application;

[0074] Figure 5 Fig. 5 shows an operation execution flow of a mobile phone screen projection tablet according to an embodiment of the present application;

[0075] Figure 6 Fig. 6 shows a device structure of a screen projection application scenario according to an embodiment of the present application;

[0076] Figure 7 Fig. 7 shows a mobile phone screen projection application scenario according to an embodiment of the present application;

[0077] Figure 8 Fig. 8 shows an operation execution flow of a mobile phone screen projection tablet according to an embodiment of the present application;

[0078] Figure 9a Fig. 9 shows a display effect of a screen projection application scenario according to an embodiment of the present application;

[0079] Figure 9b Fig. 10 shows a display effect of a screen projection application scenario according to an embodiment of the present application;

[0080] Figure 9cFig. 1 shows a schematic diagram of a display effect of a screen projection application scenario according to an embodiment of the present application.

[0081] Figure 10 Fig. 2 shows a schematic diagram of an operation execution flow of a mobile phone projecting a tablet according to an embodiment of the present application. DETAILED DESCRIPTION

[0082] In order to better understand the technical solutions of the present application, the embodiments of the present application are described in detail below with reference to the accompanying drawings.

[0083] It should be clear that the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.

[0084] The terms used in the embodiments of the present application are only for the purpose of describing the specific embodiments, and are not intended to limit the present application. The singular forms "a", "an" and "the" used in the embodiments of the present application and the appended claims are also intended to include the plural forms, unless the context clearly indicates otherwise.

[0085] It should be understood that the term "and / or" used herein is only to describe the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which can represent the three cases of A alone, A and B together, and B alone. In addition, the character " / " in this paper generally represents that the front and rear associated objects are a "or" relationship.

[0086] Figure 1 Fig. 1 shows a schematic diagram of a screen projection application scenario according to an embodiment of the present application. As shown in Fig. 1, Figure 1 The mobile phone 401 is a sending end device (screen projection device), and the tablet 402 is a receiving end device (screen projection device). The mobile phone 401 projects its screen display content onto the tablet 402. The tablet 402 opens and displays a screen projection window 403, which displays the screen content projected by the mobile phone 401. As shown in Fig. 1, Figure 1 As shown in Fig. 1, the content displayed in the screen projection window 403 is consistent with the content displayed by the mobile phone 401.

[0087] Furthermore, users can perform operations within the projection window 403 displayed on the tablet 402, such as touch taps, swipes, and zooms. The user's actions are executed by the phone 401, resulting in a corresponding feedback displayed on the phone 401. Simultaneously, the display in the projection window 403 on the tablet 402 remains consistent with the display on the phone 401. This allows users to directly experience the complete user experience of the phone 401 on the tablet 402.

[0088] Figure 2 The diagram shown is a schematic representation of an electronic device according to an embodiment of this application. The transmitting device of this application embodiment (e.g., Figure 1 The mobile phone 401 shown), and the receiving device (e.g., Figure 1 The tablet computer 402 shown can all be used Figure 2 The structure of the electronic device shown.

[0089] Specifically, such as Figure 2 As shown, the electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

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

[0091] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices or integrated in one or more processors.

[0092] The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching and executing instructions.

[0093] The processor 110 can also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can save instructions or data that have just been used or are used repeatedly by the processor 110. If the processor 110 needs to use the instructions or data again, it can directly call from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thereby improving the efficiency of the system.

[0094] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0095] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 can contain multiple sets of I2C bus. The processor 110 can be coupled to the touch sensor 180K, the charger, the flash, the camera 193, etc. through different I2C bus interfaces respectively. For example, the processor 110 can be coupled to the touch sensor 180K through an I2C interface, so that the processor 110 and the touch sensor 180K communicate through the I2C bus interface, and the touch function of the electronic device 100 is realized.

[0096] The I2S interface can be used for audio communication. In some embodiments, the processor 110 can contain multiple sets of I2S bus. The processor 110 can be coupled to the audio module 170 through the I2S bus, and communication between the processor 110 and the audio module 170 is realized. In some embodiments, the audio module 170 can deliver audio signals to the wireless communication module 160 through the I2S interface, and the function of answering a phone through a Bluetooth headset is realized.

[0097] The PCM interface can also be used for audio communication, sampling, quantizing and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled through the PCM bus interface. In some embodiments, the audio module 170 can also deliver audio signals to the wireless communication module 160 through the PCM interface, and the function of answering a phone through a Bluetooth headset is realized. Both the I2S interface and the PCM interface can be used for audio communication.

[0098] The UART interface is a universal serial data bus, which is used for asynchronous communication. The bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, the UART interface is usually used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface, and the Bluetooth function is realized. In some embodiments, the audio module 170 can deliver audio signals to the wireless communication module 160 through the UART interface, and the function of playing music through a Bluetooth headset is realized.

[0099] The MIPI interface can be used to connect the processor 110 and the display screen 194, the camera 193, and other peripheral devices. The MIPI interface includes a camera serial interface (CSI), a display serial interface (DSI), and the like. In some embodiments, the processor 110 and the camera 193 communicate through the CSI interface to implement the photographing function of the electronic device 100. The processor 110 and the display screen 194 communicate through the DSI interface to implement the display function of the electronic device 100.

[0100] The GPIO interface can be configured by software. The GPIO interface can be configured as a control signal or as a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 and the camera 193, the display screen 194, the wireless communication module 160, the audio module 170, the sensor module 180, and the like. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, and the like.

[0101] The USB interface 130 is an interface that conforms to the USB standard specification, and can be a Mini USB interface, a Micro USB interface, a USB Type C interface, or the like. The USB interface 130 can be used to connect a charger to charge the electronic device 100, or to transmit data between the electronic device 100 and a peripheral device. The interface can also be used to connect a headset to play audio through the headset. The interface can also be used to connect other electronic devices, such as an AR device, and the like.

[0102] It can be understood that the interface connection relationship between the modules illustrated in the embodiments of the present application is only illustrative and does not constitute a structural limitation of the electronic device 100. In some other embodiments of the present application, the electronic device 100 can also use different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.

[0103] The charging management module 140 is used to receive 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 can receive charging input from a wired charger through the USB interface 130. In some wireless charging embodiments, the charging management module 140 can receive wireless charging input through a wireless charging coil of the electronic device 100. The charging management module 140 can charge the battery 142 while also providing power to the electronic device through the power management module 141.

[0104] The power management module 141 is configured to connect the battery 142 and the charging management module 140 to the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to power the processor 110, the internal memory 121, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 can also be configured to monitor parameters such as battery capacity, battery cycle count, battery health status (leakage, impedance), and the like. In some embodiments, the power management module 141 can also be disposed in the processor 110. In some embodiments, the power management module 141 and the charging management module 140 can also be disposed in the same device.

[0105] The wireless communication function of the electronic device 100 can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, and the like.

[0106] The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals. Each antenna in the electronic device 100 can be configured to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas. For example, the antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some embodiments, the antennas can be used in combination with a tuning switch.

[0107] The mobile communication module 150 can provide a solution for wireless communication including 2G / 3G / 4G / 5G and the like applied to the electronic device 100. The mobile communication module 150 can include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), and the like. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and perform filtering, amplification, and the like on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can also amplify signals modulated by the modem processor, and radiate the amplified signals as electromagnetic waves through the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 150 can be disposed in the processor 110. In some embodiments, at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 can be disposed in the same device.

[0108] The modem processor can include a modulator and a demodulator. The modulator is configured to modulate a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is configured to demodulate a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. The low-frequency baseband signal processed by the baseband processor is transmitted to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a microphone 170B, etc.), or displays an image or a video through the display 194. In some embodiments, the modem processor can be a separate device. In other embodiments, the modem processor can be independent of the processor 110 and disposed in the same device as the mobile communication module 150 or other functional modules.

[0109] The wireless communication module 160 can provide a wireless communication solution including a wireless local area network (WLAN) (such as a wireless fidelity (Wi-Fi) network), Bluetooth (BT), a global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, and the like, which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives an electromagnetic wave via the antenna 2, performs frequency modulation and filtering processing on the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, perform frequency modulation and amplification thereon, and radiate the signal as an electromagnetic wave via the antenna 2.

[0110] In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device 100 are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device 100 can communicate with a network and other devices through wireless communication technology. The wireless communication technology can 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 technology, etc. The GNSS can include a global positioning system (GPS), a global navigation satellite system (GLONASS), a beidu navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and / or a satellite based augmentation systems (SBAS).

[0111] The electronic device 100 implements a display function through a GPU, a display screen 194, and an application processor, etc. The GPU is a microprocessor for image processing, which is connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs, which execute program instructions to generate or change display information.

[0112] The display screen 194 is configured to display images, videos, and the like. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flex light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oLed, a quantum dot light emitting diodes (QLED), or the like. In some embodiments, the electronic device 100 can include one or N display screens 194, where N is a positive integer greater than 1.

[0113] The electronic device 100 can implement the photographing function through the ISP, the camera 193, the video codec, the GPU, the display screen 194, and the application processor.

[0114] The ISP is configured to process the data fed back by the camera 193. For example, when taking a photo, the shutter is opened, the light is transmitted to the camera photosensitive element through the lens, the light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to the ISP for processing to convert it into an image visible to the naked eye. The ISP can also optimize the noise, brightness, and skin color of the image. The ISP can also optimize the exposure, color temperature, and other parameters of the shooting scene. In some embodiments, the ISP can be disposed in the camera 193.

[0115] The camera 193 is configured to capture still images or videos. An object generates an optical image through a lens and projects it onto a photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then transmitted to the ISP to convert it into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, the electronic device 100 can include one or N cameras 193, where N is a positive integer greater than 1.

[0116] The digital signal processor is used to process digital signals, in addition to being able to process digital image signals, it can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.

[0117] The video codec is used to compress or decompress digital video. The electronic device 100 can support one or more video codecs. In this way, the electronic device 100 can play or record videos in multiple encoding formats, such as: moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.

[0118] The NPU is a neural-network (NN) calculation processor, which can quickly process input information by drawing on the structure of a biological neural network, such as the transmission mode between human brain neurons, and can also continuously self-learn. Through the NPU, the electronic device 100 can realize intelligent cognition applications, such as: image recognition, face recognition, voice recognition, text understanding, etc.

[0119] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 through the external memory interface 120 to realize data storage functions. For example, music, video, etc. Files are saved in the external memory card.

[0120] The internal memory 121 can be used to store computer executable program codes, which include instructions. The internal memory 121 can include a program storage area and a data storage area. The program storage area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.), etc. The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phonebook, etc.), etc. In addition, the internal memory 121 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), etc. The processor 110 executes various function applications and data processing of the electronic device 100 by running instructions stored in the internal memory 121 and / or instructions stored in the memory disposed in the processor.

[0121] The electronic device 100 can realize audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor, etc. For example, music playing, recording, etc.

[0122] The audio module 170 is configured to convert digital audio information into an analog audio signal output, and to convert an analog audio input into a digital audio signal. The audio module 170 can also be configured to encode and decode audio signals. In some embodiments, the audio module 170 can be disposed in the processor 110, or some of the functions of the audio module 170 can be disposed in the processor 110.

[0123] The speaker 170A, also referred to as a "loudspeaker", is configured to convert an audio electrical signal into a sound signal. The electronic device 100 can listen to music or listen to a hands-free call through the speaker 170A.

[0124] The receiver 170B, also referred to as a "earpiece", is configured to convert an audio electrical signal into a sound signal. When the electronic device 100 receives a call or a voice message, the user can listen to the voice by holding the receiver 170B close to the ear.

[0125] The microphone 170C, also referred to as a "microphone", "transducer", is configured to convert a sound signal into an electrical signal. When making a call or sending a voice message, the user can make a sound by holding the mouth close to the microphone 170C, and input the sound signal into the microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In other embodiments, the electronic device 100 can be provided with two microphones 170C, in addition to collecting sound signals, noise reduction functions can also be realized. In other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C, in addition to collecting sound signals, noise reduction, and can also identify the source of the sound, realize directional recording function, etc.

[0126] The earphone interface 170D is configured to connect a wired earphone. The earphone interface 170D can be a USB interface 130, or a 3.5mm open mobile terminal platform (OMTP) standard interface, a cellular telecommunications industry association of the USA (CTIA) standard interface.

[0127] The pressure sensor 180A is configured to sense a pressure signal and convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A can be disposed on the display screen 194. The pressure sensor 180A can be of various types, such as a resistive pressure sensor, an inductive pressure sensor, a capacitive pressure sensor, etc. The capacitive pressure sensor can include at least two parallel plates of conductive material. When a force is applied to the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device 100 determines the intensity of the pressure based on the change in capacitance. When a touch operation is applied to the display screen 194, the electronic device 100 detects the intensity of the touch operation based on the pressure sensor 180A. The electronic device 100 can also calculate the position of the touch based on the detection signal of the pressure sensor 180A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation instructions. For example, when a touch operation with a touch operation intensity less than a first pressure threshold is applied to a short message application icon, an instruction to view a short message is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold is applied to the short message application icon, an instruction to create a new short message is executed.

[0128] The gyroscope sensor 180B can be configured to determine the motion attitude of the electronic device 100. In some embodiments, the angular velocity of the electronic device 100 around three axes (i.e., x, y, and z axes) can be determined by the gyroscope sensor 180B. The gyroscope sensor 180B can be used for anti-shake photography. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of shaking of the electronic device 100, calculates the distance that the lens module needs to compensate based on the angle, and lets the lens offset the shaking of the electronic device 100 by reverse movement to achieve anti-shake. The gyroscope sensor 180B can also be used for navigation and motion sensing game scenarios.

[0129] The barometric pressure sensor 180C is configured to measure air pressure. In some embodiments, the electronic device 100 calculates the altitude based on the air pressure value measured by the barometric pressure sensor 180C, and assists in positioning and navigation.

[0130] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can detect the opening and closing of a flip cover by using the magnetic sensor 180D. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover based on the magnetic sensor 180D. Further, based on the detected opening and closing state of the cover or the flip cover, the electronic device 100 can set a feature such as automatic unlocking of the flip cover.

[0131] The acceleration sensor 180E can detect the magnitude of acceleration of the electronic device 100 in various directions (typically three axes). When the electronic device 100 is stationary, the acceleration sensor 180E can detect the magnitude and direction of gravity. The acceleration sensor 180E can also be used to identify the attitude of the electronic device, and can be applied to landscape / portrait screen switching and pedometer applications.

[0132] Distance sensor 180F is configured to measure distance. Electronic device 100 can measure distance by infrared or laser. In some embodiments, electronic device 100 can utilize distance sensor 180F to measure distance for fast focusing when taking a picture.

[0133] Proximity light sensor 180G can include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The light emitting diode can be an infrared light emitting diode. Electronic device 100 emits infrared light outwardly through the light emitting diode. Electronic device 100 detects infrared reflected light from nearby objects using the photodiode. When sufficient reflected light is detected, electronic device 100 can determine that there is an object near electronic device 100. When insufficient reflected light is detected, electronic device 100 can determine that there is no object near electronic device 100. Electronic device 100 can utilize proximity light sensor 180G to detect that a user is holding electronic device 100 close to the ear for a phone call, so as to automatically turn off the screen to save power. Proximity light sensor 180G can also be used for automatic unlocking and locking of the screen in a holster mode or a pocket mode.

[0134] Ambient light sensor 180L is configured to sense ambient light brightness. Electronic device 100 can adaptively adjust the brightness of display screen 194 according to the sensed ambient light brightness. Ambient light sensor 180L can also be used to automatically adjust white balance when taking a picture. Ambient light sensor 180L can also cooperate with proximity light sensor 180G to detect whether electronic device 100 is in a pocket to prevent accidental touch.

[0135] Fingerprint sensor 180H is configured to collect a fingerprint. Electronic device 100 can utilize the collected fingerprint characteristics to implement fingerprint unlocking, access application lock, fingerprint picture taking, fingerprint call answering, and the like.

[0136] Temperature sensor 180J is configured to detect temperature. In some embodiments, electronic device 100 utilizes the temperature detected by temperature sensor 180J to implement temperature processing strategies. For example, when the temperature reported by temperature sensor 180J exceeds a threshold, electronic device 100 implements performance reduction of a processor located near temperature sensor 180J to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold, electronic device 100 heats battery 142 to avoid abnormal shutdown of electronic device 100 caused by low temperature. In other embodiments, when the temperature is lower than yet another threshold, electronic device 100 implements voltage boosting of the output voltage of battery 142 to avoid abnormal shutdown caused by low temperature.

[0137] Touch sensor 180K, also referred to as "touch panel". Touch sensor 180K can be disposed on display screen 194, and touch sensor 180K and display screen 194 together form a touch screen, also referred to as "touch panel". Touch sensor 180K is configured to detect touch operations applied to or near the touch sensor 180K. The touch sensor 180K can transmit the detected touch operation to the application processor to determine the touch event type. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K can also be disposed on the surface of electronic device 100, which is different from the position of display screen 194.

[0138] Bone conduction sensor 180M can obtain vibration signals. In some embodiments, bone conduction sensor 180M can obtain vibration signals of the human body's vocal vibration bone block. Bone conduction sensor 180M can also contact the human body pulse to receive blood pressure pulsation signals. In some embodiments, bone conduction sensor 180M can also be disposed in a headset to form a bone conduction headset. Audio module 170 can analyze voice signals based on the vibration signals of the vocal vibration bone block obtained by the bone conduction sensor 180M to realize voice functions. The application processor can analyze heart rate information based on the blood pressure pulsation signals obtained by the bone conduction sensor 180M to realize heart rate detection functions.

[0139] Keys 190 include power on / off keys, volume keys, and the like. Keys 190 can be mechanical keys. They can also be touch keys. Electronic device 100 can receive key input and generate key signal input related to user settings and function control of electronic device 100.

[0140] Motor 191 can generate vibration prompts. Motor 191 can be used for incoming call vibration prompts and also for touch vibration feedback. For example, touch operations applied to different applications (such as taking pictures, playing audio, etc.) can correspond to different vibration feedback effects. Touch operations applied to different regions of display screen 194 can also correspond to different vibration feedback effects. Different application scenarios (such as time reminders, received messages, alarms, games, etc.) can also correspond to different vibration feedback effects. Touch vibration feedback effects can also be customizable.

[0141] Indicator 192 can be an indicator light, which can be used to indicate charging status, power changes, and also to indicate messages, missed calls, notifications, and the like.

[0142] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the electronic device 100. The electronic device 100 can support one or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, etc. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. The multiple cards can be of the same or different types. The SIM card interface 195 is also compatible with different types of SIM cards. The SIM card interface 195 is also compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to realize functions such as calls and data communication. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.

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

[0144] Figure 3 This is a software structure block diagram of the electronic device 100 according to an embodiment of this application.

[0145] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.

[0146] The application layer can include a series of application packages.

[0147] like Figure 3 As shown, the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and SMS.

[0148] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0149] like Figure 2 As shown, the application framework layer may include a window manager, content provider, view system, phone manager, resource manager, notification manager, etc.

[0150] The window manager is used to manage windows programs. The window manager can acquire the display screen size, determine whether there is a status bar, lock the screen, and intercept the screen, etc.

[0151] The content provider is used to store and acquire data, and make the data accessible to the application program. The data can include video, image, audio, dialed and received phone, browsing history and bookmark, phone book, etc.

[0152] The view system includes visual controls, such as a control for displaying text, a control for displaying pictures, etc. The view system can be used to build an application program. A display interface can be composed of one or more views. For example, a display interface including a short message notification icon can include a view for displaying text and a view for displaying pictures.

[0153] The phone manager is used to provide the communication function of the electronic device 100. For example, the management of the call state (including call connection, call hang-up, etc.).

[0154] The resource manager provides various resources for the application program, such as localized strings, icons, pictures, layout files, video files, etc.

[0155] The notification manager makes the application program display notification information in the status bar, which can be used to convey a type of message, which can automatically disappear after a short stay without user interaction. For example, the notification manager is used to inform the completion of downloading, message reminders, etc. The notification manager can also be a notification in the form of a chart or a scroll bar text appearing in the top status bar of the system, such as a notification of an application program running in the background, and can also be a notification in the form of a dialogue window appearing on the screen. For example, prompting text information in the status bar, issuing a prompt sound, the electronic device vibrating, the indicator light flashing, etc.

[0156] The Android runtime includes the core library and the virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.

[0157] The core library contains two parts: one part is the function function called by the java language, and the other part is the core library of Android.

[0158] The application program layer and the application program framework layer run in the virtual machine. The virtual machine executes the java file of the application program layer and the application program framework layer into a binary file. The virtual machine is used to perform the management of the object life cycle, the management of the stack, the management of the thread, the management of the security and the exception, and the garbage collection, etc.

[0159] The system library can include a plurality of functional modules. For example, a surface manager, media libraries, a three-dimensional graphics processing library (e.g., OpenGL ES), a 2D graphics engine (e.g., SGL), etc.

[0160] The surface manager is used to manage the display subsystem and provides a plurality of applications with fusion of 2D and 3D layers.

[0161] The media libraries support playback and recording of a plurality of commonly used audio, video formats, and static image files, etc. The media libraries can support a plurality of audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0162] The three-dimensional graphics processing library is used to implement three-dimensional graphics drawing, image rendering, composition, and layer processing, etc.

[0163] The 2D graphics engine is a drawing engine for 2D drawing.

[0164] The kernel layer is a layer between hardware and software. The kernel layer at least includes display drivers, camera drivers, audio drivers, and sensor drivers.

[0165] The following illustrates the working flow of the software and hardware of the electronic device 100 in a capture and photographing scenario.

[0166] When the touch sensor 180K receives a touch operation, a corresponding hardware interrupt is sent to the kernel layer. The kernel layer processes the touch operation into a raw input event (including touch coordinates, a timestamp of the touch operation, etc.). The raw input event is stored in the kernel layer. The application framework layer obtains the raw input event from the kernel layer and identifies the control corresponding to the input event. Taking the touch operation as a touch single-click operation and the control corresponding to the touch single-click operation as the control of the camera application icon as an example, the camera application calls an interface of the application framework layer, starts the camera application, and then starts the camera driver through the kernel layer, and captures a still image or a video through the camera 193.

[0167] Figure 4 Fig. 6 shows an operation execution flow diagram of projecting a mobile phone to a tablet computer according to an embodiment of the present application. After the mobile phone 401 is projected to the tablet computer 402, the tablet computer 402 starts and displays a projection window 403. In this process, the mobile phone 401 and the tablet computer 402 perform the operations shown in Fig. 6. Figure 4

[0168] S410, the APP01 of the mobile phone 401 draws a frame.

[0169] ​S411, the image rendering result of APP01 is sent by a composer to a SurfaceFlinger of the phone 401.

[0170] S412, the SurfaceFlinger of the phone 401 performs a preliminary composition on the image rendering result of APP01.

[0171] S413, the SurfaceFlinger of the phone 401 performs a further composition on the preliminary composition result of the image rendering result generated in S412, to form a display picture data.

[0172] S414, the SurfaceFlinger of the phone 401 sends the display picture data formed in S413 to a display hardware (display screen) of the phone 401.

[0173] S415, the display hardware (display screen) of the phone 401 refreshes the display screen based on the display picture data sent by the SurfaceFlinger, to show the display picture (such as Figure 1 the display picture of the phone 401) to the user.

[0174] Based on S413-S415, the phone 401 displays the content of APP01 on the display screen of the phone 401. Further, in this process, the phone 401 also records the display content of the display screen, encodes the recording result of the display content, and sends the recording result to the tablet 402. Specifically, after S412, the phone 401 further performs:

[0175] S416, the SurfaceFlinger of the phone 401 sends the preliminary composition result of the image rendering result generated in S412 to a MediaCodec of the phone 401 through a queue buffer.

[0176] S417, the MediaCodec of the phone 401 encodes the preliminary composition result of the image rendering result generated in S412.

[0177] S418, the multimedia codec (MediaCodec) of the mobile phone 401 sends the encoding result (encoded screen display content) to the mobile phone 401 through a fill buffer. In the application scenario of the mobile phone 401 projecting the tablet computer 402, the mobile phone 401 has established a network connection (network) with the tablet computer 402.

[0178] S419, the mobile phone 401 sends the encoding result (encoded screen display content) to the tablet computer 402 through the network connection (network).

[0179] S420, the tablet computer 402 receives the encoding result (encoded screen display content) from the mobile phone 401.

[0180] S421, the tablet computer 402 sends the encoding result (encoded screen display content) to the multimedia codec (MediaCodec) of the tablet computer 402.

[0181] S422, the multimedia codec (MediaCodec) of the tablet computer 402 decodes the received encoding result (encoded screen display content).

[0182] S423, the multimedia codec (MediaCodec) of the tablet computer 402 sends the decoding result (screen display content) to the surface flinger (SurfaceFlinger) of the tablet computer 402 through a copy module (copybit).

[0183] S424, the surface flinger (SurfaceFlinger) of the tablet computer 402 combines (doComposition) the decoding result (screen display content) sent by the multimedia codec (MediaCodec) of the tablet computer 402 to form display picture data.

[0184] S425, the surface flinger (SurfaceFlinger) of the tablet computer 402 sends (display) the display picture data formed in S424 to the display bottom layer hardware (Hardware) (display screen) of the tablet computer 402.

[0185] S426, the display hardware (display screen) of the tablet 402 refreshes the display content (LCD refresh) based on the display screen data sent by SurfaceFlinger, and shows the display screen to the user (e.g. Figure 1 the display screen of the tablet 402).

[0186] Figure 5 As shown in the operation execution flow diagram of the mobile phone screen projection tablet according to an embodiment of the present application. Further, the user performs operations in the screen projection window 403 of the tablet 402 to control the mobile phone 401 (screen projection reverse control UIBC), and in the UIBC process, the mobile phone 401 and the tablet 402 perform the operations shown in the figure. Figure 5

[0187] S500, the user clicks (input) the physical screen (within the display screen projection window 403) of the tablet 402 (tablet side).

[0188] S501, the underlying hardware (Hardware) of the touch screen of the tablet 402 obtains the input event (input reader) of the user according to the click input of the user.

[0189] S502, the underlying hardware (Hardware) of the touch screen of the tablet 402 reports the input event (input reader) of the user to the system service (SystemServer) of the tablet 402.

[0190] S503, the SystemServer distributes the input event to the multi-screen collaboration application (APP00a) of the tablet 402.

[0191] S504, the multi-screen collaboration application (APP00a) of the tablet 402 packages and encrypts the input event.

[0192] S505, the multi-screen collaboration application (APP00a) of the tablet 402 transmits the packaged and encrypted input event to the multi-screen collaboration application (APP00b) of the mobile phone 401 through the wireless network connection (network).

[0193] S510, the multi-screen collaboration application (APP00b) of the mobile phone 401 receives the packaged and encrypted input event.

[0194] S511, the multi-screen collaboration application (APP00b) of the mobile phone 401 decrypts and analyzes the packaged and encrypted input event, and obtains the input event matched with the mobile phone 401 after coordinate conversion.

[0195] ​S512, the multi-screen cooperation application (APP00b) of the mobile phone 401 injects the matched input event of the mobile phone 401 into the input subsystem of the system service (SystemServer) of the mobile phone 401.

[0196] S513, the input subsystem of the system service (SystemServer) of the mobile phone 401 distributes the injected input event to the corresponding application (APP01 which is running and displays the content of the screen mirroring window 403).

[0197] S514, the APP01 responds to the input event and draws the frame of the related image.

[0198] S515-S536, refer to S411-S426.

[0199] Based on the embodiment shown in Figure 5 Although the control of the mobile phone 401 (UIBC) on the tablet computer 402 can be realized in the application scenario of the screen mirroring of the mobile phone 401 to the tablet computer 402, in the control flow of the UIBC, the tablet computer 402 needs to send the user touch time on the tablet side to the mobile phone 401, after the application on the mobile phone 401 responds, the screen of the mobile phone is recorded and encoded, and then the encoding result is returned to the tablet computer 402. Compared with the user directly controlling the application on the mobile phone 401 to perform the UIBC, the time delay from the operation of the user on the tablet computer 402 to the display of the application response screen of the tablet computer 402 is greatly prolonged.

[0200] For example, in a certain multi-screen cooperation reverse control application scenario, the time delay of the user controlling the screen mirroring device (for example, the mobile phone) through the screen mirroring device (for example, the tablet computer) is about 140ms+, and the time delay of the user directly performing the local operation (directly operating the mobile phone) is 40ms.

[0201] Further, in the UIBC flow shown in Figure 5 The data encoded by the application (APP01) on the mobile phone 401 is sent to the tablet computer 402 through the network (Network), so when the network is poor or fluctuates greatly, the time delay will be further increased, and the operation will be easily jammed, which will affect the user operation experience. And in the UIBC flow shown in Figure 5 Compared with the user directly controlling the application on the mobile phone 401, the mobile phone 401 needs to perform screen content recording, encoding and sending while performing the response through the APP01, which will additionally increase the power consumption of the mobile phone 401.

[0202] To solve the above problems, an embodiment of the present application proposes a new screen projection method. In some application scenarios, an application (APP02) consistent with the application (APP01) currently running on the screen projection device (for example, the mobile phone 401) is also installed on the device to be projected (for example, the tablet computer 402), and the APP02 and the APP01 are different versions of the same application (for example, application A) for different types of devices. The APP02 and the APP01 are consistent in function, and the difference is that the APP01 is installed on the mobile phone 401 and the APP02 is installed on the tablet computer 402. In this way, when the user operates the application (APP01) currently running on the screen projection device (mobile phone 401) on the screen projection window (for example, the screen projection window 403) of the device to be projected (tablet computer 402), the APP02 installed on the device to be projected (tablet computer 402) can directly respond to the user's operation, thereby reducing the operation delay and the power consumption of the screen projection device (mobile phone 401) on the basis of ensuring the user's application operation experience.

[0203] Specifically, in an embodiment of the present application, in a screen projection scenario, when the user opens the application A (APP01, first application) on the screen projection device (for example, the mobile phone 401), if it is detected that the device to be projected (the receiving end device, for example, the tablet computer 402) also installs the application A (APP02, second application), the application data of the application A (APP01) on the screen projection device (mobile phone 401) is read, and the application data of the application A (APP01) on the screen projection device (mobile phone 401) is sent to the device to be projected (tablet computer 402). At the same time, the application A (APP02) on the device to be projected (tablet computer 402) is pulled up, the application data transmitted by the screen projection device (mobile phone 401) is loaded, and the application A (APP02) on the device to be projected (tablet computer 402) is used to respond to the user's operation on the screen projection window (screen projection window 403) on the device to be projected (tablet computer 402). The user's remote operation and local application experience are consistent, and the reverse control lag and time delay problem during screen projection is solved.

[0204] Figure 6 The device structure schematic diagram of the screen projection application scenario according to an embodiment of the present application is shown. Figure 6 As shown in the figure:

[0205] The screen projection device 600 (for example, the mobile phone 401) includes an application detection module 601, which is used to detect whether a new application (for example, application A) is started by the user on the screen projection device 600 in a screen projection scenario.

[0206] Specifically, in an embodiment, the screen projection device 600 (the mobile phone 401) acquires the application package name at the top of the stack by using the UsageStatsManager#queryEvents() method provided by the Android system, so as to determine whether the user has started a new application on the screen projection device 600.

[0207] The screen projection device 610 (for example, the tablet computer 402) includes an application verification module 611, which is configured to detect whether the screen projection device 610 also installs the same application (application A) when verifying that the user has started a new application (application A) on the screen projection device 600.

[0208] Specifically, in an embodiment, the screen projection device 610 (the tablet computer 402) acquires the package names of all installed applications on the screen projection device 610 (the tablet computer 402) by using the PackageManager().getInstalledPackages(0) method, and determines whether the screen projection device 610 (the tablet computer 402) also installs the same application.

[0209] The screen projection device 610 (the tablet computer 402) also includes an application content synchronization module 612, which is configured to identify, according to the user's operation, which application data on the screen projection device 600 needs to be read by the screen projection device 610 running the application A, and sends a synchronization request (a description of the application data on the screen projection device 600 that needs to be read) to the screen projection device 600.

[0210] Specifically, in an embodiment, the screen projection device 610 (the tablet computer 402) modifies the code of the Android Open Source Project (AOSP) to listen to the access of the current application (the application A running on the screen projection device 610) to the local file / path (for example, File, FileInputStream, FileOutputStream, and BitmapFactory) of the screen projection device 610. When the application A running on the screen projection device 610 attempts to access the relevant path or file, the access request (synchronization request) is sent to the screen projection device 600 (the mobile phone 401).

[0211] The screen projection device 600 (the mobile phone 401) also includes an application content reading module 602, which is configured to receive the synchronization request sent by the screen projection device 610 (the tablet computer 402), read the local application data corresponding to the synchronization request on the screen projection device 600 (the mobile phone 401) in real time, and send the local application data corresponding to the synchronization request to the screen projection device 610 (the tablet computer 402).

[0212] Specifically, in one embodiment, the application content reading module 602 receives a file access request from the projected device 610 (tablet computer 402), reads the local application data corresponding to the file access request on the projected device 600 (mobile phone 401) in real time, encrypts it, and sends it to the projected device 610 (tablet computer 402).

[0213] The projected device 610 (tablet computer 402) also includes an application content loading synchronization module 613, which is used to receive local application data from the projection device 600 (phone 401) sent by the application content reading module 602 when the user controls the application on the projected device 610 (tablet computer 402), and provide it to the application on the projected device 610 (tablet computer 402) for loading.

[0214] Specifically, after receiving the application data from the screen projection device 600 (mobile phone 401) sent by the application content reading module 602, the application content loading synchronization module 613 decrypts the data and provides it to the application A running on the screen projection device 610 (tablet computer 402) for loading.

[0215] The method according to the embodiments of this application transforms remote operation into local operation, fundamentally solving problems such as lag and delay caused by network interference, codecs, and excessive load on the mobile device.

[0216] Figure 7 The diagram shown is a schematic of a mobile phone screen mirroring application scenario according to an embodiment of this application.

[0217] like Figure 7 As shown, the mobile phone 701 is based on Figure 4 The process shown projects the device's own screen display (currently the system desktop) onto the tablet 402. The tablet 702 opens and displays the projection window 710, which shows the screen content projected from the phone 701 (the phone 401's system desktop). Figure 7 As shown, the content displayed in the projection window 710 is consistent with the content displayed on the mobile phone 701.

[0218] Figure 8 The diagram shown is a schematic representation of the operation execution flow of a mobile phone screen mirroring to a tablet computer according to an embodiment of this application.

[0219] According to a method of one embodiment of this application, a user performs an operation on the projection window 710 of a tablet computer 702 to launch a chat application on a mobile phone 701. During this process, the mobile phone 701 and the tablet computer 702 perform operations such as... Figure 7 The operation shown.

[0220] S800, the user clicks (input) the physical screen (displaying the projection window 403) of the tablet 402 (tablet side), and the underlying hardware (Hardware) of the touch screen of the tablet 402 acquires the input event of the user according to the click input of the user.

[0221] For example, the user clicks the chat application icon 711 in the projection window 710, trying to open the chat application.

[0222] S801, the tablet 702 sends the input event of the user to the multi-screen collaboration application APP00a of the tablet 702. Refer to S501-S503.

[0223] S802, the multi-screen collaboration application (APP00a) of the tablet 702 sends the input event of the user to the multi-screen collaboration application (APP00b) of the mobile phone 701. Refer to S504-S510.

[0224] S811, the multi-screen collaboration application APP00b of the mobile phone 701 decrypts and parses the packaged and encrypted input event, and obtains the input event matched with the mobile phone 701 after coordinate conversion.

[0225] Specifically, the click position coordinates of the user on the tablet 702 are converted into the screen coordinates of the mobile phone 701, so as to confirm which position on the screen of the mobile phone 701 is clicked by the user.

[0226] Specifically, the click operation of the user on the tablet 702 on the chat application icon 711 is converted into the click operation on the chat application icon 712 on the mobile phone 701.

[0227] S812, the SystemServer of the mobile phone 701 parses the input event obtained by the APP00b, and confirms that the input event corresponds to the chat application (application A, APP01) corresponding to the chat application icon 712.

[0228] Specifically, in S812, the multi-screen collaboration application APP00b injects the input event matched with the mobile phone 701 into the input subsystem of the system service (SystemServer) of the mobile phone 701. The system service (SystemServer) of the mobile phone 701 parses the input event injected into the input subsystem of the system service (SystemServer), and confirms that the input event corresponds to the chat application (application A, APP01) corresponding to the chat application icon 712.

[0229] S813, the chat application (application A, APP01) is started on the mobile phone 701.

[0230] Specifically, in an embodiment, in S813, the chat application (application A, APP01) is started on the mobile phone 701, and the screen display content of the mobile phone 701 is the start interface of the chat application (application A, APP01).

[0231] In another embodiment, the chat application (application A, APP01) is started in the background when it is started on the mobile phone 701, and the screen display content of the mobile phone 701 remains the interface before the chat application (application A, APP01) is started.

[0232] S814, the application detection module of the mobile phone 701 detects that the mobile phone 701 has started a new application (the chat application corresponding to the chat application icon 712), and returns a new application start notification to the application verification module of the tablet computer 702.

[0233] Further, in another embodiment, the application detection module on the mobile phone 701 does not detect whether the mobile phone 701 has started a new application, but detects whether the mobile phone 701 currently needs to start a new application. After S812, the mobile phone 701 does not start the chat application (application A, APP01). The application detection module on the mobile phone 701 confirms that the mobile phone 701 currently needs to start a new application (the chat application (application A, APP01)) according to the determination result of S812.

[0234] S820, the application verification module of the tablet computer 702 detects that the same chat application (application A, APP02) is also installed on the tablet computer 702.

[0235] S821, the tablet computer 702 starts the chat application (application A, APP02) installed on itself.

[0236] In S821, the chat application (application A, APP02) is started on the tablet computer 702, and the chat application (application A, APP02) start interface will be displayed on the tablet computer 702. If the screen display content of the mobile phone 701 in S813 is the start interface of the chat application (application A, APP01). At this time, the chat application (application A, APP02) start interface on the tablet computer 702 and the chat application (application A, APP01) start interface on the mobile phone 701 can be the same or different (there are device version differences).

[0237] Specifically, the present application does not limit the specific starting method of the application started by the screen projection device.

[0238] For example, Figure 9a to Figure 9cThis is a schematic diagram illustrating the display effect of screen projection application scenarios according to different embodiments of this application.

[0239] like Figure 9a As shown, the tablet computer 702 can open another window 720 outside the projection window 710 to display the running interface of the chat application (application A, APP02).

[0240] like Figure 9b As shown, the tablet computer 702 can also display the interface of the chat application (application A, APP02) in full-screen mode.

[0241] like Figure 9c As shown, the tablet computer 702 can also replace the screen content of the mobile phone 401 with the running interface of the chat application (application A, APP02) in the screen projection window 710, simulating the display screen of the chat application (application A, APP01) running on the mobile phone 401.

[0242] Furthermore, in S821, the application content synchronization module of tablet PC 702 monitors access to local files / paths (e.g., File, FileInputStream, FileOutputStream, BitmapFactory) of the chat application (Application A, APP02) on tablet PC 702 during the startup of the chat application (Application A, APP02). When tablet PC 702 attempts to access the relevant path or file during the startup of the chat application (Application A, APP02), the application content synchronization module of tablet PC 702 sends the access request (synchronization request) to the application content reading module of mobile phone 701. After receiving the file access request sent by the application content synchronization module of tablet PC 702, the application content reading module of mobile phone 701 reads the local application data of the chat application (Application A, APP01) corresponding to the file access request on mobile phone 701 in real time, encrypts it, and sends it to the application content loading and synchronization module of tablet PC 702.

[0243] After receiving the application data sent by the application content reading module of the mobile phone 701, the application content loading synchronization module of the tablet computer 702 decrypts it and provides it to the chat application (application A, APP02) of the tablet computer 702 for loading, thereby launching the chat application (application A, APP02).

[0244] After S821, users can touch the display window of the chat application (application A, APP02) on the tablet 702. Figure 10 The diagram illustrates the operation flow of a mobile phone screen mirroring onto a tablet computer according to an embodiment of this application. After S821, the mobile phone 701 and the tablet computer 702 execute as follows: Figure 10 The operation shown.

[0245] S830, the user clicks (input) the content in the display window of the chat application (application A, APP02) on the physical screen of the tablet computer 702 (tablet side).

[0246] S831 The underlying hardware (Hardware) of the touch screen of the tablet computer 702 obtains the input event of the user according to the click input of the user.

[0247] S832, the input event of the user is sent to the currently running chat application (application A, APP02).

[0248] Specifically, the underlying hardware (Hardware) of the touch screen of the tablet computer 702 reports the input event of the user (input reader) to the system service (SystemServer) of the tablet computer 702. The SystemServer sends the input event to the currently running chat application (application A, APP02).

[0249] S833, the chat application (application A, APP02) of the tablet computer 702 responds to the input event of the user and draws the relevant image (draw frame).

[0250] Specifically, in an embodiment, in S833, the application content synchronization module of the tablet computer 702 listens to the access (S834) of the local file / path (for example: File, FileInputStream, FileOutputStream, BitmapFactory) of the chat application (application A, APP02) of the tablet computer 702 in the response process of the chat application (application A, APP02) of the tablet computer 702 responding to the input event of the user. When the chat application (application A, APP02) of the tablet computer 702 tries to access the relevant path or file in the process of responding to the input event of the user, the application content synchronization module of the tablet computer 702 sends the access request (synchronization request) to the application content reading module of the mobile phone 701 (S835). After the application content reading module of the mobile phone 701 receives the file access request sent by the application content synchronization module of the tablet computer 702, it reads the local application data of the chat application (application A, APP01) corresponding to the file access request on the mobile phone 701 in real time (S836), and sends it to the application content loading synchronization module of the tablet computer 702 after encryption.

[0251] The application content loading synchronization module of the tablet 702 receives the application data sent by the application content reading module of the mobile phone 701, decrypts the application data, and provides the decrypted application data to the chat application (application A, APP02) of the tablet 702 for loading (S837), so that the chat application (application A, APP02) of the tablet 702 responds to the input event of the user based on the application data of the mobile phone 701.

[0252] After S833, the display of the chat application on the tablet 702 can be performed according to the processes of S411-S415.

[0253] After S833, the display content of the chat application (application A, APP02) on the tablet 702 is the response result of the user input event. Since the user input event is not synchronized to the mobile phone 701, the chat application (application A, APP01) on the mobile phone 701 does not perform the response operation, and therefore, if the screen display content of the mobile phone 701 is the start interface of the chat application (application A, APP01) in S813, the screen display content of the mobile phone 701 remains at the start interface of the chat application (application A, APP01) after S833.

[0254] Further, in S833, during the process that the chat application (application A, APP02) of the tablet 702 responds to the input event of the user, the application data of the chat application can be rewritten (for example, new chat records are added, new chat pictures are saved, and a new chat background is set, etc.). Therefore, in an embodiment, after S833, the application content synchronization module of the tablet 702 sends the new application data generated in S834 to the application content reading module of the mobile phone 701. The application content reading module of the mobile phone 701 updates the corresponding local application data on the mobile phone 701 using the received application data.

[0255] Further, in order to avoid the leakage of user personal privacy data, after S833, the application content synchronization module of the tablet 702 deletes the application data sent by the application content reading module of the mobile phone 701. Specifically, the application content synchronization module of the tablet 702 can delete the application data after each response of the chat application (application A, APP02) is completed, or can delete the application data after the chat application (application A, APP02) is ended or closed, or can delete the application data after the screen projection operation is ended.

[0256] Further, in another embodiment, before S821, the application content synchronization module of the tablet 702 sends a synchronization request to the application content reading module of the mobile phone 701 for the chat application (application A, APP02). After receiving the synchronization request from the application content synchronization module of the tablet 702, the application content reading module of the mobile phone 701 reads all the local application data that the chat application (application A, APP02) on the mobile phone 701 can access during startup and running after startup in real time, and sends the encrypted application data to the application content loading synchronization module of the tablet 702.

[0257] After receiving the application data from the application content reading module of the mobile phone 701, the application content loading synchronization module of the tablet 702 decrypts the application data and provides the decrypted application data to the chat application (application A, APP02) on the tablet 702. During the startup process of the chat application (application A, APP02) on the tablet 702 and the running process after startup (in response to a user input event), the chat application (application A, APP02) on the tablet 702 loads the application data of the mobile phone 701, and the chat application (application A, APP02) on the tablet 702 starts based on the application data of the mobile phone 701 and responds to the user input event.

[0258] It can be understood that some or all of the steps or operations in the above embodiments are only examples, and the embodiments of the present application can also perform other operations or various modifications of the operations. In addition, the various steps can be performed in different orders from those presented in the above embodiments, and it is possible that not all the operations in the above embodiments are to be performed.

[0259] Further, generally, it can be clear to distinguish whether an improvement of a technology is an improvement on hardware (for example, an improvement on circuit structures of diodes, transistors, switches, etc.) or an improvement on software (for example, an improvement on a method flow). However, as the technology develops, many improvements on method flows nowadays can be regarded as direct improvements on hardware circuit structures. Designers almost always obtain corresponding hardware circuit structures by programming improved method flows into hardware circuits. Therefore, it cannot be said that an improvement on a method flow cannot be implemented by hardware entity modules. For example, a programmable logic device (PLD) (for example, a field programmable gate array (FPGA)) is an integrated circuit whose logic function is determined by the programming of the device by the access party. A digital device is "integrated" on a PLD by being programmed by the designer, without the need to ask a chip manufacturer to design and manufacture a special integrated circuit chip. Moreover, nowadays, instead of manually manufacturing integrated circuit chips, such programming is mostly implemented by using "logic compiler" software, which is similar to the software compiler used when a program is developed and written, and the original code before being compiled also needs to be written in a specific programming language, which is called a hardware description language (HDL), and there are many kinds of HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc., and the most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. It should be clear to those skilled in the art that only a little logical programming of a method flow in the above-mentioned hardware description languages and programming into an integrated circuit can easily obtain a hardware circuit that implements the logical method flow.

[0260] Therefore, the method flow proposed in the embodiments of the present application can be implemented in a hardware manner, for example, a controller is used to control a touch screen to implement the method flow proposed in the embodiments of the present application.

[0261] The controller can be implemented in any appropriate manner, for example, the controller can take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (for example, software or firmware) executable by the (micro)processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller and an embedded microcontroller, examples of the controller include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320, the memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that, in addition to implementing the controller in a pure computer readable program code manner, the controller can also be implemented in the form of logic gates, switches, an ASIC, a programmable logic controller and an embedded microcontroller, etc. to achieve the same function by logically programming the method steps. Therefore, such a controller can be considered as a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, even the means for implementing various functions can be considered as both a software module implementing a method and a structure within a hardware component.

[0262] Corresponding to the above-mentioned embodiments, the present application also provides an electronic device. The electronic device comprises a memory for storing computer program instructions and a processor for executing the program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to perform the method steps as described in the embodiments of the present application.

[0263] The present application also provides a computer program product, which comprises a computer program, when it runs on a computer, makes the computer execute part or all of the steps provided by the embodiments of the present application.

[0264] Those skilled in the art can clearly understand that the technical solution in the embodiments of the present application can be realized by means of software plus a necessary general hardware platform. Based on such an understanding, the technical solution in the embodiments of the present application can be embodied in the form of a software product, which can be stored in a storage medium, such as a ROM / RAM, a magnetic disk, an optical disk, and the like, and includes a number of instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute the methods described in various embodiments or some parts of the embodiments of the present application.

[0265] The same or similar parts among various embodiments in the specification can be referred to each other. Especially, for the device embodiments and the terminal embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the description in the method embodiments.

Claims

1. A screen projection method, characterized by, The method is applied to a first electronic device, and the method comprises: receiving screen projection content data of a second electronic device; displaying a screen projection interface according to the screen projection content data, the screen projection interface being used to display screen projection content corresponding to the screen projection content data; obtaining a first input event according to a first user input, wherein the first user input is an operation performed on the screen projection content; sending the first input event to the second electronic device; when an application startup notification for a first application is received, determining whether a second application is installed on the first electronic device, wherein the second application is the same application as the first application installed on different devices, and when a response operation of the first input event on the second electronic device is to start the first application installed on the second electronic device, the second electronic device generates the application startup notification for the first application; when the second application is installed on the first electronic device, starting the second application installed on the first electronic device.

2. The method of claim 1, wherein, The starting of the second application installed on the first electronic device comprises: displaying a first application interface, the first application interface being used to display a running screen of the second application, and the first application interface being an independent window interface or a full-screen interface.

3. The method of claim 1, wherein, The starting of the second application installed on the first electronic device comprises: replacing the screen projection content with the running screen of the second application, and displaying the running screen of the second application in the screen projection interface.

4. The method of claim 1, wherein, The starting of the second application installed on the first electronic device comprises: during the starting of the second application, when first application data needs to be loaded, pausing the starting process, sending description information of the first application data to the second electronic device, the first application data being local application data of the second application on the first electronic device; receiving second application data sent by the second electronic device, wherein the second application data is local application data of the first application on the second electronic device, and the second application data matches the description of the first application data; loading the second application data to replace a loading link of the first application data, and continuing the starting process.

5. The method of claim 4, wherein, using data loading request as the description information; during the starting of the second application, when there is a first data loading request, sending the first data loading request to the second electronic device, wherein the first data loading request is used to request to load the first application data; the receiving of the second application data sent by the second electronic device, wherein the second electronic device locates the second application data according to the first data loading request; the loading of the second application data to replace the loading link of the first application data comprises responding to the first data loading request based on the second application data.

6. The method of claim 1, wherein, The starting of the second application installed on the first electronic device comprises: Before starting the first application, confirming first application starting data required in starting the second application, the first application starting data being local application data of the second application on the first electronic device; sending description information of the application starting data to the second electronic device; receiving second application starting data sent by the second electronic device, the second application starting data being local application data of the first application on the second electronic device, the second application starting data corresponding to the description information of the first application starting data; in the process of starting the first application installed on the first electronic device, when the first application starting data is required to be loaded, loading the second application starting data.

7. The method of claim 1, wherein, The method further comprises: obtaining a second input event according to a second user input, wherein the second user input is an operation performed on a running screen of the second application; in the process of the second application responding to the second input event, when third application data is required to be loaded, pausing the response process, sending description information of the third application data to the second electronic device, the third application data being local application data of the second application on the first electronic device; receiving fourth application data sent by the second electronic device, wherein the fourth application data is local application data of the first application on the second electronic device, and the fourth application data matches the description of the third application data; loading the fourth application data to replace the loading link of the third application data, and continuing the response process.

8. The method of claim 7, wherein, using a data loading request as the description information of the third application data; in the process of the second application responding to the second input event, when a second data loading request exists, sending the second data loading request to the second electronic device, wherein the second data loading request is used to request to load the third application data; the receiving fourth application data sent by the second electronic device, wherein the second electronic device locates the fourth application data according to the second data loading request; the loading the fourth application data to replace the loading link of the third application data comprises responding to the second data loading request based on the fourth application data.

9. The method of claim 1, wherein, The method further comprises: confirming all local application data that can be loaded in the process of running the second application on the first electronic device; sending description information of all local application data that can be loaded in the process of running the second application to the second electronic device; receiving local application data of the first application sent by the second electronic device, the second application starting data being local application data of the first application on the second electronic device, the local application data of the first application corresponding to the description information of all local application data that can be loaded in the process of running the second application; obtaining a third input event according to a third user input, wherein the third user input is an operation performed on a running screen of the second application; In a process in which the second application responds to the third input event, when local data of the second application needs to be loaded, local application data of the first application is loaded.

10. The method according to any one of claims 4 to 9, characterized in that, The method further includes: After the second application is closed, application data sent by the second electronic device is deleted on the first electronic device.

11. The method according to any one of claims 4 to 9, characterized in that, The method further includes: Application data newly generated in a process in which the second application is running is synchronized to the first application of the second electronic device.

12. A screen projection method, characterized in that, The method is applied to a second electronic device, and the method includes: sending screen projection content data to a first electronic device, the screen projection content data being used to cause the first electronic device to display screen projection content corresponding to the screen projection content data; receiving a first input event sent by the first electronic device, the first input event being an input event acquired by the first electronic device according to a first user input, the first user input being an operation performed on the screen projection content displayed by the first electronic device; when a response operation of the first input event on the second electronic device is to start a first application installed on the second electronic device, generating an application start notification for the first application, wherein the application start notification is used to instruct the first electronic device to start a second application installed on the first electronic device when the second application is installed on the first electronic device, the second application and the first application being the same application installed on different devices; sending the application start notification to the first electronic device.

13. The method of claim 12, wherein, The generating of the application start notification for the first application includes: when the response operation of the first input event on the second electronic device is to start the first application installed on the second electronic device, responding to the first input event and starting the first application; when the first application is started, generating the application start notification for the first application.

14. The method of claim 12, wherein, The generating of the application start notification for the first application includes: when the response operation of the first input event on the second electronic device is to start the first application installed on the second electronic device, not starting the first application and generating the application start notification for the first application.

15. The method according to any one of claims 12 to 14, characterized in that, The method further includes: receiving application data description information of the second application sent by the first electronic device; sending local application data of the first application that matches the application data description information to the first electronic device.

16. An electronic device, comprising: The electronic device includes a display device, a memory for storing computer program instructions, and a processor for executing program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to perform the method steps of any one of claims 1-11.

17. An electronic device, comprising: The electronic device includes a memory for storing computer program instructions and a processor for executing program instructions, wherein when the computer program instructions are executed by the processor, the electronic device is triggered to perform the method steps of any one of claims 12-15.

18. A computer-readable storage medium, characterized in that, The computer program is stored in the computer readable storage medium and, when run on the computer, causes the computer to perform the method of any one of claims 1-15.

19. A computer program product, characterised in that, The computer program product comprises the computer program and, when the computer program is run on the computer, causes the computer to perform the method of any one of claims 1-15.