Multi-window display method, electronic device and system
The multi-window display method enables simultaneous use of multiple mobile phone applications on a PC, improving efficiency and user experience by allowing independent control and display of mobile phone windows on a PC, addressing the limitations of existing interconnection technologies.
Patent Information
- Application Number
- JP2022531601
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-12-26
- Filing Date
- 2020-11-19
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2040-11-19
AI Technical Summary
Existing solutions for mobile phone-PC interconnection lack the ability to implement multi-window display, limiting efficient file sharing and user experience when using mobile phones as secondary devices for office tasks.
A multi-window display method that allows multiple windows of a mobile phone to be displayed on a PC, enabling independent operation and control of each application window, with positioning and size adjustments based on the PC's display area, and supporting various connection methods.
Enhances business efficiency and user experience by allowing simultaneous use of multiple mobile phone applications on a PC without affecting primary PC functions, maintaining natural display and user habits.
Smart Images

Figure 0007772328000001 
Figure 0007772328000002 
Figure 0007772328000003
Abstract
Description
[Technical Field]
[0001] This application claims priority to Chinese Patent Application No. 201911366233.2, filed with the China Patent Office on December 26, 2019, and entitled "MULTI-WINDOW DISPLAY METHOD, ELECTRONIC DEVICE, AND SYSTEM," which is incorporated herein by reference in its entirety.
[0002] TECHNICAL FIELD Embodiments of the present application relate to the field of electronic technology, and in particular to a multi-window display method, electronic device and system. [Background technology]
[0003] Mobile offices are becoming increasingly popular in office scenarios. As mobile phones are widely used, they have become one of the main devices for mobile offices. Therefore, there is a growing demand for interconnection between mobile phones and personal computers (PCs), such as file exchange between mobile phones and PCs and projection of mobile phone screens onto PC display screens.
[0004] In existing solutions that display a mobile phone interface on a PC, after a connection is established between the mobile phone and the PC, screen content and data can be easily shared between the PC and the mobile phone by using screen sharing software. A user can receive notification events on the mobile phone by using the PC and use multiple functions of the mobile phone on the PC. For example, after connecting the PC and the mobile phone using screen sharing software, a user can receive notifications on the mobile phone by using the PC, for example, make a phone call by using the PC, and easily answer a call or send / receive information by using a pop-up window. Alternatively, a user can view an incoming call alarm. Alternatively, a user can share files between the PC and the mobile phone. Optionally, a user can quickly share files and text content between the PC and the mobile phone by dragging and dropping them. For example, a user can insert a photo on the mobile phone into a Word document on the PC, or insert a file on the PC into the mobile phone when sending text information or an email. Screen sharing software mainly displays all content (e.g., an application interface) displayed on the mobile phone screen in one window on the PC through imaging. It cannot implement multi-window display. Summary of the Invention [Problem to be solved by the invention]
[0005] This application provides a multi-window display method, electronic device, and system, in which multiple windows of a mobile phone can be displayed on a PC, and a user can perform operations on each mobile phone application by using a window corresponding to the mobile phone application and displayed on the PC, thereby improving business efficiency such as file sharing and improving user experience. [Means for solving the problem]
[0006] According to a first aspect, a multi-window display method is provided that is applicable to a system including a first electronic device and a second electronic device that communicate with each other, the method including: the first electronic device receiving size information of a display area of a second electronic device; the first electronic device executing a first application and displaying a first interface of the first application; the first electronic device determining position information of a first window of the first interface, the first window being within the display area of the second electronic device, based on the size information of the display area of the second electronic device and size information corresponding to the first interface; the first electronic device transmitting the position information of the first window and display content information of the first interface to the second electronic device; the second electronic device displaying the first interface within the first window based on the received position information of the first window and the received display content information of the first interface; when detecting the first operation, the second electronic device transmitting an instruction to the first electronic device to start a second application in response to the first operation; the first electronic device starting the second application based on the received instruction to start the second application. The first electronic device determines position information of a second window of the second interface, the second window being within the display area of the second electronic device, based on size information of the display area of the second electronic device and size information corresponding to the second interface of the second application. The first electronic device transmits the position information of the second window and display content information of the second interface to the second electronic device. The second electronic device displays the second interface within the second window based on the received position information of the second window and the received display content information of the second interface. The first window and the second window are different windows.
[0007] In this embodiment of the present application, it should be understood that "displaying multiple windows" may be understood as "displaying multiple interfaces," and each window is used to display a different interface. For example, a PC displays multiple interfaces of a mobile phone by using different windows, such as a first interface and a second interface. Each interface is an interface that can be controlled independently, and for example, an operation performed by a user on the first interface and an operation performed by a user on the second interface are independent of each other.
[0008] It should be further understood that the first electronic device and the second electronic device may communicate with each other in a number of different ways, for example, by using a connection method or a future communication technology to transmit data. The connection method may include a number of different connection methods, such as a wired connection method or a wireless connection method. For example, the first electronic device and the second electronic device may be connected to each other using a USB data cable. The wireless connection between the first electronic device and the second electronic device may be a Wi-Fi connection, a short-range connection established through near-field communication, a connection established through Bluetooth® code scanning, etc. The first electronic device and the second electronic device may transmit data by using a future communication technology, such as a 5G communication network, by installing different applications or the same application on the mobile phone and the PC. The connection method between the mobile phone and the PC is not limited in this embodiment of the present application.
[0009] It should be further understood that this embodiment of the present application does not impose any limitations on the operation of receiving the size information of the display area of the second electronic device by the first electronic device and the operation of running the first application and displaying the first interface of the first application by the first electronic device. For example, the first electronic device may first run the first application and display the first interface of the first application, and when a user uses the second electronic device to display the first interface of the first electronic device, the operation of obtaining the size information of the display area of the second electronic device from the second electronic device is triggered by the first electronic device. Alternatively, the second electronic device may first send the size information of the display area of the second electronic device to the first electronic device, and then the first electronic device may run the first application, display the first interface of the first application, and perform the following operation:
[0010] It should be further understood that, when starting the second application based on the received instruction to start the second application, the instruction being sent by the second electronic device, the first electronic device may display a second interface of the second application, i.e., the first electronic device runs the second application in the foreground, or the first electronic device does not display the second interface of the second application, i.e., the first electronic device runs the second application in the background, which is not limited in this embodiment of the present application.
[0011] In addition, the first application and the second application may be applications installed on the first electronic device or may be quick applications that can be executed immediately, which is not limited to this embodiment of the present application.
[0012] An example is taken in which a mobile phone is used as the first electronic device and a PC is used as the second electronic device. In the above solution, when the mobile phone and PC communicate with each other, the mobile phone interface can be displayed by using the PC. When a user runs multiple applications on the mobile phone, the PC may display multiple windows, each window used to display a different application. Alternatively, the user may start the mobile phone application on the PC and display the mobile phone application using an independent window. This method can improve business efficiency, such as file sharing, and allow the mobile phone application to be used on the PC, thereby improving the user experience. In some implementations of the first aspect, the method further includes: the first electronic device sending first information of the first application and second information of the second application to the second electronic device. The first information of the first application includes at least one type of information, such as the name, identifier ID, and icon of the first application. The second information of the second application includes at least one type of information, such as the name, identifier ID, and icon of the second application. After receiving the first information of the first application and the second information of the second application, the second electronic device automatically displays the third interface. The third interface includes the first information of the first application and the second information of the second application. Alternatively, after detecting the second operation of the user, the second electronic device displays the third interface based on the first information of the first application and the second information of the second application.
[0013] It should be understood that an example is used in which a mobile phone establishes a connection to a PC. After the mobile phone establishes a connection to the PC, the mobile phone may send information about all installed applications to the PC, and the PC will automatically display the applications on the mobile phone.
[0014] Alternatively, by tapping / clicking on the EMUJI desktop menu in the menu window on the PC, the user may trigger the PC to send an application acquisition request to the mobile phone, requesting to acquire application information of the mobile phone, for example, first information of a first application and second information of a second application.
[0015] The application information of the mobile phone in this specification may include at least one type of information such as the name, identification (ID) and icon of all applications of the mobile phone. After receiving the application information, the PC displays each application in a mobile phone window on the PC based on the name, ID and icon of the application to display all applications of the mobile phone.
[0016] The above solution allows all applications of the first electronic device to be displayed on the second electronic device.
[0017] In relation to the first aspect and the implementations described above, in some implementations of the first aspect, the first window is proximate to the right edge of the display area of the second electronic device.
[0018] In relation to the first aspect and the implementations described above, in some implementations of the first aspect, the second window is positioned to the left of the first window and does not overlap with the first window.
[0019] In the above solution, the mobile phone window can be prevented from hiding the original application programs of the PC (e.g., My Computer or Recycle Bin) displayed in the PC interface, and the mobile phone window can be prevented from hiding shortcut menu options such as an input method control menu, a date and time setting menu, or PC power management displayed in the lower right corner area of the PC interface.
[0020] In relation to the first aspect and the implementations described above, in some implementations of the first aspect, the second window is positioned on top of the first window.
[0021] Optionally, in some possible implementations, the position information of the first window may further include display level information of the first window, and the position information of the second window further includes display level information of the second window, where the second window is displayed at a higher level than the first window. In other words, the display level information of the first window is sent by the first electronic device to the second electronic device, and the second electronic device determines a layer on which the first window should be displayed based on the display level information of the first window.
[0022] In relation to the first aspect and the implementations described above, in some implementations of the first aspect, the position information of the first window includes coordinate information of a first vertex of the first window, length information of the first window, and width information of the first window, or the position information of the first window includes coordinate information of four vertices of the first window. Similarly, the position information of the second window is similar to the position information of the first window. Specifically, the position information of the second window includes coordinate information of a second vertex of the second window, length information of the second window, and width information of the second window, or the position information of the second window includes coordinate information of four vertices of the second window.
[0023] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, size information of the first window is determined by the first electronic device based on size information corresponding to the first interface. Before the first electronic device determines position information of the first window of the first interface, the first window being within the display area of the second electronic device, based on the size information of the display area of the second electronic device and the size information corresponding to the first interface, the method further includes: the first electronic device obtains size information of the display area of the first electronic device, and determines that the size information of the display area of the first electronic device is size information corresponding to the first interface, or that the size information corresponding to the first interface is a product of the size information of the display area of the first electronic device and a first multiple, where the first multiple is greater than 0 and not equal to 1.
[0024] For example, when determining the size information of the first window, the first electronic device may determine the size information of the first window based on the size of the first interface displayed on the first electronic device. For example, the size of the first window may be the same as the size of the first interface displayed on the first electronic device. Alternatively, the size of the first interface displayed on the first electronic device may be enlarged or reduced based on a specific ratio to obtain the size information of the first window. This method can ensure that when content in the first interface is displayed in the first window of the second electronic device, a display effect similar to that obtained when the first electronic device is used is provided to the user, resulting in a more natural display and an improved user experience.
[0025] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, size information of the first window is determined by the first electronic device based on size information corresponding to the first interface. Before the first electronic device determines position information of the first window of the first interface, the first window being within the display area of the second electronic device, based on size information of the display area of the second electronic device and size information corresponding to the first interface, the method further includes: the first electronic device obtains, from configuration information of the first application, size information that will exist when the first interface is displayed on the first electronic device, and determines the size information that will exist when the first interface is displayed on the first electronic device as the size information corresponding to the first interface. Alternatively, the first electronic device obtains, from a network device, size information that will exist when the first interface is displayed on the second electronic device, and determines the size information that will exist when the first interface is displayed on the second electronic device as the size information corresponding to the first interface.
[0026] For example, the first electronic device may obtain the size information of the first interface displayed on the first electronic device in different ways: for example, when the first application is installed, the first electronic device may obtain the size information from the configuration information of the first application, i.e., locally query the interface information of the first application on the first electronic device, or request a network device to query the interface information of the second electronic device to obtain the size information of the first interface displayed on the first electronic device.
[0027] In relation to the first aspect and the implementations described above, in some implementations of the first aspect, the first window includes a first interface and a first menu bar, and / or the second window includes a second interface and a second menu bar.
[0028] In relation to the first aspect and the aforementioned implementations, in some implementations of the first aspect, the second menu bar includes a close key. After the second electronic device displays the second interface in the second window, the method further includes: if the second electronic device detects an operation performed by the user on the close key, the second electronic device closes the second window and sends an instruction to the first electronic device to close the second application. The first electronic device closes the second application based on the instruction to close the second application. In relation to the first aspect and the aforementioned implementations, in some implementations of the first aspect, after the second electronic device displays the second interface in the second window, the method further includes: if the second electronic device detects an operation performed by the user to select the first window, the second electronic device switches the first window to the top layer for display.
[0029] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, the second menu bar includes a maximize key. After the second electronic device displays the second interface in the second window, the method further includes: if the second electronic device detects an operation performed by the user on the maximize key, the second electronic device displays the second window in full screen.
[0030] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, after the second electronic device displays the second interface in the second window, the method further includes: if the first electronic device detects a user's instruction to close the second application, the first electronic device notifies the second electronic device to close the second application and close the second window; and the second electronic device closes the second window based on the notification of the first electronic device.
[0031] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, the method further includes: the second electronic device detects an operation of selecting and dragging a second window, where the second window moves from a first position to a second position; the second electronic device transmits information about the second position and information about the second application to the first electronic device; the first electronic device receives the information about the second position and the information about the second application transmitted by the second electronic device, determines the second application based on the information about the second application, and determines a display position of the display content within the second interface based on the information about the second position.
[0032] In the above technical solution, the window of each application displayed on the PC may receive user operations, such as closing, moving, scaling, maximizing, and minimizing the window. In addition, the user may perform operations on each mobile phone application in the window corresponding to the mobile phone application displayed on the PC. For example, the user may tap / click controls such as "play" and "next" in the music application window displayed on the PC to control the music playback process. In addition, operations performed by the user on the mobile phone application on the PC do not affect the user's use of other functions on the mobile phone, such as in the above scenario where the user plays music using the mobile phone and simultaneously watches videos using the PC. The user may perform operations on any control of the mobile phone application in the application window displayed on the PC. The operation may be transferred back to the mobile phone, and the mobile phone may execute and transfer the operation result to the PC, so that the operation result performed by the mobile phone can be synchronized with the application window displayed on the PC, thereby improving the efficiency and experience of using the mobile phone application.
[0033] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, if the first application is an audio playback application and the second application is also an audio playback application, after the first electronic device starts the second application, the method further includes: the first electronic device transmits audio data of the second application to the second electronic device; and the second electronic device plays the audio data of the second application.
[0034] When possible, when a user plays music on the mobile phone, a window corresponding to the music application can be displayed on the PC, and the mobile phone can transmit audio data to the PC, which then plays the audio data.
[0035] Optionally, the music audio may actually be played on the device where the music application is started. Specifically, if a user taps on a music application on a mobile phone, the device that actually plays the music audio is the mobile phone. The user plays music in a mobile phone window on a PC by using a music application. In this case, the device that actually plays the music audio is the PC.
[0036] In relation to the first aspect and the above-described implementations, in some implementations of the first aspect, the first electronic device transmitting the position information of the first window and the display content information of the first interface to the second electronic device includes: the first electronic device encoding the position information of the first window and the display content information of the first interface to generate a first video stream and transmitting the first video stream to the second electronic device; the second electronic device receiving the first video stream transmitted by the first electronic device and decoding the first video stream to obtain the position information of the first window and the display content information of the first interface; the first electronic device transmitting the position information of the second window and the display content information of the second interface to the second electronic device includes: the first electronic device encoding the position information of the second window and the display content information of the second interface to generate a second video stream and transmitting the second video stream to the second electronic device; the second electronic device receiving the second video stream transmitted by the first electronic device and decoding the second video stream to obtain the position information of the second window and the display content information of the second interface.
[0037] In a specific implementation process, a video stream transmission process may be used: the mobile phone encodes all information to be sent to the PC to generate a video stream, for example, encodes interface content information of a music application and position information of a window of the music application displayed on the PC to generate a video stream, and sends the video stream to the PC. After receiving and decoding the video stream, the PC accurately displays the interface content of the music application within the window of the music application.
[0038] In conclusion, the multi-window display method provided in this embodiment of the present application allows a mobile phone application program to be displayed in a mobile phone window on a PC or in a menu list on the PC. When a mobile phone application is not installed on the PC, the mobile phone application can be run by tapping / clicking on the PC and the application's functions can be used. The user can use the mobile phone application by using the large screen experience of the PC. This method can implement system integration between the mobile phone and the PC, so that the user can launch an application installed on the mobile phone from the system menu of the PC.
[0039] Additionally, in this method, multiple mobile phone applications can be independently executed concurrently on the PC. An independent window can be displayed for each application on the PC. Multiple windows corresponding to multiple applications are simultaneously displayed within the PC interface, and the execution of multiple mobile phone applications does not affect the user's use of other functions on the mobile phone. For example, when using a mobile phone video application or music application on the PC, the user may simultaneously use the mobile phone to send / receive SMS messages, make phone calls, or perform other such tasks. Alternatively, the user may operate the mobile phone using peripheral input devices such as a mouse or keyboard, completely maintaining the user's usage habits and eliminating the need to frequently switch between the two devices. Mobile phone applications are executed using the mobile phone window on the PC, thereby improving the efficiency of file queries, sharing, and business operations and improving the user experience.
[0040] According to a second aspect, there is provided a multi-window display method applicable to a system including a first electronic device and a second electronic device communicating with each other, the method including: the first electronic device receiving size information of a display area of a second electronic device; the first electronic device executing a first application and displaying a first interface of the first application; the first electronic device determining position information of a first window of the first interface, the first window being within the display area of the second electronic device, based on the size information of the display area of the second electronic device and size information corresponding to the first interface; the first electronic device transmitting position information of the first window and display content information of the first interface to the second electronic device; the first electronic device receiving an instruction transmitted by the second electronic device to start a second application, the instruction being an instruction to start a second application, and starting the second application; the first electronic device determining position information of a second window of the second interface, the second window being within the display area of the second electronic device, based on the size information of the display area of the second electronic device and size information corresponding to the second interface of the second application; the first window and the second window being different windows; and the first electronic device transmitting position information of the second window and display content information of the second interface to the second electronic device.
[0041] In relation to the second aspect, in some implementations of the second aspect, the method further includes: the first electronic device transmitting first information of the first application and second information of the second application to the second electronic device, the first information of the first application including at least one type of information such as a name, an identifier ID, and an icon of the first application, and the second information of the second application including at least one type of information such as a name, an identifier ID, and an icon of the second application.
[0042] In relation to the second aspect and the implementations described above, in some implementations of the second aspect, the first window is proximate to the right edge of the display area of the second electronic device.
[0043] In relation to the second aspect and the implementations described above, in some implementations of the second aspect, the second window is positioned to the left of the first window and does not overlap the first window.
[0044] In relation to the second aspect and the implementations described above, in some implementations of the second aspect, the second window is positioned on top of the first window.
[0045] In relation to the second aspect and the above-mentioned implementations, in some implementations of the second aspect, the position information of the first window includes coordinate information of a first vertex of the first window, length information of the first window, and width information of the first window, or the position information of the first window includes coordinate information of four vertices of the first window.
[0046] In relation to the second aspect and the above-described implementations, in some implementations of the second aspect, size information of the first window is determined by the first electronic device based on size information corresponding to the first interface. Before the first electronic device determines position information of the first window of the first interface, the first window being within the display area of the second electronic device, based on the size information of the display area of the second electronic device and the size information corresponding to the first interface, the method further includes: the first electronic device obtains size information of the display area of the first electronic device, and determines that the size information of the display area of the first electronic device is size information corresponding to the first interface, or that the size information corresponding to the first interface is a product of the size information of the display area of the first electronic device and a first multiple, where the first multiple is greater than 0 and not equal to 1.
[0047] In relation to the second aspect and the above-described implementations, in some implementations of the second aspect, size information of the first window is determined by the first electronic device based on size information corresponding to the first interface. Before the first electronic device determines position information of the first window of the first interface, the first window being within the display area of the second electronic device, based on size information of the display area of the second electronic device and size information corresponding to the first interface, the method further includes: the first electronic device obtains, from configuration information of the first application, size information that will exist when the first interface is displayed on the first electronic device, and determines the size information that will exist when the first interface is displayed on the first electronic device as the size information corresponding to the first interface. Alternatively, the first electronic device obtains, from a network device, size information that will exist when the first interface is displayed on the second electronic device, and determines the size information that will exist when the first interface is displayed on the second electronic device as the size information corresponding to the first interface.
[0048] In relation to the second aspect and the implementations described above, in some implementations of the second aspect, the first window includes a first interface and a first menu bar, and / or the second window includes a second interface and a second menu bar.
[0049] In relation to the second aspect and the above-described implementations, in some implementations of the second aspect, the second menu bar includes a close key, and the method further includes: when the first electronic device receives an instruction sent by the second electronic device to close the second application and detects an operation performed by the user on the close key, the second electronic device closes the second window and sends an instruction to the first electronic device to close the second application; and the first electronic device closes the second application in response to the instruction to close the second application.
[0050] In relation to the second aspect and the above-described implementations, in some implementations of the second aspect, the method further includes: when the first electronic device detects a user instruction to close the second application, the first electronic device sends an instruction to the second electronic device to close the second application and close the second window.
[0051] In relation to the second aspect and the above-mentioned implementations, in some implementations of the second aspect, if the first application is an audio playback application and the second application is also an audio playback application, after the first electronic device starts the second application, the method further includes: the first electronic device transmits audio data of the second application to the second electronic device.
[0052] According to a third aspect, there is provided a multi-window display method applicable to a system including a first electronic device and a second electronic device communicating with each other, the method including: the second electronic device receiving position information of a first window and display content information of a first interface sent by the first electronic device, where the first interface is a displayed interface of a first application running on the first electronic device; the second electronic device displaying the first interface in a first window in a display area of the second electronic device based on the position information of the first window and the display content information of the first interface; when detecting the first operation, the second electronic device transmitting an instruction to the first electronic device to start a second application in response to the first operation; the second electronic device receiving position information of a second window and display content information of a second interface sent by the first electronic device, where the second interface is an interface of a second application, where the first window and the second window are different windows; and the second electronic device displaying the second interface in a second window in a display area of the second electronic device based on the position information of the second window and the display content information of the second interface.
[0053] In relation to the third aspect, in some implementations of the third aspect, the method further includes: the second electronic device receives first information of the first application and second information of the second application transmitted by the first electronic device; the first information of the first application includes at least one type of information, such as a name, an identifier ID, and an icon of the first application; the second information of the second application includes at least one type of information, such as a name, an identifier ID, and an icon of the second application; the second electronic device automatically displays a third interface, where the third interface includes the first information of the first application and the second information of the second application; or, after detecting a second operation of the user, the second electronic device displays the third interface based on the first information of the first application and the second information of the second application.
[0054] In relation to the third aspect and the implementations described above, in some implementations of the third aspect, the first window is proximate to the right edge of the display area of the second electronic device.
[0055] In relation to the third aspect and the implementations described above, in some implementations of the third aspect, the second window is positioned to the left of the first window and does not overlap the first window.
[0056] In relation to the third aspect and the implementations described above, in some implementations of the third aspect, the second window is positioned on top of the first window.
[0057] In relation to the third aspect and the above-mentioned implementations, in some implementations of the third aspect, the position information of the first window includes coordinate information of a first vertex of the first window, length information of the first window, and width information of the first window, or the position information of the first window includes coordinate information of four vertices of the first window.
[0058] In relation to the third aspect and the above-described implementations, in some implementations of the third aspect, size information of the first window is determined by the first electronic device based on size information corresponding to a first interface. The size information corresponding to the first interface is size information of a display area of the first electronic device, or the size information corresponding to the first interface is a product of the size information of the display area of the first electronic device and a first multiple. The first multiple is greater than 0 and not equal to 1.
[0059] In relation to the third aspect and the above-described implementations, in some implementations of the third aspect, the size information of the first window is determined by the first electronic device based on size information corresponding to the first interface, where the size information corresponding to the first interface is size information that exists when the first interface is displayed on the first electronic device, or the size information corresponding to the first interface is size information obtained by the first electronic device from a network device and is size information that exists when the first interface is displayed on the second electronic device.
[0060] In relation to the third aspect and the implementations described above, in some implementations of the third aspect, the first window includes a first interface and a first menu bar, and / or the second window includes a second interface and a second menu bar.
[0061] In relation to the third aspect and the above-described implementations, in some implementations of the third aspect, the second menu bar includes a close key. After the second electronic device displays the second interface in the second window, the method further includes: when the second electronic device detects an operation performed by the user on the close key, the second electronic device closes the second window and sends an instruction to the first electronic device to close the second application.
[0062] In relation to the third aspect and the above-described implementations, in some implementations of the third aspect, after the second electronic device displays the second interface in the second window, the method further includes: if the second electronic device detects a user operation to select the first window, the second electronic device switches the first window to the top layer for display.
[0063] In relation to the third aspect and the above-described implementations, in some implementations of the third aspect, the second menu bar includes a maximize key. After the second electronic device displays the second interface in the second window, the method further includes: if the second electronic device detects an operation performed by the user on the maximize key, the second electronic device displays the second window in full screen.
[0064] In relation to the third aspect and the above-described implementations, in some implementations of the third aspect, after the second electronic device displays the second interface in the second window, the method further includes: if the second electronic device receives an instruction sent by the first electronic device to close the second window, the second electronic device closes the second window in response to the instruction to close the second window.
[0065] In relation to the third aspect and the above-mentioned implementations, in some implementations of the third aspect, when the first application is an audio playback application and the second application is also an audio playback application, the method further includes: the second electronic device receives audio data of the second application, the audio data being audio data sent by the first electronic device, and plays the audio data of the second application.
[0066] According to a fourth aspect, there is provided a multi-window display method applicable to a system including a first electronic device and a second electronic device communicating with each other, the method including: the first electronic device executing a first application and displaying a first interface of the first application; the first electronic device transmitting size information corresponding to the first interface and display content information of the first interface to the second electronic device; the second electronic device determining position information of the first window based on size information of the display area of the second electronic device and the size information corresponding to the first interface, and displaying the first interface within the first window based on the position information of the first window and the display content information of the first interface; when detecting the first operation, the second electronic device transmitting an instruction to the first electronic device to start the second application in response to the first operation; the first electronic device starting the second application based on the instruction to start the second application; and the first electronic device transmitting size information corresponding to the second interface of the second application and display content information of the second interface to the second electronic device. The second electronic device determines position information of a second window based on size information of a display area of the second electronic device and size information corresponding to the second interface, and displays the second interface in the second window based on the position information of the second window and display content information of the second interface, where the first window and the second window are different windows.
[0067] It should be understood that the following is described in the above aspects: the first electronic device sends position information of the first window and display content information of the first interface to the second electronic device, and the second electronic device displays the first window based on the instruction of the first electronic device; Optionally, the first electronic device may not obtain size information of the display area of the second electronic device, but only sends display content information of the first interface of the first electronic device; the second electronic device determines position information of the first window and displays the first window; Similarly, the display of the second window may also be determined by the second electronic device, and details will not be described again here.
[0068] In the above solution, the second electronic device may determine the display positions of the first window and the second window based on the application usage, interface content, etc. of the second electronic device, so as to better adapt to the usage process of the second electronic device, reduce the impact on the use of the second electronic device, and improve the user experience.
[0069] According to a fifth aspect, the present application provides an apparatus. The apparatus is included in an electronic device, and the apparatus has functionality for implementing the behavior of the electronic device in the above-mentioned aspects and possible implementations of the above-mentioned aspects. The functionality may be implemented by hardware or by corresponding software executed by the hardware. The hardware or software includes one or more modules or units corresponding to the functionality, such as a display module or unit, a detection module or unit, or a processing module or unit.
[0070] According to a sixth aspect, the present application provides an electronic device including a touchscreen. The touchscreen includes a touch-sensitive surface, a display, a camera, one or more processors, a memory, a plurality of application programs, and one or more computer programs. The one or more computer programs are stored in the memory, and the one or more computer programs include instructions. When the instructions are executed by the electronic device, the electronic device is capable of performing a multi-window display method in any possible implementation of any one of the aforementioned aspects.
[0071] According to a seventh aspect, the present application provides an electronic device including one or more processors and one or more memories. The one or more memories are coupled to the one or more processors. The one or more memories are configured to store computer program code. The computer program code includes computer instructions. Execution of the computer instructions by the one or more processors enables the electronic device to perform a multi-window display method in any possible implementation of any one of the aforementioned aspects.
[0072] According to an eighth aspect, there is provided a system, wherein the system includes a first electronic device and a second electronic device that perform a multi-window display method in any possible implementation of any one of the preceding aspects.
[0073] According to a ninth aspect, the present application provides a computer storage medium comprising computer instructions that, when executed on an electronic device, enable the electronic device to perform a multi-window display method in any possible implementation of any one of the preceding aspects.
[0074] According to a tenth aspect, the present application provides a computer program product, which, when executed on an electronic device, enables the electronic device to perform a multi-window display method in any possible implementation of any one of the aforementioned aspects. [Brief explanation of the drawings]
[0075] [Figure 1] 1 is a schematic structural diagram of a first electronic device according to an embodiment of the present application;
[0076] [Figure 2] FIG. 2 is a schematic structural diagram of a second electronic device according to an embodiment of the present application.
[0077] [Figure 3A] FIG. 2 is a software structural block diagram of a mobile phone and a PC according to an embodiment of the present application. [Figure 3B] FIG. 2 is a software structural block diagram of a mobile phone and a PC according to an embodiment of the present application.
[0078] [Figure 4] 1 is a schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application;
[0079] [Figure 5A] FIG. 10 is another schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application. [Figure 5B] FIG. 10 is another schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application. [Figure 5C] FIG. 10 is another schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application.
[0080] [Figure 6] FIG. 10 is another schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application.
[0081] [Figure 7] FIG. 10 is another schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application.
[0082] [Figure 8]1 is a schematic flowchart of a multi-window display method according to an embodiment of the present application;
[0083] [Figure 9A] 1 is a schematic diagram of creating a virtual area by a mobile phone according to an embodiment of the present application; [Figure 9B] 1 is a schematic diagram of creating a virtual area by a mobile phone according to an embodiment of the present application; [Figure 9C] 1 is a schematic diagram of creating a virtual area by a mobile phone according to an embodiment of the present application;
[0084] [Figure 10] 4 is another schematic flowchart of a multi-window display method according to an embodiment of the present application;
[0085] [Figure 11A] FIG. 10 is another schematic diagram of creating a virtual area by a mobile phone according to an embodiment of the present application; [Figure 11B] FIG. 10 is another schematic diagram of creating a virtual area by a mobile phone according to an embodiment of the present application; [Figure 11C] FIG. 10 is another schematic diagram of creating a virtual area by a mobile phone according to an embodiment of the present application;
[0086] [Figure 12] 4 is another schematic flowchart of a multi-window display method according to an embodiment of the present application;
[0087] [Figure 13] 4 is another schematic flowchart of a multi-window display method according to an embodiment of the present application; DETAILED DESCRIPTION OF THE INVENTION
[0088] The following describes the technical solutions in the embodiments of the present application in connection with the accompanying drawings in the embodiments of the present application.
[0089] In the description of the embodiments of the present application, " / " means "or" unless otherwise specified. For example, A / B may represent A or B. In this specification, "and / or" only describes an association relationship to describe associated objects, and represents that three relationships may exist. For example, A and / or B may represent the following three cases: only A exists, both A and B exist, and only B exists. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.
[0090] In the following description, the terms "first" and "second" are used only for distinction, e.g., "first electronic device" and "second electronic device" are used only to indicate different electronic devices, "first window" and "second window" are used only to indicate different display windows, and "first operation" and "second operation" are used only to indicate operations performed at different moments or for different purposes.
[0091] An embodiment of the present application provides a multi-window display method, which may be applied to a system including two electronic devices communicating with each other. In this application, to distinguish between the two electronic devices, the two electronic devices are referred to as a first electronic device and a second electronic device, respectively, and the second electronic device may display the interface of the first electronic device. For example, the second electronic device may display the main interface of the first electronic device by using one window, or the second electronic device may display the interfaces of multiple applications of the first electronic device by using multiple windows.
[0092] It should be understood that the method can display multiple windows of a first electronic device on a second electronic device by using an application program. For example, the application program may be installed only on the second electronic device. Alternatively, the application program may be installed on both the first electronic device and the second electronic device. Alternatively, the application program may be embodied as a first application program on the first electronic device and a second application program on the second electronic device. The first application program may be applicable to the first electronic device, and the second application program may be applicable to the second electronic device. Alternatively, the first application program may be program code pre-installed on the first electronic device and may not have a corresponding desktop application icon. The second application program may be embodied in multiple possible forms, such as desktop application icons, on the second electronic device, such that the second electronic device can display the main interface of the first electronic device using one window or the interfaces of multiple applications of the first electronic device using multiple windows.
[0093] In an embodiment of the present application, the first electronic device may be an electronic device such as a mobile phone, a smart terminal, or a wearable device. The second electronic device may be an electronic device with a display function, such as a PC, a tablet computer, a mobile phone, a smart terminal, an in-vehicle device, an augmented reality (AR) / virtual reality (VR) device, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), a display, or a television. In an embodiment of the present application, no limitation is imposed on the specific types of the first electronic device and the second electronic device.
[0094] Optionally, the first electronic device and the second electronic device may be the same type or different types of electronic devices. In the embodiment of the present application, in the example used for explanation, a mobile phone is used as the first electronic device, a PC is used as the second electronic device, and multiple windows of the mobile phone are displayed on the PC.
[0095] 1 is a schematic structural diagram of a mobile phone 100 according to an embodiment of the present application. The mobile phone 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 telephone receiver 170B, a microphone 170C, a headset jack 170D, a sensor module 180, keys 190, a motor 191, an indicator 192, a camera 193, a display screen 194, a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyro sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, an optical 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, and the like.
[0096] It will be understood that the structure depicted in this embodiment of the present application does not constitute a specific limitation on the mobile phone 100. In some other embodiments of the present application, the mobile phone 100 may include more or fewer components than those depicted in the figures, may combine some components, may separate some components, or may have a different component arrangement. The components depicted in the figures may be implemented by hardware, software, or a combination of software and hardware.
[0097] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The various processing units may be independent components or may be integrated into one or more processors. The controller may be the central and command center of the mobile phone 100. The controller may generate operation control signals based on instruction operation codes and timing signals, and may retrieve instructions and control their execution.
[0098] A memory may also be located within processor 110 and configured to store instructions and data. In some embodiments, the memory within processor 110 is a cache memory. The memory may store instructions or data that have been recently used or periodically used by processor 110. When processor 110 needs to use the instructions or data again, processor 110 may retrieve the instructions or data directly from memory, avoiding repeated accesses and reducing the latency of processor 110, thereby improving system efficiency.
[0099] In some embodiments, processor 110 may include one or more interfaces, which may 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, a universal serial bus (USB) interface, and / or the like.
[0100] The I2C interface is a bidirectional synchronous serial bus and includes a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple groups of I2C buses. The processor 110 may be coupled to the touch sensor 180K, a charger, a flashlight, the camera 193, etc., by using different I2C bus interfaces. For example, the processor 110 may be coupled to the touch sensor 180K by using the I2C interface, such that the processor 110 communicates with the touch sensor 180K by using the I2C bus interface to implement the touch function of the mobile phone 100.
[0101] The I2S interface may be used for audio communication. The PCM interface may also be used for audio communication and samples, quantizes, and encodes analog signals. The UART interface is a universal serial data bus used for asynchronous communication. The bus may be a bidirectional communication bus. The bus converts data to be transmitted between serial and parallel communication. The MIPI interface may be configured to connect the processor 110 to peripheral components such as the display screen 194 and the camera 193. MIPI interfaces include a camera serial interface (CSI), a display serial interface (DSI), etc. The GPIO interface may be configured using software. The GPIO interface may be configured as a control signal or a data signal. The USB interface 130 is an interface compliant with the USB standard specification and may be, for example, a mini USB interface, a micro USB interface, a USB Type-C interface, etc. The USB interface 130 may be configured to connect to another electronic device; for example, the USB interface may be used to connect to a PC.
[0102] It will be understood that the interfacing relationships between modules illustrated in this embodiment of the present application are merely illustrative examples and do not constitute limitations on the structure of the mobile phone 100. In some other embodiments of the present application, the mobile phone 100 may alternatively use different interfacing methods than those in the above-described embodiment, or may use a combination of interfacing methods.
[0103] The charging management module 140 is configured to receive a charging input from a charger.
[0104] The wireless communication function of the mobile phone 100 may be implemented by using an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, a modem processor, a baseband processor, etc. The antenna 1 and the antenna 2 are configured to transmit and receive electromagnetic wave signals. The mobile communication module 150 can provide solutions for wireless communication applied to the mobile phone 100, including 2G / 3G / 4G / 5G, etc. The wireless communication module 160 can provide solutions for wireless communication applied to the mobile phone 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. The wireless communication module 160 may be one or more components integrating at least one communication processor module. The wireless communication module 160 receives electromagnetic waves by using the antenna 2, performs frequency modulation and filtering processes on the electromagnetic wave signals, and transmits the processed signals to the processor 110. The wireless communication module 160 may further receive signals transmitted from the processor 110, perform frequency modulation on the signals, amplify the signals, and convert the signals into electromagnetic waves for emission by using the antenna 2.
[0105] The mobile phone 100 implements display functions by using a GPU, a display screen 194, an application processor, etc. The GPU is a microprocessor for image processing and is connected to the display screen 194 and the application processor. The GPU is configured to perform mathematical and geometric calculations and to render images. The processor 110 may include one or more GPUs that execute program instructions to generate or modify display information.
[0106] The display screen 194 is configured to display images, videos, etc. The display screen 194 includes a display panel. The display panel may use a liquid crystal display (LCD), an organic light-emitting diode (OLED), a passive-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a mini-LED, a micro-LED, a micro-OLED, quantum dot light-emitting diodes (QLED), etc. In some embodiments, the mobile phone 100 may include one or N display screens 194, where N is a positive integer greater than 1.
[0107] The mobile phone 100 can implement a photography function by using an ISP, a camera 193, a video codec, a GPU, a display screen 194, an application processor, etc. The ISP is configured to process data fed back by the camera 193. The camera 193 is configured to capture still images or video. An optical image of an object is generated using a lens and projected onto a photosensitive element. In some embodiments, the mobile phone 100 may include one or N cameras 193, where N is a positive integer greater than 1.
[0108] The external memory interface 120 may be configured to connect to an external storage card, such as a microSD card, to expand the storage capacity of the mobile phone 100. The internal memory 121 may be configured to store computer-executable program code, which includes instructions. The processor 110 executes the instructions stored in the internal memory 121 to execute various functional applications of the mobile phone 100 and process data. The internal memory 121 may include a program storage area and a data storage area. The program storage area may store an operating system, application programs required by at least one function (such as a sound playback function and an image display function), etc. The data storage area may store data created in the process of using the mobile phone 100 (such as audio data and an address book), etc.
[0109] The mobile phone 100 can implement audio functions such as music playback and recording by using an audio module 170, a speaker 170A, a telephone receiver 170B, a microphone 170C, a headset jack 170D, an application processor, and the like.
[0110] In addition, the mobile phone 100 further includes multiple sensors, such as the multiple sensors shown in FIG. 1. The pressure sensor 180A may be configured to sense pressure signals and convert them into electrical signals. The gyro sensor 180B may be configured to determine the movement posture of the mobile phone 100. The air pressure sensor 180C may be configured to measure air pressure. The magnetic sensor 180D includes a Hall sensor. The acceleration sensor 180E may detect acceleration values in each direction (generally, three axes) of the mobile phone 100. When the mobile phone 100 is stationary, the acceleration sensor 180E may detect the value and direction of gravity and may be further configured to recognize the orientation of the mobile phone 100, for applications such as switching between landscape and portrait orientations and as a pedometer. The distance sensor 180F is configured to measure distance. The optical proximity sensor 180G may include an optical detector, such as a light-emitting diode (LED) and a photodiode. The ambient light sensor 180L is configured to sense the brightness of ambient light. The fingerprint sensor 180H is configured to collect fingerprints. The temperature sensor 180J is configured to detect temperature. The touch sensor 180K is also referred to as a "touch panel." The touch sensor 180K may be disposed within the display screen 194, and the touch sensor 180K and the display screen 194 constitute a touch screen, also referred to as a "touch screen." The touch sensor 180K is configured to detect touch operations on or near the touch sensor 180K. The touch sensor may forward the detected touch operations to an application processor to determine the type of touch event. A visual output related to the touch operation may be provided using the display screen 194. In some other embodiments, the touch sensor 180K may be disposed on the surface of the mobile phone 100 at a position different from that within the display screen 194. The bone conduction sensor 180M may acquire vibration signals. The keys 190 include a power key, a volume key, etc. The keys 190 may be mechanical keys or touch keys. The mobile phone 100 may receive key inputs and generate key signal inputs related to user settings and function control of the mobile phone 100 .Motor 191 may generate vibration prompts. Indicator 192 may be an indicator light that may be configured to indicate charging status and power changes, or may be configured to indicate messages, missed calls, notifications, etc. SIM card interface 195 is configured to connect to a SIM card.
[0111] The above describes a possible schematic structural diagram of hardware when the mobile phone 100 is used as the first electronic device. For example, Figure 2 is a schematic structural diagram of a PC 200 according to an embodiment of the present application. As a second electronic device, the PC 200 may include a processor 210, a memory 220, a communication module 230, a display screen 240, etc.
[0112] It will be understood that the structure of PC 200 shown in this embodiment of the present application does not constitute a specific limitation on PC 200. In some other embodiments of the present application, PC 200 may include more or fewer components than those shown in the figures, may combine some components, may separate some components, or may have a different component arrangement. The components shown in the figures may be implemented by hardware, software, or a combination of software and hardware.
[0113] The processor 210 may include one or more processing units and may be configured to control and manage the operation of the PC 200. The memory 220 is configured to store program code and data. The communication module 230 may be used for communication between internal modules of the PC 200, communication between the PC 200 and another external device, etc. For example, if the PC 200 communicates with another electronic device via a wired connection, the communication module 230 may include an interface such as a USB interface. For details about the USB interface, see the description of the USB interface 130 in FIG. 1. Alternatively, the communication module 230 may include audio components, radio frequency circuits, a Bluetooth chip, a wireless fidelity (Wi-Fi) chip, a near-field communication (NFC) module, etc., and may implement interaction between the PC 200 and another electronic device. The display screen 240 is configured to display images, videos, etc. Optionally, the PC 200 may further include peripheral devices 250 such as a mouse, a keyboard, a speaker and a microphone.
[0114] In this embodiment of the present application, the processor 210 may execute computer-executable instructions stored in the memory 220, such that the PC 200 and the mobile phone 100 can form a system including electronic devices that communicate with each other, thereby displaying multiple windows of the mobile phone 100 by using the display screen 240 of the PC 200.
[0115] 3A and 3B are block diagrams of the software architecture of the mobile phone 100 and the PC 200 according to an embodiment of the present application. The block diagrams include the software architecture of the mobile phone 100 and the software architecture of the mobile phone window display module of the PC 200.
[0116] The software structure of the mobile phone 100 may use a layered architecture, an event-driven architecture, a microkernel architecture, a microservices architecture, or a cloud architecture. In this embodiment of the present application, the Android® system, which has a layered architecture, is used as an example to describe the software structure of the mobile phone 100. The Android system is used as an example of the software structure of the mobile phone 100. In a layered structure, software is divided into several layers, each with a clear role and task. The layers communicate with each other using software interfaces. In some embodiments, the Android system includes, from top to bottom, an application program (APP) layer, an application program framework (framework) layer, a system library, and a kernel layer. The application program layer may include a series of application program packages. For example, in the mobile phone 100 shown in FIG. 3A, the application program layer may include application programs such as messaging, music, video, and navigation. This is not limited to this embodiment of the present application.
[0117] The application program framework layer may include multiple service programs or some predefined functions, and provides an application programming interface (API) and a programming framework for the application programs in the application program layer.
[0118] In this embodiment of the present application, as shown in FIG. 3A, the application program framework layer may include a link discovery service Android package (APK), a multiscreen framework service APK, and a multicast source discovery protocol (MSDP) service APK.
[0119] The link discovery service APK is used to discover and connect to the PC 200. The link discovery service APK may include a software development kit (SDK) that implements functions. The SDK may provide several application programming interface (API) files for a program design language or may implement communication between hardware modules. For example, the MSDP-SDK shown in FIG. 3A may provide an interface for the MSDP service to notify the data transmission path to implement the process of transmitting video streams for the MSDP service.
[0120] In this embodiment of the present application, the mobile phone 100 and the PC 200 may communicate with each other in several different ways, for example, by using a connection method or a future communication technology to transmit data. The connection between the mobile phone 100 and the PC 200 may include several different connection methods, such as a wired connection method or a wireless connection method. For example, a wired connection between the mobile phone 100 and the PC 200 may be established by using a USB data cable. The wireless connection between the mobile phone 100 and the PC 200 may be a Wi-Fi connection, a short-range connection established by using a "one-hop" function and a near field communication (NFC) function supported by the mobile phone 100 and the PC 200, a connection established by the mobile phone 100 and the PC 200 through Bluetooth code scanning, etc. Data may be transmitted by using a future communication technology such as a 5G communication network by installing different applications or the same application on the mobile phone 100 and the PC 200. In this embodiment of the present application, an example in which an NFC connection is established between the mobile phone 100 and the PC 200 is used for detailed description. The connection method between the mobile phone 100 and the PC 200 is not limited in this embodiment of the present application.
[0121] A connection is established between the mobile phone 100 and the PC 200, for example, through NFC. The mobile phone 100 has an NFC function and first enables the NFC function of the mobile phone 100. The mobile phone 100 may use a link discovery service APK to scan and discover other devices that have enabled the NFC function within a certain range. If the PC 200 also enables the NFC function, when the mobile phone 100 approaches the PC 200, the link discovery service APK of the mobile phone 100 may send a connection request to the NFC function module of the PC 200. The NFC function module of the PC 200 accepts the connection request and establishes a path with the mobile phone 100, thereby completing the process of establishing a connection between the mobile phone 100 and the PC 200. It should be understood that providing an electronic device with NFC functionality may be implemented by using an NFC chip included in the electronic device, or by pre-installing an application program related to the NFC function in the electronic device, so that an NFC device may be externally connected to the electronic device to implement the NFC function. This is not limited to this embodiment of the present application.
[0122] In a possible implementation, with the development of communication technology, communication bandwidth and communication speed will gradually increase, and data may be transmitted between the mobile phone 100 and the PC 200 without establishing a near-field communication connection. For example, with the spread of high-speed communication methods such as future 5th generation (5G) mobile communication systems, a window of the mobile phone 100 may be displayed on the PC 200 through 5G communication. For example, data may be transmitted using a 5G communication network by installing different applications or the same application on the mobile phone 100 and the PC 200. In this implementation, the link discovery service APK of the mobile phone 100 may not provide functions such as discovering the PC 200 and establishing a connection to the PC 200. It should be understood that the communication method between the mobile phone 100 and the PC 200 is not limited to this embodiment of the present application. In the following embodiment, an example in which an NFC connection is established between the mobile phone 100 and the PC 200 will be used for detailed explanation.
[0123] After the mobile phone 100 establishes a connection to the PC 200, a multi-window manager in the multi-screen frame service APK is used to manage the window programs of the mobile phone 100. For example, the multi-window manager may obtain the size of the window to be displayed on the mobile phone 100 and determine the content of the window to be displayed. It should be understood that the windows to be displayed on the mobile phone 100 may include windows displayed within the interface of the mobile phone 100 and may further include windows of one or more application programs running in the background of the mobile phone 100. A message notification manager may enable application programs to display notification information in the status bar of the mobile phone 100 and may be used to convey notification-type messages. Messages displayed in the status bar may automatically disappear after a short stay without user interaction. Messages displayed in the status bar may be used to notify the user that a download has completed or to prompt for other message content. The message notification manager may further provide notifications in the form of charts or scroll bar text in a status bar at the top of the system, for example notifications of application programs running in the background, and may further provide notifications in the form of dialog windows on the screen of the mobile phone 100. The message notification manager may further provide different types of notifications, such as alert tones, vibrations of the mobile phone 100, and flashing indicator lights.
[0124] The MSDP service APK is used to transmit data after a connection (e.g., an NFC connection) between the mobile phone 100 and the PC 200 is established, for example, to transmit a video stream between the mobile phone 100 and the PC 200. The MSDP service APK may implement functions such as video stream encoding, audio stream encoding, window coordinate synchronization, audio device virtualization, and reverse control.
[0125] For example, video stream encoding may implement the encapsulation of video data to be transmitted into packets conforming to a data transmission protocol between the mobile phone 100 and the PC 200. The video stream packets may include information such as the type of transmission medium, format, sequence number, and timestamp, as well as whether additional data is present, to transmit a video stream in real time. Similarly, audio stream encoding may implement the encapsulation of audio data to be transmitted into packets conforming to a data transmission protocol between the mobile phone 100 and the PC 200 to transmit an audio stream in real time. Window coordinate synchronization may be used to determine the coordinates of a window to be displayed on the mobile phone 100 on the display screen of the PC 200. Audio device virtualization may be used to create virtual audio for the audio in the mobile phone 100 and then send the virtual audio to the PC 200 to play the audio on the PC 200. Reverse control may be used to synchronously perform corresponding operations on the mobile phone 100 and the PC 200 based on operation commands transmitted between the mobile phone 100 and the PC 200. For example, the PC 200 displays a playback window of a video application on the mobile phone 100. When a user pauses playback on the PC 200, the pause operation may be transferred back to the mobile phone 100, and the reverse control module of the mobile phone 100 also controls the mobile phone 100 to pause playback. Correspondingly, the reverse control may also be used to transfer the operation on the mobile phone 100 to the PC 200. It should be understood that for different systems, different communication methods exist between the mobile phone 100 and the PC 200. Some or all of the above-mentioned software modules may participate in the multi-window display process of the PC 200 in this embodiment of the present application.
[0126] In conclusion, the application program framework layer may implement functions such as link discovery and MSDP services invoked between the PC 200 and the mobile phone 100. In addition, the multi-screen framework service in the application program framework layer may further implement functions such as file dragging and sharing between the PC 200 and the mobile phone 100, display in single window mode, and coordinated application lifecycle management. For file dragging and sharing between the PC 200 and the mobile phone 100 and displaying one window on the mobile phone 100 by the PC 200, please refer to existing solutions. Details will not be described here. Coordinated application lifecycle management is a software tool used to configure and manage application programs and specifies the lifecycle of an application program.
[0127] The system library may include multiple functional modules, such as a surface manager, media libraries, a 3D graphics processing library (e.g., OpenGL ES), and a 2D graphics engine (e.g., SGL). The surface manager is used to manage the display subsystem of the mobile phone 100 and provide merging of 2D and 3D layers for multiple application programs. The media library supports playback and recording of multiple commonly used audio and video formats, as well as still image files. The media library may support multiple audio and video encoding formats, such as MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG. The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, layer processing, etc. The 2D graphics engine is a drawing engine for 2D graphics.
[0128] The Android runtime, which includes the kernel library and virtual machine, is responsible for scheduling and managing the Android system.
[0129] The kernel layer is a layer between hardware and software. The kernel layer includes at least a display driver, an audio driver, etc. In this embodiment of the present application, when a wireless connection exists between the mobile phone 100 and the PC 200, the kernel layer of the mobile phone 100 may include a wireless fidelity (WIFI) module configured to establish the wireless connection. When an NFC connection exists between the mobile phone 100 and the PC 200, the kernel layer may further include a near-field communication (NFC) module configured to implement the connection between the mobile phone 100 and the PC 200 through NFC. When data is transmitted between the mobile phone 100 and the PC 200 by using a communication network such as 5G, the kernel layer may not include a Wi-Fi module, an NFC module, etc., or may include a Wi-Fi module, an NFC module, etc. that do not participate in the multi-window display process of the PC 200 in this embodiment of the present application.
[0130] It should be understood that in addition to the multiple tiers and multiple functional modules contained within the tiers shown in Figure 3A, the mobile phone 100 may have a different division method or may include more functional modules, which is not limited in this embodiment of the present application.
[0131] FIG. 3B further illustrates the mobile phone window display module of the PC 200. After the PC 200 is connected to the mobile phone 100, the mobile phone window display module is configured to display the interface content of the mobile phone 100. It should be understood that the PC 200 may include a multi-layer architecture, such as a pre-research layer, a PC software layer, an operating system (OS) layer, and a basic read-only memory (ROM) multi-screen frame layer. An executable file (exe) may be executed in the PC software layer. For example, in this application, an exe program used to display the mobile phone window may be pre-installed in the PC 200. The exe program for displaying the mobile phone window may be implemented in the form of an app on the PC 200, or the exe program for displaying the mobile phone window may be executed, so that the PC 200 has the function of displaying the mobile phone 100 window. In this application, the functional module provided by the PC 200 for displaying the mobile phone 100 window is referred to as the "mobile phone window display module." The following will focus on the mobile phone window display module of the PC 200 that is configured to display the window of the mobile phone 100 .
[0132] The mobile phone window display module of the PC 200 may provide functions corresponding to related services in the application program framework layer of the mobile phone 100, such as a multi-screen framework service and an MSDP service. The MSDP service APK corresponds to the MSDP service of the mobile phone 100 and is used to transmit data after the PC 200 establishes a connection to the mobile phone 100. The MSDP service of the PC 200 may implement functions such as video stream decoding, audio stream decoding, window coordinate synchronization, audio device virtualization, and reverse control.
[0133] For example, in this application, the MSDP service APK of the PC 200 may receive a video stream transmitted by the mobile phone 100 and decode the video stream. Video stream decoding may be used to decapsulate the encapsulated packets received by the PC 200 and obtain the complete video data obtained through decoding. Audio stream decoding may be used to decapsulate the packets received by the PC 200 and obtain the audio data. Window coordinate synchronization may be used to determine the coordinates and area on the display screen of the PC 200 and used to display the mobile phone window based on the information contained in the video stream. Audio device virtualization may be used to play virtual audio on the PC 200 by using the audio device of the PC 200 based on the received virtual audio transmitted by the mobile phone 100. Reverse control may be used to synchronously perform corresponding operations on the mobile phone 100 and the PC 200 based on operation commands transmitted between the mobile phone 100 and the PC 200. For example, the PC 200 displays the playback window of the video application of the mobile phone 100. When a user pauses playback on the mobile phone 100, the pause operation may be transferred to the PC 200, and the reverse control module of the PC 200 obtains an instruction to also control the PC 200 to pause playback. Correspondingly, the reverse control may also be used to transfer an operation on the PC 200 to the mobile phone 100.
[0134] The MSDP service APK acquires and analyzes video frames and transfers information about the mobile phone window contained in the video frames to the multi-screen frame service APK. The information about the mobile phone window may include coordinate information of the mobile phone window, display content information of the mobile phone window, etc. The multi-screen frame service APK may include a multi-window manager, a message notification manager, a mobile phone window display, an application lifecycle manager, etc. The multi-window manager may determine to display one or more windows of the mobile phone 100 on the display screen of the PC 200 based on the coordinate information of the mobile phone window. The mobile phone window display performs display on the display screen of the PC 200 based on the display content information of the mobile phone window, and the mobile phone window display may be used to display one or more windows of the mobile phone 100. The message notification manager may be used to display notification information on the PC 200, for example, by displaying the notification information in a message pop-up window, an alert tone, etc. The application lifecycle manager provides an interface for application program developers to conveniently access application program information, starts application programs by calling a single application programming interface (API), and handles various runtime states of each running application program. The application lifecycle manager also maintains a program list of application programs installed on the system and updates the list whenever the monitored application programs change.
[0135] It should be understood that a data transmission process may be performed after a link is established between the PC 200 and the mobile phone 100. The transmitted data may include the above-mentioned video stream data, and may further include the transmission of intention-type instructions, for example, operation instructions such as "touch events" (e.g., instructions for events such as starting, closing, moving, or scaling an application). The transmitted data may further include a parsable data format defined between the PC 200 and the mobile phone 100, etc. This is not limited in this embodiment of the present application.
[0136] 3A and 3B, it should be understood that the modules and software architecture participating in the multi-window display process are described using an example in which multiple windows of the mobile phone 100 are displayed on the PC 200. In addition, the mobile phone 100 may be used as a second electronic device, and the MSDP service APK of the mobile phone 100 may provide a video stream decoding function. Alternatively, the PC 200 may be used as a first electronic device, and the MSDP service APK of the PC 200 may provide a video stream encoding function. This is not limited to this embodiment of the present application.
[0137] In the existing process of displaying a mobile phone window, as described in the background art, screen content and data are easily shared between a PC and a mobile phone by using screen sharing software. In addition, in another solution, a mobile phone may be connected to a large-screen device, such as a PC, a display, or a television, by using a data cable, so that the large-screen device can easily access the mobile phone. A user may use two screens to process multiple tasks simultaneously. For example, a user may view content such as videos, images, and documents on a larger display screen, while continuing to use the mobile phone to send / receive SMS messages, answer phone calls, etc. In the method of displaying a mobile phone interface, the mobile phone interface must be projected onto the large-screen device by using a data cable connection. In addition, this method does not allow system integration between the mobile phone and the PC, and applications installed on the mobile phone cannot be invoked from the PC's system menu.
[0138] For ease of understanding, in the following embodiments, a mobile phone 100 having the hardware structure shown in Fig. 1 and the software architecture shown in Fig. 3A and a PC 200 having the software structure shown in Fig. 2 and Fig. 3B are used as examples to describe the multi-window display method provided in the embodiments of the present application. The following will specifically describe the multi-window display method in relation to the accompanying drawings and application scenarios.
[0139] 4 is a schematic diagram of a mobile phone interface displayed by a PC according to an embodiment of the present application. As shown in (a) of FIG. 4, after the mobile phone is connected to the PC, the mobile phone window of the PC 200 may display the same interface as the mobile phone 100.
[0140] It should be understood that in this embodiment of the present application, data can be transmitted between the mobile phone 100 and the PC 200 using the above-mentioned communication methods, and the details will not be described again here. Fig. 4(a) shows a home screen 401 of the unlocked mobile phone 100. Multiple application programs (applications, Apps), such as albums, settings, videos, and music, are displayed on the home screen 401. It should be understood that the home screen 401 may further include more other application programs, which is not limited in this embodiment of the present application.
[0141] 4A further illustrates a main interface 402 of the PC 200, which includes multiple apps (such as My Computer and Recycle Bin) of the PC 200 and a mobile phone window 10. The mobile phone window 10 may be used to display interface content of the mobile phone 100. In addition, the mobile phone window 10 may further include a gray menu bar 11, as shown in the figure. The gray menu bar 11 may include a hide to sidebar key 11-1, a hide to menu bar key 11-2, a maximize window key 11-3, and a close window key 11-4. Optionally, the hide to sidebar key 11-1 may be used to hide the mobile phone window 10 in the right frame of the display screen of the PC 200, and the hide to menu bar key 11-2 may be used to hide the mobile phone window 10 in the menu area 12.
[0142] It should be understood that the gray menu bar 11 may include some or all of the keys listed above and may further include more function keys. This is not limited to this embodiment of the present application. It should be further understood that the window maximize key 11-3 may be displayed in different formats based on a user's operation, thereby changing its function. For example, when the mobile phone window 10 is displayed as a small window, the user taps / clicks the window maximize key 11-3, and the mobile phone window 10 is maximized in response to the user's tap / click operation. In this case, the maximize key 11-3 may be changed to a window minimize key, such as the window minimize key 11-5 shown in FIG. 7(b). The user may tap / click the minimize key 11-5, and the mobile phone window 10 is reduced in response to the user's tap / click operation and displayed as the original small window.
[0143] In this embodiment of the present application, the area including the gray menu bar 11 may be collectively referred to as the "mobile phone window 10." In Fig. 4, the main interface 402 may further include a menu area 12. The menu area 12 may include a start menu 13, a file management shortcut menu, a browser, an input method control menu, a date and time setting menu, and power management for the PC 200. This is not limited in this embodiment of the present application.
[0144] After a connection between the mobile phone 100 and the PC 200 is established, the interface currently displayed on the mobile phone 100 may be displayed in the mobile phone window 10 of the PC 200. As shown in FIG. 4(a), a user taps a music application on the home screen 401 of the mobile phone. The interface of the mobile phone 100 and the PC 200 may be shown in FIG. 4(b). The interface 401 of the mobile phone 100 displays the interface of the music application, and the mobile phone window 10 of the PC 200 also displays the interface of the music application, so the display content in the interface 401 of the mobile phone 100 and the display content in the mobile phone window 10 of the PC 200 are consistent. Details will not be described here.
[0145] It should be understood that the mobile phone window 10 is displayed on the PC 200 in the following manner: after the connection between the mobile phone 100 and the PC 200 is established, the mobile phone window 10 may be automatically popped up and displayed in the main interface 402 of the PC; or the mobile phone window 10 may be displayed in the main interface 402 of the PC after a user operation. The trigger and display method of the mobile phone window 10 are not limited in this embodiment of the present application.
[0146] 5A, 5B, and 5C are another schematic diagrams of displaying a mobile phone interface by a PC according to an embodiment of the present application. In a possible implementation, after a connection between the mobile phone 100 and the PC 200 is established, a user may perform an operation on the PC 200, and the mobile phone window 10 is displayed in the main interface 502 of the PC in response to the user's operation.
[0147] For example, as shown in FIG. 5A , after a connection between the mobile phone 100 and the PC 200 is established, the user may tap / click the Start menu 13 on the PC 200, and in response to the user's tap / click operation, a menu window 20 is displayed in the main interface 502 of the PC 200. The menu window 20 includes a list of multiple applications of the PC, such as Word, PowerPoint, Drawing, Calculator, or other office software, or another application, such as a browser. In addition, if a related application used to display multiple windows of the mobile phone 100 is installed on the PC 200, the menu window 20 may further include a shortcut to the application. For example, the application may be "EMUJI desktop," and the menu window 20 may include an icon for the EMUJI desktop.
[0148] It should be understood that the related applications used to display multiple windows on the mobile phone 100 may be downloaded from an application store and installed on the PC 200. Details about the method and process for installing the applications will not be described in this embodiment of the present application.
[0149] As shown in Figure 5B, the user may tap / click on the EMUJI desktop menu bar in the menu window 20, and in response to the user's tap / click operation, a mobile phone application window 30 may be displayed in the main interface 502 of the PC 200, and all applications of the mobile phone 100 may be displayed in the mobile phone application window 30. Optionally, in Figure 5C, the mobile phone application window 30 may be shown, and the application programs of the mobile phone 100 may be displayed in a window of the EMUJI desktop. Alternatively, the mobile phone application window 30 may be displayed as the mobile phone window 10, and the application list of the mobile phone 100 may be displayed in the mobile phone window 10. This is not limited to this embodiment of the present application.
[0150] It should be understood that after the mobile phone 100 establishes a connection to the PC 200, the mobile phone 100 may send information about all installed applications to the PC 200. Alternatively, by tapping / clicking on the EMUJI desktop menu in the menu window 20, the user may trigger the PC 200 to send an application acquisition request to the mobile phone 100, requesting that application information of the mobile phone 100 be acquired.
[0151] In this specification, the application information may include information such as the names, identifications (IDs), and icons of all applications in the application program layer. After receiving the application information, the PC 200 displays each application in the mobile phone application window 30 based on the application's name, ID, and icon, and displays all applications of the mobile phone 100. The display may be shown in FIG. 5C. It should be further understood that the application identifier may be a package name, where the package name includes a string, and the PC 200 may determine the music application based on the package name.
[0152] Optionally, as shown in FIG. 5A, after the user taps / clicks on the EMUJI desktop menu bar, a mobile phone window 10 pops up, and the mobile phone window 10 matches the interface 501 of the mobile phone 100 in terms of appearance.
[0153] Alternatively, if possible, as shown in Figure 5C, after the user taps / clicks on the EMUJI desktop menu bar, the EMUJI desktop window 30 may pop up within the main interface 502 of the PC 200. All application programs installed on the mobile phone may be displayed within the EMUJI desktop window 30, and the user may tap / click on any application program within the EMUJI desktop window 30.
[0154] It should be understood that in this embodiment of the present application, the interface of the mobile phone 100 can be displayed within the interface of the PC 200 by using the mobile phone window 10 shown in Figures 5A, 5B, and 5C, or by using the operation method described in Figures 5A, 5B, and 5C: by launching an application (e.g., EMUJI Desktop) from the Start menu 13 of the PC 200, and then using that application to display the mobile phone window 10 or the EMUJI Desktop window 30, which contains all application programs of the mobile phone 100. This is not limited to this embodiment of the present application.
[0155] In this embodiment of the present application, the interface of the mobile phone 100 may be displayed within the interface of the PC 200 based on the user's request. When the user runs multiple applications on the mobile phone 100, multiple windows corresponding to different applications may be displayed on the main interface 402 of the PC 200.
[0156] 5A, 5B, and 5C are another schematic diagrams of displaying a mobile phone interface by a PC according to an embodiment of the present application. It should be understood that a user may start an application by tapping on the mobile phone or by tapping / clicking in the mobile phone window 10 on the PC. This is not limited to this embodiment of the present application.
[0157] It should be further understood that the "tap / click operation" performed by a user and described in this embodiment of the present application may be different operations for different devices. For example, in a mobile phone, a user may execute a music application by performing a touch and tap operation. In a PC, a user may execute a music application by performing a click or double-click operation by using a peripheral input device such as a mouse or a keyboard. Alternatively, if the PC is a device with a touch screen, a user may execute the music application through touch and tap. This is not limited in this embodiment of the present application.
[0158] After the connection between the mobile phone 100 and the PC 200 is established, the user may tap the music application on the home screen 401 of the mobile phone 100. In response to the user's tap operation, a window 40 of the music application may automatically pop up on the PC 200, as shown in (a) of FIG.
[0159] Optionally, a music application window 40 may be used to display the main interface of the music application.
[0160] Alternatively, the user may tap / click on the music application 14 in the mobile phone window 10 of the PC 200, and in response to the user's tap / click operation, the music application window 40 may automatically pop up in the main interface 402 of the PC 200. This is not limited to this embodiment of the present application.
[0161] In a possible implementation, when a user taps / clicks to run a music application 14 within the mobile phone window 10 of the PC 200, the music application window 40 may pop up directly within the mobile phone window 10 of the PC 200 in response to the user's tap / click operation, and the original mobile phone window 10 may remain as the home screen of the mobile phone 100.
[0162] It should be understood that when a user taps / clicks to operate the music application in the mobile phone window 10 of the PC 200, the display content in the interface of the mobile phone 100 is not limited to this embodiment of the present application. For example, the mobile phone 100 may be in a screen-off state, or may display an unlocked home screen, or may be consistent with the display content in the mobile phone window 10 of the PC 200.
[0163] In another possible implementation, when a user taps to run the music application on the home screen 401 of the mobile phone 100, or when the user may tap / click the music application 14 in the mobile phone window 10 of the PC 200, in response to the user's tap / click operation, the main interface of the music application may directly pop up and be displayed in the mobile phone window 10 of the PC 200. As shown in (b) of Figure 6, the user may select and drag the main interface of the music application, resulting in the music application window 40 reappearing on the PC 200.
[0164] For example, in the operation shown in Fig. 6(b), after the main interface of the music application is displayed within the mobile phone window 10, the user may tap / click to select any position within the mobile phone window 10, and then drag the mobile phone window 10 in the direction shown by the dashed line to any area outside the mobile phone window 10. Thus, in Fig. 6(a), the interface of the PC 200 is shown, i.e., the music application window 40 is displayed independently, and the mobile phone home screen 401 continues to be displayed within the mobile phone window 10.
[0165] 7 is another schematic diagram of displaying a mobile phone interface by a PC according to an embodiment of the present application. When a user runs multiple applications, for each application, a corresponding window may be displayed on the PC 200.
[0166] As shown in (a) of FIG. 7 , a user is running a music application on PC 200, and window 40 of the music application is displayed within main interface 402 of PC 200. For example, after a user taps and runs the music application on mobile phone 100, the mobile phone may return to home screen 401 of mobile phone 100, and the music application may run in the background of mobile phone 100. In this case, the user may further tap any other application on home screen 401 of mobile phone 100. Optionally, for example, the user may tap video application 15 on home screen 401 of mobile phone 100, and in response to the user's tap operation, window 50 of the video application may further automatically pop up on PC 200. The interface of mobile phone 100 is displayed as the interface of the video application, and the user may return to home screen 401 of mobile phone 100, and the video application may run in the background of mobile phone 100.
[0167] 7(a), the user may tap / click on video application 15 in mobile phone window 10 on PC 200, and in response to the user's tap / click operation, window 50 of the video application may automatically pop up on PC 200. The interface of mobile phone 100 may be displayed as home screen 401, i.e., any possible interface of mobile phone 100 may be displayed without the influence of a user operation. In this specification, any possible interface may be a lock screen interface, an interface of any application of the mobile phone used by the user, etc.
[0168] It should be understood that the user may perform related operations within the window of each application that appears on PC 200. For example, video application window 50 may be the main interface of the video application and include a list of multiple videos. The user may tap / click on a video, for example, the user may tap / click on "The Pursuit of Happiness." Video application window 50 may be displayed as the interface shown in FIG. 7(a), and a video is played by using video application window 50.
[0169] It should be further understood that this embodiment of the present application does not impose any limitations on the size and position of windows of multiple applications that are displayed on PC 200. For example, for the process of determining the size and position of a window of an application that is displayed on PC 200, please refer to the related description in step 804 below.
[0170] In a possible implementation, the user may select a window of an application and drag the window to any position on the display screen of the PC 200. In addition, the user may perform corresponding operations on the window of each application by using keys included in the gray menu bar 11, such as the hide to sidebar key 11-1, the hide to menu bar key 11-2, the maximize window key 11-3, and the close window key 11-4, or the user may drag the frame of the video application window 50 to shrink or enlarge the video application window 50. Details will not be described again here.
[0171] Optionally, when the user taps / clicks the window close key 11-4 in the gray menu bar 11 on the PC 200, the window may be closed on the PC 200 in response to the user's close operation. The application of the mobile phone 100 corresponding to the window may run in the background, or the application corresponding to the window may finish running and switch to a closed state. This is not a limitation in the present application.
[0172] For example, as shown in (a) of FIG. 7, when a user opens a video application on PC 200 to display window 50 of the video application, the user taps / clicks the close key in the gray menu bar in window 50 of the video application, and the window may be closed on PC 200 in response to the user's close operation, and the video application of mobile phone 100 may run in the background or terminate execution.
[0173] In another possible implementation, the user may maximize a window in a different way. For example, as shown in FIG. 7A, the user taps / clicks the window maximize key 11-3 included in the gray menu bar 11 of the video application window 50 to maximize the video application window 50 to a full-screen window as shown in FIG. 7B. Alternatively, the user taps / clicks the full-screen control 16 included in the video application window 50 to maximize the video application window 50 to a window as shown in FIG. 7B. This is not limited to this embodiment of the present application.
[0174] Correspondingly, when the video application window 50 is maximized to the window shown in Fig. 7(b), the user may tap / click the window shrink control 17 included in the gray menu bar 11 to restore the video application window 50 to the window shown in Fig. 7(a), which is not displayed in full screen. Alternatively, the user may tap / click the window minimize key 11-5 included in the video application window 50 to restore the video application window 50 to the window shown in Fig. 7(a), which is not displayed in full screen. This is not limited to this embodiment of the present application.
[0175] In conclusion, the multi-window display method provided in the embodiment of the present application allows an application program of the mobile phone 100 to be displayed in a mobile phone window on the PC 200 or in a menu list of the PC 200. When a mobile phone application is not installed on the PC 200, the application of the mobile phone 100 can be executed by tapping / clicking on the PC 200, and the application's functions can be used. The user can use the application of the mobile phone 100 by using the large screen experience of the PC 200. This method can implement system integration between the mobile phone and the PC, so that the user can call up an application installed on the mobile phone from the system menu of the PC.
[0176] Additionally, in this method, multiple mobile phone applications can be executed independently and concurrently on the PC 200. An independent window can be displayed on the PC 200 for each application. Multiple windows corresponding to multiple applications are simultaneously displayed within the interface of the PC 200, and the execution of multiple applications on the mobile phone 100 does not affect the user's use of other functions on the mobile phone. For example, when using a mobile phone video application or music application on the PC 200, the user may simultaneously use the mobile phone to send / receive SMS messages, make phone calls, or perform other such operations. Alternatively, the user may operate the mobile phone using peripheral input devices such as a mouse or keyboard, completely maintaining the user's usage habits and eliminating the need to frequently switch between the two devices. Applications on the mobile phone 100 are executed using a mobile phone window on the PC 200, thereby improving the efficiency of file queries, sharing, and business operations and improving the user experience.
[0177] In relation to the above-mentioned embodiments and the related accompanying drawings, the multi-window display method provided in the embodiments of the present application may be applied to a system including two electronic devices communicating with each other. For example, the system includes a first electronic device and a second electronic device configured to display an interface of the first electronic device. In the embodiment of the present application, the mobile phone 100 functions as the first electronic device, and the PC 200 functions as the second electronic device. The PC 200 may display multiple windows of the mobile phone 100. A specific implementation process for displaying multiple windows of the mobile phone 100 by the PC 200 will be described below with reference to FIGS. 8 to 12.
[0178] 8 is a schematic flowchart of a multi-window display method according to an embodiment of the present application. As shown in FIG. 8, the method 800 may include the following steps:
[0179] 801. The mobile phone 100 establishes a connection to the PC 200.
[0180] It should be understood that in this embodiment of the present application, the mobile phone 100 and the PC 200 need to communicate with each other. For the communication method, please refer to the above description. The details will not be described again here. Specifically, an example is taken in which a connection is established between the mobile phone 100 and the PC 200 through NFC. The link discovery service APK of the mobile phone 100 in FIG. 3A may participate in the process of establishing a connection to the PC 200 by the mobile phone 100. The details will not be described again here.
[0181] 802. The mobile phone 100 acquires size information of the display screen of the PC 200.
[0182] It should be understood that this embodiment of the present application does not impose any limitations on the timing and method for the mobile phone 100 to acquire size information of the display screen of the PC 200. In a possible implementation, when the mobile phone 100 establishes a connection with the PC 200, the PC 200 may transmit information such as the size of the display screen to the mobile phone, and the mobile phone 100 may acquire information such as the size of the display screen of the PC 200.
[0183] In another possible implementation, after mobile phone 100 establishes a connection to PC 200, PC 200 may be triggered based on a user's operation to send information such as the size of the display screen to mobile phone 100, and mobile phone 100 may obtain information such as the size of the display screen of PC 200. For example, in the operation process shown in Fig. 4, when a user operates "EMUJI Desktop", PC 200 may send information such as the size of the display screen to the mobile phone.
[0184] It should be further understood that data exchange between the mobile phone 100 and the PC 200 may be transmitted by using different channels based on the process by which the connection between them is established. For example, data between the mobile phone 100 and the PC 200 may be transmitted by discovering and establishing a Wi-Fi p2p path. Alternatively, when the connection between the mobile phone 100 and the PC 200 is established through Bluetooth, information such as the size of the display screen of the PC 200 may be transmitted to the mobile phone 100 by using a Bluetooth channel. This is not limited to this embodiment of the present application.
[0185] Specifically, corresponding to the mobile phone 100 illustrated in FIG. 3A, the multi-screen framework service APK in the application program framework layer of the mobile phone 100 performs the steps: 802 You may participate.
[0186] 803. The mobile phone 100 creates a virtual area based on the acquired size information of the display screen of the PC 200.
[0187] 804. The mobile phone 100 determines a first region of the mobile phone window 10 within the virtual region.
[0188] Optionally, upon establishing a connection to the PC 200, the mobile phone 100 may create a virtual area, the size of which is the same as the size of the display screen of the PC 200.
[0189] 9A, 9B, and 9C are schematic diagrams of creating a virtual area by a mobile phone 100 according to an embodiment of the present application. In this embodiment of the present application, the display screen of the PC 200 uses the starting point at the upper left corner of the display screen as the coordinate origin, and the size of the display screen is expressed by using pixels in the horizontal direction (x-axis direction) and vertical direction (y-axis direction). In the following description, all numbers are pixel position coordinates. It should be understood that the more pixels occupying a certain direction, the more sophisticated and delicate the display effect will be.
[0190] Steps 803 and 804 may correspond to the process performed by mobile phone 100 and shown in FIG. 9A.
[0191] For example, in this embodiment of the present application, the size of the display screen of the PC 200 acquired by the mobile phone 100 may be 3000×2000. In other words, the display screen of the PC 200 includes 3000 pixels in the horizontal direction (x-axis) and 2000 pixels in the vertical direction (y-axis). As shown in FIG. 9A , the mobile phone 100 creates a virtual area (indicated by a dashed line) based on the size information of the display screen of the PC 200 (3000×2000). The coordinate origin of the virtual area is O(0,0), and the virtual area includes 3000 pixels in the x-axis direction and 2000 pixels in the y-axis direction.
[0192] After the mobile phone 100 creates the virtual area, the mobile phone 100 determines a first area within the virtual area where the mobile phone window 10 will be placed. In other words, the mobile phone 100 determines the coordinates of the vertices O1 of the first area, the number of pixels included in the x-axis direction, and the number of pixels included in the y-axis direction. Optionally, the coordinates of the vertices of the first area, the number of pixels included in the x-axis direction, and the number of pixels included in the y-axis direction may be preset in the system, or the first area is determined by the mobile phone 100 based on the size of the display screen of the PC 200 according to a preset rule. This is not limited to this embodiment of the present application.
[0193] In a possible implementation, the mobile phone 100 may specify the coordinates of the initial vertices, the amount of pixels included in the x-axis direction, and the amount of pixels included in the y-axis direction for each window to be displayed. For example, after the mobile phone 10 sets the coordinates of the initial vertices, the amount of pixels included in the x-axis direction, and the amount of pixels included in the y-axis direction for the mobile phone window 10, the mobile phone window 10 may be displayed at a position adjacent to the right frame of the display screen of the PC 200. As shown in FIG. 7(a), the mobile phone window 10 is displayed at a position adjacent to the right frame of the display screen of the PC 200, and the mobile phone window 10 is positioned midway between the top and bottom frames of the display screen of the PC 200. Setting the initial coordinates may prevent the mobile phone window 10 from hiding the original application programs of the PC (e.g., My Computer or Recycle Bin) displayed in the interface 402 of the PC 200, and may prevent the mobile phone window 10 from hiding shortcut menu options such as an input method control menu, a date and time setting menu, or PC power management displayed in the lower right corner of the interface 402 of the PC 200.
[0194] Optionally, mobile phone 100 may determine the size of the window to be displayed on PC 200 by specifying, for each window to be displayed, the amount of pixels to be included in the x-axis direction and the amount of pixels to be included in the y-axis direction based on the display area of the mobile phone. It should be understood that, in this specification, the display area of the mobile phone is the maximum area that can be used to display the mobile phone interface on the display screen of mobile phone 100. As shown in Figure 9A, the display area of mobile phone 100 is n x m.
[0195] For example, the mobile phone window 10 on the PC 200 may have the same size as the display area (n×m) of the mobile phone. In other words, the size of the mobile phone window 10 includes n pixels in the x-axis direction and m pixels in the y-axis direction.
[0196] Alternatively, after enlarging or reducing the display area (n×m) of the mobile phone based on the ratio, the mobile phone 100 may specify that size as the size of the mobile phone window 10 displayed on the PC 200.
[0197] For example, mobile phone window 10 on PC 200 may be used to display the home screen of mobile phone 100, and mobile phone window 10 may be a size obtained by enlarging the display area (n×m) of the mobile phone by 1.5 times. In other words, mobile phone 100 specifies that mobile phone window 10 includes 1.5×n pixels in the x-axis direction and 1.5×m pixels in the y-axis direction.
[0198] For example, as shown in FIG. 9A, the coordinates of the vertex O1 of the first region are (2500, 500), and the first region includes 400 pixels in the x-axis direction and 1000 pixels in the y-axis direction.
[0199] It should be understood that the process of creating a virtual area and a first area by the mobile phone 100, which is described above, may be executed by the processor 110 of the mobile phone 100 in FIG. 1, or, correspondingly, may be completed by a module corresponding to the multi-screen frame service APK of the mobile phone 100 in the software architecture of FIG. 3A. In addition, the process of creating a virtual area by the mobile phone 100 may be understood as determining information about the virtual area, and the process of determining the first area by the mobile phone 100 may be understood as determining information about the first area. The process is an internal process of the mobile phone 100 and does not need to be displayed on the mobile phone 100. This process is completed by the mobile phone 100 and is not displayed on the PC 200.
[0200] The mobile phone 100 determines information O1 (2500, 500) about the first region, where the first region includes 400 pixels in the x-axis direction and 1000 pixels in the y-axis direction.
[0201] 805. The mobile phone 100 encodes the information about the first region and the display content information of the first region to generate a first video stream.
[0202] 806. The mobile phone 100 transmits the first video stream to the PC 200.
[0203] It should be understood that the first video stream includes information about the first region, and specifically may include information such as the coordinates of the vertices, length and width of the first region on the display screen of the PC 200.
[0204] Optionally, the information about the first region may further include display level information of the mobile phone window 10. It should be understood that in this specification, the display layer is used to indicate the layer at which a window is displayed on the PC 200 in the current display method. For example, the PC 200 includes three mobile phone windows, and the window displayed on the top layer is displayed on the first layer, and the window displayed on the bottom layer is displayed on the third layer.
[0205] Optionally, layer information may not be sent by mobile phone 100 to PC 200, but PC 200 manages the layer display of all windows based on the time information about each window is received and the operation performed by the user on PC 200. For example, if window 40 of a music application is displayed in a layer above window 50 of a video application, and the user selects window 50 of the video application on the PC, PC 200 determines that window 50 of the video application should be displayed in the top layer.
[0206] In a possible implementation, the mobile phone window 10 may be displayed by default on the top layer of the PC 200. The display content in the mobile phone window 10 may correspond to the home screen 401 of the mobile phone 100 or may include application programs of the mobile phone 100, so the mobile phone window 10 is displayed on the top layer of the PC 200 to facilitate use by the user. In addition, the mobile phone window 10 is positioned adjacent to the right frame of the display screen of the PC 200 and does not hide the original application of the PC 200 used by the user.
[0207] It should be understood that the display content information of the first region, which is included in the first video stream, is used by the PC 200 to display the content of the mobile phone 100 in the mobile phone window 10. In other words, the PC 200 may fill the first region based on the display content information of the first region, so that the content displayed in the first region on the display screen of the PC 200 is the interface of the mobile phone 100.
[0208] For example, as shown in (a) of Fig. 4, when the home screen of the mobile phone 100 is displayed in the mobile phone window 10, the display content information of the first region includes the wallpaper of the home screen of the mobile phone 100, icons of all application programs, a window including the time, date, and weather, and the operator name, network signal identifier, power display information, etc. in the notification bar at the top of the interface of the mobile phone 100. Alternatively, as shown in (b) of Fig. 4, when the interface of a music application of the mobile phone 100 is displayed in the mobile phone window 10, the display content information of the first region includes the wallpaper of the interface of the music application, and each control, song title, playback progress, singer image, etc. in the interface of the music application.
[0209] If possible, in the process of displaying the window of the mobile phone 100 by using the PC 200, the PC 200 may further display a window related to an application currently running on the PC 200; for example, the display screen of the PC 200 may display a web page window opened by the user on the PC 200. Optionally, when the mobile phone window 10 first appears on the display screen of the PC 200 after the mobile phone 100 is connected to the PC 200, the mobile phone window 10 is displayed in the top layer to facilitate user operation. If the user is not currently using an application in the mobile phone window 10 and wants to continue using the opened web page window on the PC 200, the user may tap / click anywhere in the web page window to display the web page window in the top layer of the PC 200 and move the mobile phone window 10 down one layer (displaying the mobile phone window 10 in the second layer). Alternatively, the user may tap / click the hide key 11-1 for the sidebar or the hide key 11-2 for the menu bar in the gray menu bar 11 of the mobile phone window 10 to hide the mobile phone window 10. In this case, the mobile phone window 10 is temporarily not displayed on the display screen of the PC 200. In addition, it should be further understood that the MSDP service APK of the mobile phone 100 described in FIG. 3A may participate in the above-mentioned encoding process of the first video stream, and the MSDP service APK may implement functions including video stream encoding. Specifically, the multi-screen frame service APK of the mobile phone 100 may send the determined information about the first region and the determined display content information of the first region to the MSDP service APK, which then encodes the information about the first region and the display content information of the first region to generate the first video stream. The video stream encoding process will not be described again here.
[0210] Optionally, the first video stream may be transmitted by using a dedicated video stream channel provided by the MSDP service, or by using a channel established in the process in which the mobile phone 100 establishes a connection to the PC 200 in step 701. This is not limited to this embodiment of the present application. It should be understood that the first video stream has a data format that can be parsed by both the mobile phone 100 and the PC 200. Details will not be described here.
[0211] Step 805 may correspond to the process shown in FIG. 9B performed by the mobile phone 100, which is also the internal video stream encoding process of the mobile phone 100.
[0212] 807. The PC 200 receives and decodes the first video stream to obtain information about the first region and display content information for the first region.
[0213] 808. The PC 200 displays the mobile phone window 10 in the corresponding region based on the information about the first region, and displays the corresponding content in the mobile phone window 10 based on the display content information of the first region.
[0214] The PC 200 receives the first video stream transmitted by the mobile phone 100 and decodes the first video stream. It should be understood that the decoding method corresponds to the encoding method of the mobile phone 100. The process may be performed by the MSDP service APK of the PC 200, and the MSDP service APK transmits information about the first region, which is obtained after the first video stream is decoded, to the multi-screen frame service APK. Based on the information about the first region, the multi-screen frame service APK determines information such as the coordinates of the vertices, length, and width of the mobile phone window 10 on the display screen of the PC 200, thereby determining the display area of the mobile phone window 10.
[0215] In addition, the PC 200 further obtains display content information of the first region from the first video stream. The PC 200 may fill the mobile phone window 10 based on the display content information of the first region, so that the content displayed in the mobile phone window 10 on the display screen of the PC 200 is the interface of the mobile phone 100. When the interface may be the home screen of the mobile phone 100 or the interface of any application of the mobile phone 100, the display content information of the first region includes the wallpaper of the interface of the music application, and each control, song title, playback progress, singer image, etc. in the interface of the music application.
[0216] 3B, the MSDP service APK sends the acquired display content information of the first region to the multi-screen frame service APK. Finally, the mobile phone window display of the multi-screen frame service APK module displays corresponding interface content based on the display content information of the first region.
[0217] In the above process of steps 801 to 808, the display screen of the PC 200 may display the mobile phone window 10, and the home screen of the mobile phone 100 may be displayed in the mobile phone window 10, or any interface of the mobile phone 100 in the user's usage process may be synchronously displayed in the mobile phone window 10. For example, as shown in FIG. 4(a), the PC 200 may display the mobile phone window 10 in the main interface 402. The display content in the mobile phone window 10 may continuously display the home screen of the mobile phone 100. Alternatively, as shown in FIG. 4(b), the display content in the mobile phone window 10 of the PC 200 may be synchronized with that on the mobile phone 100, such as a music application interface.
[0218] Steps 807 and 808 may correspond to the process shown in Fig. 9C executed by the mobile phone 100. Specifically, the PC 200 maps the first region to a corresponding position on the display screen of the PC 200 based on the coordinates of the vertices, length, and width of the first region in the virtual region. The position corresponding to the first region is the display region of the mobile phone window 10. In other words, the coordinates of the mobile phone window 10 on the display screen of the PC 200 are the coordinates of the first region in the virtual region.
[0219] In a possible implementation, in step 805, the mobile phone 100 may encode the information about the virtual area, the information about the first area, and the display content information of the first area together to generate a first video stream, and transmit the first video stream to the PC 200. The PC 200 directly determines the position of the mobile phone window 10 on the display screen of the PC 200 based on the position of the first area within the virtual area, and displays the display content of the first area within the mobile phone window 10.
[0220] In a possible implementation, in step 805, the mobile phone 100 encodes information about the display area (n×m) of the mobile phone to generate a first video stream and transmits the first video stream to the PC 200. The PC 200 determines the position and size of the mobile phone window 10 used to display the mobile phone's home screen based on the information about the display area (n×m) of the mobile phone. Optionally, for a method of determining the position and size of the mobile phone window 10 by the PC 200, please refer to the above-mentioned process in which the mobile phone 100 determines the coordinates of the vertices of the first area, the amount of pixels in the x-axis direction, and the amount of pixels in the y-axis direction. Details will not be described again here. Similarly, for the music application window 40, the PC 200 may also determine the position and size of the window 40 used to display the music application based on information transmitted by the mobile phone 100 and related to the interface of the music application displayed on the mobile phone.
[0221] It should be understood that when a user moves the music application window 40 on the PC 200, the coordinates of the music application window 40 may be sent by the PC 200 to the mobile phone 100, and the mobile phone 100 may update information related to the coordinates of the music application window 40. In other words, information is exchanged between the mobile phone 100 and the PC 200 in real time. When the position, size, etc. of a window on the PC 200 changes, the PC 200 may notify the mobile phone 100 of information such as the changed position and size of the window. The mobile phone 100 may accurately obtain information related to the music application window at any time. A window coordinate synchronization module of the MSDP service APK of the mobile phone 100 described in FIG. 3A may participate in this process. Furthermore, the mobile phone 100 may know the position of each application window displayed on the PC 200, the position of function controls included in each application, etc. in real time, so that the user can use and operate the applications of the mobile phone 100 on the PC 200.
[0222] 10 is another schematic flowchart of a multi-window display method according to an embodiment of the present application. The process shown in FIG. 10 may be executed after the process shown in FIG. 8. In other words, the process shown in FIG. 10 may be continued after the display screen of the PC 200 displays the mobile phone window 10. It should be understood that the process 1000 may correspond to the process shown in FIG. 6(a). The user may perform an operation on the mobile phone music application on the mobile phone 100, and in response to the operation performed by the user on the mobile phone 100, the PC 200 may display the music application window 40 in addition to the original mobile phone window 10.
[0223] As shown in FIG. 10, the method 1000 may include the following steps.
[0224] 1001. The display screen of the PC 200 displays the mobile phone window 10.
[0225] 1002. The mobile phone 100 receives a first operation from the user and executes a music application.
[0226] In this embodiment of the present application, an example in which a user taps to execute a music application is used for explanation. It should be understood that the first operation may be a tap operation on the music application executed by the user on the mobile phone 100. In response to the user's tap operation, the music application may be opened and entered on the mobile phone 100, i.e., the mobile phone 100 may display the interface of the music application. Therefore, in this specification, executing the music application may mean executing the music application in the foreground, i.e., the display screen of the mobile phone 100 displays the interface of the music application. 1003. The mobile phone 100 determines a second area within the virtual area in step 803, and obtains display content information of the second area.
[0227] It should be understood that the virtual area created by the mobile phone 100 in step 803 has the same size as the display screen of the PC 200, and the mobile phone 100 determines a first area within the virtual area for the mobile phone window 10. In step 1003, the mobile phone 100 determines a second area within the created virtual area for the music application window 40. Figures 11A, 11B, and 11C are other schematic diagrams of creating a virtual area by the mobile phone 100 according to an embodiment of the present application. Steps 1003 and 1004 may correspond to the process shown in Figure 11A, which is performed by the mobile phone 100.
[0228] 11A, for example, the mobile phone 100 creates a virtual region indicated by the dashed line in step 803. The coordinate origin of the virtual region is O(0,0), and the virtual region includes 3000 pixels in the x-axis direction and 2000 pixels in the y-axis direction.
[0229] 8, the mobile phone 100 determines the position and size of the mobile phone window 10 in various possible ways. Similarly, for each application, the mobile phone 100 may further determine the position and size of a window for displaying the application.
[0230] In a possible implementation, the coordinates of the initial vertices of the window for displaying each application on the PC 200 may be set by the mobile phone 100, and the amount of pixels included in the x-axis direction and the amount of pixels included in the y-axis direction may also be set by the mobile phone 100.
[0231] Optionally, the mobile phone 100 may specify the coordinates of the initial vertices, the amount of pixels to be included in the x-axis direction, and the amount of pixels to be included in the y-axis direction for the window 40 of the music application to be displayed based on information about the display area (n x m) of the mobile phone 100.
[0232] For example, if a music application window 40 on the PC 200 is used to display the interface of the music application on a mobile phone, the music application window 40 may have the same size as the display area (n x m) of the mobile phone. In other words, the music application window 40 includes n pixels in the x-axis direction and m pixels in the y-axis direction. In this case, to ensure that the music application window 40 is close to the mobile phone window 10 and does not obscure the content in the mobile phone window 10, the x-axis coordinate of a vertex O2 of the music application window 40 is obtained by subtracting n from the x-axis coordinate of O1. The y-axis coordinate of the vertex O2 may be the same as the y-axis coordinate of O1, or the y-axis coordinate is obtained by subtracting m from the value obtained by adding the y-axis coordinate of O1 and the y-axis size of the mobile phone window 10.
[0233] 11A , when n=400 and m=1000 in the virtual region, the mobile phone 100 determines the second region of the music application window 40. The second region includes 400 pixels in the x-axis direction and 500 pixels in the y-axis direction, where 400 is equal to n and 500 pixels is 0.5×m. After determining the size of the second region, the mobile phone 100 may further determine that the coordinates of vertex O2 are (2100, 1000) to ensure that the music application window 40 is close to the mobile phone window 10.
[0234] Alternatively, for example, a video application window 50 on the PC 200 is used to display the interface of the video application on the mobile phone. The video application window 50 may have the same size as the display area (n×m) of the mobile phone, where m is used as the amount of pixels included in the x-axis direction and n is used as the amount of pixels included in the y-axis direction. The size of the video application window 50 can be better adapted to the user's video viewing process, thereby improving the user's viewing experience.
[0235] Optionally, the mobile phone 100 may specify the amount of pixels to be included in the x-axis direction and the amount of pixels to be included in the y-axis direction for the window 40 of the music application to be displayed based on information about the display area (n×m) of the mobile phone 100 and a preset ratio relationship. For example, the mobile phone 100 specifies that the window 40 of the music application includes 1.5×n pixels in the x-axis direction and 1.5×m pixels in the y-axis direction.
[0236] In another possible implementation, the mobile phone 100 may determine the number of pixels included in the x-axis direction and the number of pixels included in the y-axis direction for the window 40 of the music application to be displayed based on the interface of the music application that is displayed when the mobile phone executes the music application, and determine the size of the window to be displayed on the PC 200. It should be understood that the interface of the music application that is displayed when the mobile phone executes the music application in this specification may be smaller than the display area n×m of the mobile phone 100. For example, the size of the interface of the music application that is displayed when the mobile phone executes the music application is p×q. It should be understood that in this embodiment of the present application, the values of n and m may be obtained by the mobile phone 100 based on information about the display screen, and the values of p and q may be information obtained when the installation package of the music application is installed on the mobile phone 100 or information configured by the mobile phone 100 for the music application. This is not limited to this embodiment of the present application.
[0237] Optionally, the size of the music application window 40 may be the same as the size (p x q) of the music application interface displayed on the mobile phone 100. In other words, the music application window 40 includes p pixels in the x-axis direction and q pixels in the y-axis direction. In this case, to ensure that the music application window 40 is adjacent to the mobile phone window 10 and does not obscure the content in the mobile phone window 10, the x-axis coordinate of a vertex O2 of the music application window 40 is obtained by subtracting p from the x-axis coordinate of O1. The y-axis coordinate of the vertex O2 may be the same as the y-axis coordinate of O1, or the y-axis coordinate is obtained by subtracting q from the value obtained by adding the y-axis coordinate of O1 and the y-axis size of the mobile phone window 10.
[0238] In another possible implementation, the mobile phone 100 determines the amount of pixels included in the x-axis direction and the amount of pixels included in the x-axis direction according to a preset rule. For example, when the mobile phone 100 determines the coordinates of the initial vertices, the amount of pixels included in the x-axis direction and the amount of pixels included in the y-axis direction may be determined according to a preset rule. For example, the rule for setting the initial coordinates of the window 40 of the music application that is started and executed first may be as follows: the right frame of the window 40 of the music application is close to the left frame of the mobile phone window 10, and the window 40 does not hide the content in the mobile phone window 10. The rule for setting the initial coordinates of the window 50 of the video application that is started and executed second may be as follows: the right frame of the window 50 of the video application is close to the left frame of the window 40 of the music application, and the window 50 does not hide the content in the window 40 of the music application. Alternatively, the right frame of the window 50 of the video application that is started and executed second is still close to the left frame of the mobile phone window 10, and the window 50 of the video application that is started and executed second is positioned above the window 40 of the music application that is started and executed first. It should be understood that if the window 50 of the video application has an area that overlaps with the window 40 of the music application because the user is currently tapping on the video application, the window 50 of the video application will be displayed on top of the window 40 of the music application. 40 If you tap / click, the music application window 40 is displayed on top of the video application window 50.
[0239] 6(a), the music application window 40 is displayed in a position close to the left frame of the mobile phone window 10, and the music application window 40 is positioned midway between the top and bottom frames of the display screen of the PC 200. Setting the initial coordinates may prevent the music application window 40 from obscuring the mobile phone window 10, so that the user can continue to use the application program in the mobile phone window 10.
[0240] It should be further understood that after determining the information about the second area, the mobile phone 100 may further obtain display content information of the second area, and the display content information is used by the PC 200 to display interface content of the music application of the mobile phone 100 in the music application window 40. In other words, the PC 200 may fill the second area based on the display content information of the second area, so that the content displayed in the second area of the display screen of the PC 200 is the interface content of the music application of the mobile phone 100.
[0241] Optionally, the information about the second region may further include identifier information of the music application. Specifically, the identifier information of the music application is used to identify the window as a window of the music application, and both the PC 200 and the mobile phone 100 may determine that the window is a window of the music application. When a user performs an operation on a window of the PC 200, the PC 200 may determine that the operation is for the music application and then accurately transfer the operation back to the mobile phone 100. It should be understood that the mobile phone 100 and the PC 200 may otherwise determine an application corresponding to each window or an application corresponding to an operation performed by the user in the window in order to accurately provide a service.
[0242] Optionally, the information about the second region further includes display level information. Specifically, in this specification, the display layer is used to indicate the layer at which the music application window 40 is displayed on the PC 200 in the current display manner. For example, if a user is currently running a music application, the music application is displayed on the first layer, i.e., the top layer of the display screen of the PC 200. Similarly, if a user taps and runs the music application, video application, and chat application of the mobile phone 100 in succession, the chat application window is displayed on the first layer of the display screen of the PC 200, the video application window is displayed on the second layer, and the music application window is displayed on the third layer. In addition, if the user taps the music application window again, the music application window is displayed on the top layer, and details will not be described in this embodiment of the present application.
[0243] 1004. The mobile phone 100 encodes the identifier information of the music application, the information about the second region, and the display content information of the second region to generate a second video stream.
[0244] Steps 1004 11B, which is executed by the mobile phone 100. This process is also an internal video stream encoding process of the mobile phone 100. For details, refer to the process of step 805. The multi-screen frame service APK of the mobile phone 100 sends the determined identifier information of the music application, the determined information about the second region, and the determined display content information of the second region to the MSDP service APK. The MSDP service APK encodes the information about the second region and the display content information of the second region to generate a second video stream.
[0245] 1005. The mobile phone 100 transmits the second video stream to the PC 200.
[0246] 1006. The PC 200 receives and decodes the second video stream to obtain identifier information of the music application, information about the second region, and display content information of the second region.
[0247] 1007. The PC 200 displays the window 40 of the music application in the corresponding area based on the information about the second area and the display content information of the second area.
[0248] Steps 1006 and 1007 may correspond to the process shown in FIG. 11C , which is executed by the mobile phone 100. In the above-described process in steps 1001 to 1007, the mobile phone window 10 and the music application window 40 may be displayed on the display screen of the PC 200. For example, as shown in FIG. 6(a), the PC 200 may display the mobile phone window 10 and the music application window 40 in the main interface 402. The display content in the mobile phone window 10 may be the home screen of the mobile phone 100, and the display content in the music application window 40 may be the interface of the music application of the mobile phone 100.
[0249] It should be understood that after the user starts the music application on the mobile phone 100, runs the music application in the foreground, and completes step 1007, the music application window 40 is displayed on the PC 200. Once the user starts the music application, runs it in the foreground, and completes step 1007, even if the user exits the home screen of the mobile phone 100 or switches to another application, the music application runs in the background and does not affect the process of displaying the music application window 40 on the PC 200.
[0250] In another possible case, the user taps a music application icon on the home screen 401 of the mobile phone 100 to play music. As shown in (a) and (b) of Figures 4, a mobile phone window 10 displayed on the PC 200 may be displayed as an interface of the music application, or a window 40 of the music application may be displayed on the PC 200. In this case, the music audio may actually be played on the device on which the music application is started. Specifically, when the user taps the music application on the mobile phone 100, the device that actually plays the music audio is the mobile phone 100.
[0251] Alternatively, the user plays music by tapping / clicking on the music application 14 in the mobile phone window 10 of the PC 200. As shown in Fig. 6(a), the music application window 40 may be displayed on the PC 200, and the mobile phone window 10 may also be displayed as an interface for the music application. In this case, the device that actually plays the music audio is the PC 200.
[0252] Similarly, in another possible case, as shown in (a) and (b) of FIG. 4, when a user is playing music by using the mobile phone 100, the device that actually plays the music audio when the music application is executed is the mobile phone 100. If a user taps / clicks on the video application 15 in the mobile phone window 10 of the PC 200 and plays a video by using the video application window 50, the PC 200 may display the interface 402 shown in (a) of FIG. 7. In this case, the device that actually plays the video (including audio and images) is the PC 200. In other words, even if the mobile phone 100 transmits information about the video content in the video application window 50 by using a video stream, after the information about the video content is acquired by the PC 200, the video is played by a playback device such as the display or speaker of the PC 200. The video application runs in the background of the mobile phone 100 and therefore cannot affect the original music being played on the mobile phone 100.
[0253] In addition, when the user completes the operation of running a music application and a video application on the mobile phone window 10 of the PC 200, the device for playing music and video is the PC 200. In this case, please refer to the prior art solutions for the audio preemption principle. For example, if the video application to be executed later has a higher priority, the audio playback of music is automatically paused. This is not limited to this embodiment of the present application.
[0254] It should be understood that the above describes a process of displaying two windows (mobile phone window 10 and music application window 40) by PC 200. Based on the above method, a user may further run more applications on mobile phone 100, such as video applications, chat applications, and office software applications. Multiple windows may be displayed on PC 200, each corresponding to a different mobile phone application. Details will not be described here.
[0255] In the aforementioned multi-window display method provided in this embodiment of the present application, the mobile phone 100 and the PC 200 communicate with each other, and the contents of the mobile phone 100 may be displayed by using the PC 200. When a user runs multiple applications on the mobile phone 100, multiple windows may be displayed on the PC 200, with each window used to display a different application. Each window may receive user operations, such as closing, moving, scaling, maximizing, and minimizing the window. In addition, the user may perform operations for each mobile phone application in the window corresponding to the mobile phone application and displayed on the PC 200. For example, the user may tap / click controls such as "play" and "next" in the music application window on the PC 200 to control the music playback process. In addition, operations performed by the user on the mobile phone application on the PC 200 do not affect the user's use of other functions on the mobile phone 100, such as in the aforementioned scenario where the user plays music using the mobile phone 100 and simultaneously watches a video using the PC 200. This method can improve business efficiency, such as file sharing, and improve the user experience.
[0256] In a specific implementation, the mobile phone 100 generates a video stream by using a video stream transmission process to encode identifier information of different running applications and information such as the vertex coordinates, length, and width of a window for displaying the application on the PC 200. For example, the mobile phone 100 encodes identifier information of a music application, information such as the vertex coordinates, length, and width of a window 40 for displaying the music application on the PC 200, identifier information of a video application, and information such as the vertex coordinates, length, and width of a window 50 for displaying the video application on the PC 200 to generate a video stream, and transmits the video stream to the PC 200. After receiving and decoding the video stream, the PC 200 distinguishes between the different information and accurately displays the interface content of the music application in the window 40 of the music application and the interface content of the video application in the window 50 of the video application.
[0257] It should be understood that one video stream is a video stream transmitted using one video stream transmission channel. If the video transmission channel meets the transmission requirements, encoding may be performed to generate multiple video streams. For example, identifier information of a music application and information such as the coordinates of the corners, length, and width of a window 40 for displaying the music application on the PC 200 are encoded to generate one video stream transmitted using one video stream transmission channel. Identifier information of a video application and information such as the coordinates of the corners, length, and width of a window 50 for displaying a video application on the PC 200 are encoded to generate another video stream transmitted using another video stream transmission channel. Compared with existing video stream encoding and transmission processes, this solution's encoding method for generating one video stream can reduce the power consumption of a mobile phone and does not limit the number of mobile phone application windows displayed on the PC 200.
[0258] It should be understood that the following has been described in the above embodiment: the mobile phone 100 sends the position information of the first window and the display content information of the first interface to the PC 200, and the PC 200 displays the first window based on the instruction of the mobile phone 100. Optionally, the mobile phone 100 may not obtain the size information of the display area of the PC 200, but may only send the display content information of the first interface of the mobile phone 100. The PC 200 determines the position information of the first window and displays the first window. Similarly, the display of the second window may also be determined by the PC 200.
[0259] In the above solution, the PC 200 may determine the display positions of the first window and the second window based on the use of applications on the PC 200, interface content, etc., to better suit the use process of the PC 200, reduce the impact on the use of the PC 200, and improve the user experience. With reference to Figures 10, 11A, 11B, and 11C, the following has been described above: after the display screen of the PC 200 displays the mobile phone window 10, the user may tap the music application in the interface of the mobile phone 100, and the music application window 40 may be displayed on the PC 200. In addition, the user may tap / click the music application 14 in the mobile phone window 10 of the PC 200, or the music application window 40 may be displayed on the PC 200.
[0260] 12 is another schematic flowchart of a multi-window display method according to an embodiment of the present application. As shown in FIG. 12, the method 1200 may include the following steps:
[0261] 1201. The display screen of the PC 200 displays the mobile phone window 10.
[0262] 1202. The PC 200 receives a second operation from the user and determines operation information of the second operation.
[0263] In this embodiment of the present application, an example is taken in which a user taps / clicks to execute the music application 14 in the mobile phone window 10 of the PC 200. It should be understood that the second operation may be an operation performed on the application to start the application. In this embodiment of the present application, the first operation and the second operation may be different operations performed on different devices. For example, on the PC 200, a user may execute the music application by performing a click operation or a double-click operation by using a peripheral input device such as a mouse or a keyboard. Alternatively, if the PC 200 is a device with a touch screen, a user may execute the music application through touching and tapping. The operation type of the second operation is not limited in this embodiment of the present application.
[0264] Optionally, the operation information of the second operation includes an operation event for an application in the mobile phone window 10, and the operation information of the second operation may further include at least one type of information, such as the name, ID and icon of the music application.
[0265] Specifically, for the PC 200, the second operation is an operation event ("touch event"). After receiving the "touch event", the PC 200 determines the name, ID and icon of the music application where the "touch event" occurs, as well as the coordinates of the "touch event" on the PC, that is, determines the operation information of the second operation.
[0266] 1203. The PC 200 transmits operation information of the second operation to the mobile phone 100.
[0267] 1204. The mobile phone 100 determines to execute the music application based on the received operation information of the second operation.
[0268] The PC 200 forwards the "touch event" to the mobile phone 100. The system of the mobile phone 100 determines the "touch event" and sends the "touch event" to a corresponding music application. The music application of the mobile phone 100 determines that the "touch event" is used to tap and run the music application. It should be understood that with respect to the mobile phone 100, the music application may run in the foreground. For example, the interface of the music application may be displayed directly on the home screen 401 of the mobile phone 100. Alternatively, the music application may run in the background. For example, the interface of the music application may not be displayed within the interface of the mobile phone 100, and the music application may run only in the background.
[0269] 1205. A second area within the virtual area is determined, and display content information of the second area is obtained.
[0270] 1206. Encode the identifier of the music application, information about the second region, and display content information about the second region to generate a second video stream.
[0271] 1207. The mobile phone 100 transmits the second video stream to the PC 200.
[0272] 1208. The PC 200 receives and decodes the second video stream to obtain identifier information of the music application, information about the second region, and display content information of the second region.
[0273] 1209. Based on the information about the second area and the display content information about the second area, the PC 200 displays the window 40 of the music application in the corresponding area.
[0274] For the process of steps 1205 to 1209 described above, please refer to the process described in steps 1003 to 1007 of Fig. 10 and Figs. 11A, 11B, and 11C, in which the mobile phone 100 encodes the second video stream, transmits the second video stream to the PC 200, and the display screen of the PC 200 displays the music application window 40. Details will not be described again here. In this case, the music application of the mobile phone 100 may be executed on the PC 200 based on the user's operation.
[0275] In the above-described method, the PC 200 does not need to install applications for the mobile phone 100, and different applications for the mobile phone 100 can be displayed by using different windows. A user may run applications for the mobile phone 100 on the PC 200 and display one window for each application, and the PC 200 may display multiple windows simultaneously.
[0276] In another possible implementation, after a connection between the mobile phone 100 and the PC 200 is established, in the process shown in Figures 5A, 5B, and 5C, a mobile phone application window 30 may be displayed on the main interface 402 of the PC 200, and the mobile phone application window 30 may include all applications of the mobile phone 100. The process in this implementation will be described below with reference to Figure 13.
[0277] 13 is another schematic flowchart of a multi-window display method according to an embodiment of the present application. As shown in FIG. 13, the method 1300 may include the following steps:
[0278] 1301. The mobile phone 100 transmits application information to the PC 200.
[0279] 1302. The PC 200 displays all applications of the mobile phone 100 based on the acquired application information.
[0280] It should be understood that in this implementation, after the mobile phone 100 establishes a connection to the PC 200, the mobile phone 100 may automatically send information about all applications in the application program layer shown in Fig. 3A to the PC 200. Alternatively, as shown in Fig. 4(b), when the user taps / clicks on the "EMUJI Desktop" menu in the menu window 20, the user triggers the PC 200 to send an application acquisition request to the mobile phone 100, requesting that application information of the mobile phone 100 be acquired.
[0281] It should be further understood that, in this specification, application information may include information such as the names, identifiers (IDs), and icons of all applications in the application program layer. After receiving the application information, the PC 200 displays each application in the mobile phone application window 30 based on the application's name, ID, and icon, thereby displaying all applications of the mobile phone 100. The display may be as shown in FIG. 5C . It should be further understood that the application identifier may be represented as a package name, where the package name includes a string, and the PC 200 may determine the music application based on the package name. It should be further understood that the PC 200 displays the application list of the mobile phone 100 by using the mobile phone application window 30. All application programs in the application list are application programs installed on the mobile phone 100. The PC 200 does not need to install the application programs of the mobile phone 100, and only displays the icons of the application list of the mobile phone 100 by using the mobile phone application window 30.
[0282] 1303. The PC 200 receives the third operation of the user and determines operation information of the third operation.
[0283] 1304. The PC 200 transmits operation information of the third operation to the mobile phone 100.
[0284] Specifically, a user may use a peripheral input device such as a mouse or keyboard to tap / click on any application in an application list presented on the EMUJI desktop in the PC's main interface 402. In response to the user's tap / click operation, a window of the tapped / clicked application may automatically pop up on the PC to run the application.
[0285] It should be understood that the third operation may be a tap / click operation performed by the user on a control in an application window on the PC 200, and is used to execute the function of the control.
[0286] Optionally, the operation information of the third operation further includes at least one type of information, such as the name, ID and icon of the control in the interface of the music application.
[0287] Optionally, the operation information of the third operation may include an event type of the third operation and identification (ID) information of a function control on which the third operation is performed.
[0288] For example, when a user taps / clicks on a playback control in the window 40 of a music application on the PC 200, the PC 200 may send to the mobile phone 100 a "touch event" event for tapping / clicking on the playback control, such as the coordinates of the window 40 of the music application where the "touch event" occurred, the name, ID, and icon of the playback control in the window 40 of the music application, and the coordinates of the playback control on the PC 200. The PC 200 forwards the "touch event" to the mobile phone 100. Based on the coordinates of the window 40 of the music application, the system of the mobile phone 100 determines that the "touch event" occurred in the music application and sends the "touch event" to the corresponding music application. Based on the name, ID, and icon of the playback control and the coordinates of the playback control on the PC 200, the music application determines that the "touch event" is used to tap on the playback control. It should be understood that this process may be a background process running on the mobile phone 100.
[0289] It should be further understood that in this embodiment of the present application, the first operation, the second operation, and the third operation may be different operations performed on different devices. Taking running a music application as an example, in a mobile phone, a user may run the music application by performing touch and tap operations. In a PC, a user may run the music application by performing click or double-click operations by using a peripheral input device such as a mouse or a keyboard. Alternatively, if the PC is a device with a touch screen, a user may run the music application through touch and tap. The operation types of the first operation, the second operation, and the third operation are not limited in this embodiment of the present application.
[0290] 1305. The music application of the mobile phone 100 determines an operation result based on the operation information of the third operation, and executes the operation result.
[0291] 1306. The mobile phone 100 transmits the operation result to the PC 200.
[0292] 1307. The PC 200 receives the operation result sent by the mobile phone 100 and synchronizes the operation result.
[0293] Optionally, the process of transmitting the operation result by the mobile phone 100 to the PC 200 in step 1306 may correspond to the process of creating a virtual area and transmitting the first video stream to the PC 200 by the mobile phone 100 in FIGS. 9A, 9B, and 9C, and 11A, 11B, and 11C. In other words, the process of transmitting the operation result may also be completed by using a video stream transmission process. Specifically, after the operation of tapping the music playback control is performed, the mobile phone 100 re-determines the first video stream based on the music application currently running on the mobile phone 100 (running in the background or running on the current interface of the mobile phone). As a result, the PC 200 displays the window 40 of the music application. That is, when the operation of tapping / clicking the music playback control is completed in the window 40 of the music application on the PC 200, for example, to pause music playback, the music playback control changes to a paused state in the window 40 of the music application on the PC 200.
[0294] It should be understood that the following has been mentioned above: a user's operation on the PC 200 side is forwarded back to the mobile phone 100. Similarly, an operation performed by a user on the mobile phone 100 may also be directly forwarded to the PC 200. Details will not be described here. The reverse control modules of the MSDP service APKs of the mobile phone 100 and the PC 200 may participate in the process of forwarding the operation back, ensuring that the corresponding operations are executed synchronously on the mobile phone 100 and the PC 200.
[0295] In the above solution, a user may perform an operation on any control of a mobile phone application in a window of the application that is displayed on the PC 200. The operation may be transferred back to the mobile phone 100, which executes the operation result and transfers the execution result to the PC 200, so that the operation result executed by the mobile phone 100 can be synchronized in the window of the application that is displayed on the PC 200, thereby improving the use efficiency and experience of the mobile phone application.
[0296] It should be understood that to implement the aforementioned functions, electronic devices such as mobile phones and PCs include corresponding hardware and / or software modules for performing the functions. With reference to the exemplary algorithm steps described in the embodiments disclosed herein, the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether the functions are performed by hardware or by hardware driven by computer software depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the functions described for each specific application in connection with the embodiments, but such implementation should not be interpreted as going beyond the scope of the embodiments of the present application.
[0297] In an embodiment, functional modules of an electronic device may be obtained through division according to the above-mentioned method examples. For example, functional modules may be obtained through division corresponding to various functions, or two or more functions may be integrated into one processing module. The integrated modules may be implemented in the form of hardware. It should be noted that in the embodiment, the division into modules is an example and is merely a logical functional division. In actual implementation, other division methods may be used.
[0298] The embodiment further provides a computer-readable storage medium, which stores computer instructions that, when executed on an electronic device, cause the electronic device to perform associated method steps to implement the multi-window display method in the aforementioned embodiment.
[0299] The embodiments further provide a computer program product, which, when run on a computer, causes the computer to execute relevant steps to implement the multi-window display method in the aforementioned embodiments.
[0300] In addition, an embodiment of the present application further provides an apparatus. The apparatus may be, in particular, a chip, a component, or a module. The apparatus may include a processor and a memory connected to each other. The memory is configured to store computer-executable instructions. When the apparatus runs, the processor may execute the computer-executable instructions stored in the memory, so that the chip performs the multi-window display method in the above-mentioned method embodiment.
[0301] The electronic device, computer storage medium, computer program product, or chip provided in the embodiments is configured to execute the corresponding method provided above. Therefore, for the advantageous effects that can be achieved by the electronic device, computer storage medium, computer program product, or chip, please refer to the advantageous effects of the corresponding method provided above. The details will not be described again here.
[0302] The above description of the implementation allows those skilled in the art to understand that for convenience and simplicity of description, the above division into functional modules is merely an example for explanation purposes. In actual applications, the above functions can be allocated to different modules according to requirements, that is, the internal structure of the device can be divided into different functional modules to perform all or part of the above functions.
[0303] In some embodiments provided in the present application, it should be understood that the disclosed devices and methods may be implemented in other ways. For example, the described device embodiments are merely examples. For example, division into modules or units is merely a logical functional division. In actual implementation, other division methods may exist. For example, multiple units or components may be combined or integrated into other devices, or some features may be ignored or not implemented. In addition, the shown or discussed mutual couplings or direct couplings or communication connections may be implemented by using some interfaces. Indirect couplings or communication connections between devices or units may be implemented electronically, mechanically, or in other forms.
[0304] Units described as separate parts may or may not be physically separate, and parts shown as units may be one or more physical units, located in one place or distributed in different places, and some or all of the units may be selected based on actual requirements to achieve the objectives of the solutions of the embodiments.
[0305] In addition, the functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit. The integrated unit may be implemented in the form of hardware or in the form of a software functional unit.
[0306] When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, the integrated unit may be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present application may essentially be implemented in the form of a software product, or a portion of the technical solutions may be implemented in the form of a software product. The software product is stored in a storage medium and includes several instructions for instructing a device (which may be a single-chip microcomputer, a chip, etc.) or a processor to perform all or part of the steps of the methods described in the embodiments of the present application. The aforementioned storage medium includes any medium capable of storing program code, such as a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0307] The above content is merely a specific implementation of the embodiments of the present application, but is not intended to limit the protection scope of the embodiments of the present application. Any modifications or replacements that are easily understood by those skilled in the art within the technical scope disclosed in the embodiments of the present application shall be included in the protection scope of the embodiments of the present application. Therefore, the protection scope of the embodiments of the present application should be subject to the protection scope of the claims.
Claims
1. establishing a connection by the first electronic device to a second electronic device; receiving, by the first electronic device, first interface information transmitted by the second electronic device; displaying a first window by the first electronic device and displaying a first interface in the first window based on the first interface information, the first interface including an application icon of a first application, size information of the first window being determined by the second electronic device based on size information corresponding to the first interface, the size information corresponding to the first interface being a product of size information of a display area of the second electronic device and a first multiple, the first multiple being greater than 0 and not equal to 1; receiving, by the first electronic device, a first operation on the application icon of the first application; sending, by the first electronic device, a first operation command to the second electronic device in response to the first operation, the first operation command being used to enable the second electronic device to start the first application; receiving, by the first electronic device, second interface information of the first application transmitted by the second electronic device; displaying, by the first electronic device, a second window for the first application and displaying a second interface in the second window according to the second interface information, wherein the first window includes a first menu bar, the second window includes a second menu bar, and the second menu bar includes a close key; receiving, by the first electronic device, a fourth operation on the close key; by the first electronic device, closing the second window in response to the fourth operation and sending a second operation command to the second electronic device, the second operation command being used to instruct the second electronic device to close the first application, so that the first application on the second electronic device is executed in the background or terminated; A method comprising:
2. After receiving second interface information by the first electronic device and before displaying the second window by the first electronic device, the method includes: displaying, by the first electronic device, the second interface in the first window according to the second interface information; receiving a second operation by the first electronic device; Further comprising: The step of displaying a second window by the first electronic device and displaying a second interface in the second window according to the second interface information includes: displaying the first interface in the first window in response to the second operation, displaying the second window, and displaying the second interface in the second window according to the second interface information; The method of claim 1 , comprising:
3. the first application is a video application; 3. The method according to claim 1 or 2.
4. the first window and the second window are the same size, or the first window and the second window are different sizes; 4. The method according to any one of claims 1 to 3.
5. The second window includes a second menu bar, and the second menu bar includes a maximize key. After displaying the second window by the first electronic device, the method includes: receiving, by the first electronic device, a third operation on the maximize key; displaying, by the first electronic device, the second window in full screen in response to the third operation; The method of claim 1 further comprising:
6. the first interface is an interface displayed by the second electronic device, or the second interface is an interface displayed by the second electronic device; 6. The method according to any one of claims 1 to 5.
7. The size of the second interface of the second window is N times the size of the display area of the second electronic device, where N is greater than 0; 7. The method according to any one of claims 1 to 6.
8. the second window includes a second menu bar, the second menu bar includes a hide key to a sidebar, and after displaying the second window by the first electronic device, the method includes: receiving, by the first electronic device, a fifth operation on a hide key for the sidebar of the second window; hiding the second window by the first electronic device in response to the fifth operation; The method of claim 1 further comprising:
9. The first electronic device is a PC and the second electronic device is a mobile phone.
9. The method according to any one of claims 1 to 8.
10. The method comprises: receiving, by the first electronic device, a seventh operation by the user to move the first window, and changing, by the first electronic device, a display position of the first window in response to the seventh operation; and / or receiving, by the first electronic device, a seventh operation by the user to move the second window, and changing, by the first electronic device, a display position of the second window in response to the seventh operation; The method of claim 1 , further comprising:
11. the connection between the first electronic device and the second electronic device is a Wi-Fi connection, a short-range connection established through near-field communication, or a connection established through Bluetooth code scanning; 11. The method according to any one of claims 1 to 10.
12. 12. An electronic device comprising one or more processors, a memory, a plurality of application programs, and one or more programs stored in the memory, the one or more programs being capable of performing the method of any one of claims 1 to 11 when executed by the processor. Electronic devices.
13. A computer readable storage medium containing computer instructions, which when executed on an electronic device, enable the electronic device to perform the method of any one of claims 1 to 11. A computer-readable storage medium.
14. A computer program, when executed on a computer, enabling the computer to carry out the method according to any one of claims 1 to 11. Computer program.
Citation Information
Patent Citations
Display method and related device
CN110471639A
Picture display system, display device, and recording medium
JP1998333871A
Menu whose geometry is bounded by two radii and an arc
JP2005018792A
Management method of screen state of computer and mobile communication terminal for controlling touch screen type mobile communication terminal by computer
JP2013143137A
Information processing apparatus and information processing method
JP2015012512A