WO2023241624A1 - 控制跨设备应用的方法以及电子设备 - Google Patents

控制跨设备应用的方法以及电子设备 Download PDF

Info

Publication number
WO2023241624A1
WO2023241624A1 PCT/CN2023/100200 CN2023100200W WO2023241624A1 WO 2023241624 A1 WO2023241624 A1 WO 2023241624A1 CN 2023100200 W CN2023100200 W CN 2023100200W WO 2023241624 A1 WO2023241624 A1 WO 2023241624A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
information
applications
control instruction
distributed database
Prior art date
Application number
PCT/CN2023/100200
Other languages
English (en)
French (fr)
Inventor
夏永霖
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023241624A1 publication Critical patent/WO2023241624A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/76Adapting program code to run in a different environment; Porting

Definitions

  • the above method further includes: the first device receiving a third operation from the user, and the third operation is used to instruct the first device to display a third application of the second device.
  • the above method further includes: the first device receives a first control instruction from a third device, and the third device is a control device; the first device responds to the first control The instruction controls the movement of the cursor on the display interface of the first device, or the first device controls the sliding of the display interface of the first device in response to the first control instruction.
  • a method for controlling cross-device applications including: the second device obtains application information of at least one first application, where the application information includes at least one of an application name, an application icon, and an application type; and the second device stores the third application.
  • the application information of an application is transferred to a second distributed database.
  • the second distributed database can perform data synchronization with the first distributed database.
  • the second distributed data can be set in the second device.
  • the first distributed database is set in the first distributed database. in the device.
  • the above method further includes: the second device receives from The user performs a first operation, and the first operation is used to instruct the second device to store the application information of the first application in the second distributed database.
  • the above method further includes: the second device receives a second operation from the user, the second operation is used to instruct the second device to generate a list of applications prohibited from sharing; second The application list that is prohibited from sharing is generated by the device. The application list that is prohibited from sharing is used by the first device to filter the application information of the first application to obtain the second application.
  • the second application belongs to a subset of the first application, and the second application belongs to the second application.
  • the second device has a list of applications that are allowed to be shared; the second device sends a list of applications that are prohibited from sharing to the server, and the first device can obtain the list of applications that are prohibited from sharing from the server.
  • the second device receives first information from the first device, the first information includes application information of the third application and hardware capabilities of the first device, and the third application A second application belonging to the second device; the second device determines the screencasting data of the third application, and the screencasting data of the third application includes the display strategy of the third application; the second device sends the second information to the first device, and the second The information includes screen projection data of the third application, and the third application can call the hardware capabilities of the first device.
  • a method for controlling cross-device applications including: a third device receives a first operation from a user, and the third device generates a first control instruction according to the first operation; and the third device generates a first control instruction according to the first operation. type and the first control instruction to generate a second control instruction; the third device sends the second control instruction to the first device, and the first control instruction is used to instruct the movement of the cursor on the display interface of the first device, or the first control instruction Used to indicate sliding of the display interface of the first device.
  • the technical solution of this application selects an appropriate application control method based on the device's control capabilities, supports the control of cross-platform applications, and supports multiple operation methods such as button and touch controls.
  • an electronic device including: a transceiver module, configured to obtain application information of the first application of the second device from a first distributed database, where the first distributed database is located on the first device, and the first distributed The database can perform data synchronization with the second distributed database.
  • the second distributed database is located on the second device.
  • the application information includes at least one of application name, application icon, and application type.
  • the processing module is used to display the first interface.
  • An interface includes a second application of a second device, the second application belonging to a subset of the first application.
  • the transceiver module is further configured to receive a first operation from the user, where the first operation is used to instruct the first device to display the second application of the second device.
  • the transceiver module is also used to obtain a list of applications that are prohibited from being shared by the second device.
  • the list of applications that are prohibited from being shared by the second device is the list of applications that are prohibited from being shared by the second device according to the user's second operation.
  • the generated processing module is also used to filter the application information of the first application according to the application list prohibited from sharing by the second device, and obtain the second application.
  • the second application belongs to the application list allowed to be shared by the second device.
  • the transceiver module is also used to obtain first information from the second device, where the first information includes screencast data of a third application, and the third application belongs to the second application.
  • the screen projection data of the third application includes the display strategy of the third application;
  • the processing module is also used to display the second interface according to the first information, the second interface includes the third application, and the third application can call the hardware capabilities of the first device .
  • the transceiver module is further configured to receive a third operation from the user, where the third operation is used to instruct the first device to display a third application of the second device.
  • the transceiver module is also configured to send second information to the second device, where the second information includes application information of the third application and hardware capabilities of the first device.
  • the second information is used by the second device to generate the first information.
  • the transceiver module is further configured to receive a first control instruction from a third device, where the third device is a control device; and the processing module is further configured to respond to the The first control instruction controls the movement of the cursor on the display interface of the first device, or controls the sliding of the display interface of the first device.
  • the first control instruction is generated by the third device according to the second control instruction
  • the second control instruction is generated by the third device according to the fourth operation of the user.
  • an electronic device including: a transceiver module, configured to obtain application information of a first application, where the application information includes at least one of an application name, an application icon, and an application type; and a processing module, configured to store the first application.
  • the application information of an application is sent to the first distributed database.
  • the first distributed database can perform data synchronization with the second distributed database.
  • the first distributed data can be set in the second device, and the second distributed database is set in the first device. in the device.
  • the transceiver module is also configured to receive a first operation from the user, and the first operation is used to instruct the second device to store application information of multiple applications in the first distributed database.
  • the transceiver module is also used to receive a second operation from the user, and the second operation is used to instruct the second device to generate a list of applications prohibited from sharing; the second device generates The application list that is prohibited from sharing is used by the first device to filter the application information of the first application to obtain the second application.
  • the second application belongs to a subset of the first application and the second application belongs to the second device.
  • the list of applications that are allowed to be shared; the sending and receiving module is also used to send the list of applications that are prohibited from sharing.
  • the transceiver module is also configured to receive first information from the first device, where the first information includes application information of the third application and hardware capabilities of the first device,
  • the third application belongs to the second application of the second device;
  • the processing module is used to determine the screen projection data of the third application, and the screen projection data of the third application includes the display strategy of the first application;
  • the transceiver module is also used to send the data to the first application.
  • the device sends second information, the second information includes the screen projection data of the third application, and the third application can call the hardware capabilities of the first device.
  • an electronic device including: a transceiver module, configured to receive a first operation from a user; and a processing module, configured to generate a first control instruction according to the first operation, according to the type of the first device and the first operation.
  • a control instruction generates a second control instruction; the transceiver module is also used to send a second control instruction to the first device, and the first control instruction is used to instruct the movement of the cursor on the display interface of the first device, or the first control instruction Used to indicate sliding of the display interface of the first device.
  • a seventh aspect provides a chip.
  • the chip includes a processor and a data interface.
  • the processor reads instructions stored in the memory through the data interface and executes the method in any one of the above-mentioned first to third aspects.
  • the chip may also include a memory, in which instructions are stored, and the processor is used to execute the instructions stored in the memory.
  • the processor is used to execute the first to third aspects. method in any implementation.
  • a ninth aspect provides a computer program product containing instructions, which when the computer program product is run on a computer, causes the computer to execute the method in any one of the above-mentioned implementations of the first to third aspects.
  • a terminal device including a module for executing any possible implementation manner of the above-mentioned first to third aspects.
  • a communication device in a fourteenth aspect, includes: at least one processor and a communication interface.
  • the communication interface is used for information exchange between the communication device and other communication devices.
  • the program instructions When executed in at least one processor, the communication device is caused to implement the method described in any possible implementation manner of the first to third aspects.
  • a processor includes: at least one circuit for executing the method described in any of the possible implementations of the first to third aspects.
  • Figure 1 is a schematic diagram of the two current methods of screencasting between devices.
  • Figure 3 is a system architecture applicable to the method for controlling cross-device applications provided by the embodiment of the present application.
  • FIG. 5 is a schematic diagram of the hardware structure of an electronic device provided by an embodiment of the present application.
  • Figure 6 is a schematic flow chart of a method for controlling cross-device applications provided by an embodiment of the present application.
  • FIG. 8 is an architectural diagram applicable to the specific example of the method for controlling cross-device application provided by the embodiment of the present application.
  • Figure 9 is an example user interface diagram of a specific example of a method for controlling cross-device applications provided by the embodiment of the present application.
  • Figure 10 is another user interface diagram illustrating a specific example of a method for controlling cross-device applications provided by an embodiment of the present application.
  • Figure 11 is another schematic flow chart of a specific example of a method for controlling cross-device applications provided by the embodiment of the present application.
  • Figure 13 is another schematic flow chart of a specific example of a method for controlling cross-device applications provided by the embodiment of the present application.
  • Figure 14 is an example user interface diagram of a specific example of a method for controlling cross-device applications provided by the embodiment of the present application.
  • Figure 1 shows a schematic diagram of two current methods of screencasting between devices.
  • the current mainstream methods of screen mirroring between devices mainly include file-based screen mirroring and screen mirroring-based screen mirroring.
  • the file-based screencasting method is only suitable for pushing videos, audios, pictures and other files to other devices for display, such as the Digital Living Network Alliance (DLNA) protocol screencasting method shown in Figure 1(a), mobile phone 110 It is located in the same local area network as the television (TV) end 120, and each other performs device discovery, content push, status synchronization, etc. through the DLNA receiver.
  • DLNA Digital Living Network Alliance
  • the file-based screencasting method relies more on the screencasting ability of the application to provide relevant content.
  • it does not support screencasting to other pages of the application, has restrictions on the displayed content, and cannot meet the diverse needs of users for using applications.
  • the screen casting method based on screen mirroring can send the display content of the sending device to the receiving device for display through mirroring.
  • the display content of the sending device and the receiving device is completely consistent.
  • the sending device 130 compresses the synthesized image into a video code that complies with the digital video compression format standard H.264, compresses the intercepted audio into an audio code that complies with the advanced audio coding (AAC) standard, and converts the image
  • AAC advanced audio coding
  • the code and audio code are mixed into a data transport stream (TS) and then transmitted to the receiving device 140 through the real time streaming protocol (RTSP) protocol.
  • RTSP real time streaming protocol
  • the receiving device 140 receives the TS stream through the RTSP protocol and processes the TS stream.
  • both the first device 201 and the second device 202 must have the same application installed (for example, the same browser).
  • This method synchronizes the data content of the application and does not support the data content on the first device 201.
  • the application is migrated to the second device 202 to run.
  • the user cannot actively select the application of the first device 201 to open and run on the second device 202, and must first operate the second device 202.
  • the second device 202 is operated to receive, which makes cross-device interaction complicated.
  • FIG 4 shows three specific implementation modes provided by this application. With reference to Figure 4, three specific implementation modes provided by this application are described. Many modifications and other embodiments of the present application will occur to those skilled in the art, having the benefit of the guidance presented in the foregoing description and associated drawings. Therefore, it is to be understood that the application is not limited to the specific embodiments disclosed.
  • the sending device can be the user's mobile phone.
  • the application runs on the mobile phone.
  • the sending device can wirelessly connect to the receiving device and display the application icon, application Name, package name and other information are sent to the receiving device;
  • the receiving device can be a large display screen.
  • the application interface supports adapting to the receiving device screen and supports horizontal screen, vertical screen, split screen and other display modes. Supports application management, black and white list control, etc.;
  • the control device can be a remote control panel or a mobile phone, responsible for application control, and supports multiple interaction methods such as buttons, touch, and sliding.
  • this application can also support multiple sending devices corresponding to one receiving device.
  • Each receiving device corresponds to one control device.
  • the sending device 401 and the sending device 404 simultaneously correspond to the receiving device 402.
  • the user can access the application 1 (for example, video) of the sending device 401 on the receiving device 402 at the same time.
  • Application) and Application 2 of the sending device 404 (for example, a navigation application), wherein Application 1 of the sending device 401 is displayed on the window 1 of the receiving device 402, and Application 2 of the sending device 404 is displayed on the window 2 of the receiving device 402.
  • the user can control Application 1 and/or Application 2 displayed on the receiving device 402 through the control device 403 corresponding to the receiving device 402 .
  • the electronic device 500 may include: a processor 510, an external memory interface 520, an internal memory 521, a universal serial bus (USB) interface 530, a charging management module 540, a power management module 541, a battery 542, an antenna 1, an antenna 2.
  • SIM subscriber identification module
  • the sensor module 580 may include a pressure sensor 580A, a gyro sensor 580B, an air pressure sensor 580C, a magnetic sensor 580D, an acceleration sensor 580E, a distance sensor 580F, a proximity light sensor 580G, a fingerprint sensor 580H, a temperature sensor 580J, a touch sensor 580K, and ambient light.
  • the processor 510 may include one or more processing units.
  • the processor 510 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (GPU), and an image signal processor. (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural network processing unit (NPU), etc.
  • image signal processor, ISP image signal processor
  • controller video codec
  • digital signal processor digital signal processor
  • NPU neural network processing unit
  • different processing units can be independent components or integrated in one or more processors.
  • electronic device 500 may also include one or more processors 510.
  • the controller can generate operation control signals based on the instruction operation code and timing signals to complete the control of fetching and executing instructions.
  • the processor 510 may also be provided with a memory for storing instructions and data.
  • processor 510 may include one or more interfaces.
  • Interfaces may include inter-integrated circuit (I2C) interface, inter-integrated circuit audio (inter-integrated circuit sound, I2S) interface, pulse code modulation (PCM) interface, universal asynchronous receiver and transmitter (universal asynchronous receiver/transmitter (UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, SIM card interface, and/or USB interface, etc.
  • the USB interface is an interface that complies with the USB standard specification, and can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc.
  • the USB interface can be used to connect a charger to charge the electronic device 500, and can also be used to transmit data between the electronic device 500 and peripheral devices.
  • the USB interface can also be used to connect headphones to play audio through the headphones.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in electronic device 500 may be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example: Antenna 1 can be reused as a diversity antenna for a wireless LAN. In other embodiments, antennas may be used in conjunction with tuning switches.
  • the wireless communication module 560 can provide applications on the electronic device 500 including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) network), Bluetooth (bluetooth, BT), and global navigation satellites. Wireless communication solutions such as global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (infrared, IR), etc.
  • the wireless communication module 560 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 560 receives electromagnetic waves via the antenna 2 , frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 510 .
  • the wireless communication module 560 can also receive the signal to be sent from the processor 510, frequency modulate it, amplify it, and convert it into electromagnetic waves through the antenna 2 for radiation.
  • the electronic device 500 implements display functions through a GPU, a display screen 594, an application processor, and the like.
  • the GPU is an image processing microprocessor and is connected to the display screen 594 and the application processor. GPUs are used to perform mathematical and geometric calculations for graphics rendering.
  • Processor 510 may include one or more GPUs that execute program instructions to generate or change display information. interest.
  • the display screen 594 is used to display images, videos, etc.
  • Display 594 includes a display panel.
  • the electronic device 500 may include 1 or N display screens 594, where N is a positive integer greater than 1.
  • the electronic device 500 can implement the shooting function through an ISP, a camera 593, a video codec, a GPU, a display screen 594, and an application processor.
  • Camera 593 is used to capture still images or video.
  • the object passes through the lens to produce an optical image that is projected onto the photosensitive element.
  • the photosensitive element converts the optical signal into an electrical signal, and then passes the electrical signal to the ISP to convert it into a digital image signal.
  • ISP outputs digital image signals to DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other format image signals.
  • the electronic device 500 may include 1 or N cameras 593, where N is a positive integer greater than 1.
  • Speaker 570A also known as “speaker” is used to convert audio electrical signals into sound signals.
  • Electronic device 500 can listen to music through speaker 570A, or listen to hands-free calls.
  • Microphone 570C also known as “microphone” and “microphone”, is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak close to the microphone 570C with the human mouth and input the sound signal to the microphone 570C.
  • the electronic device 500 may be provided with at least one microphone 570C. In other embodiments, the electronic device 500 may be provided with two microphones 570C, which in addition to collecting sound signals, may also implement a noise reduction function. In other embodiments, the electronic device 500 can also be equipped with three, four or more microphones 570C to collect sound signals, reduce noise, identify sound sources, and implement directional recording functions, etc.
  • the electronic device may be a portable electronic device that also includes other functions such as a personal digital assistant and/or a music player function, such as a mobile phone, a tablet computer, a wearable electronic device with wireless communication functions (such as a smart watch) , video players, headphones, speakers, cameras, etc.
  • portable electronic devices include, but are not limited to, carrying Or portable electronic devices with other operating systems.
  • the above-mentioned portable electronic device may also be other portable electronic devices, such as a laptop computer (Laptop). It should also be understood that in other embodiments, the above-mentioned electronic device may not be a portable electronic device, but a desktop computer, a television, a speaker, a camera, etc.
  • Figure 6 shows a schematic flowchart of an example of a method for controlling cross-device applications provided by an embodiment of the present application.
  • the first device obtains application information of at least one first application of the second device from the first distributed database.
  • the first distributed database is located on the first device.
  • the first distributed database can perform data synchronization with the second distributed database.
  • the second distributed database is located on the second device, and the application information includes at least one of an application name, an application icon, and an application type.
  • the first device may be a device with application receiving capabilities such as a large screen, a cockpit, or a display; the second device may be a device with application sharing capabilities such as a mobile phone; and the first application may include multiple applications.
  • the first device displays a first interface, the first interface includes a second application of the second device, and the second application belongs to a subset of the first application.
  • the above method further includes the first device receiving a first operation from the user, and the first operation is used to instruct the first device to display the second application of the second device.
  • the first operation may be that the user logs in with a first account on the first device, and the first account is the account that the user logs in on the second device.
  • the first operation may also be that the user displays on the first device First device of two For QR code, the second device is used to scan the QR code of the first device.
  • the first operation can also be for the user to board the cockpit of the vehicle, that is, the driver gets in the vehicle.
  • the above method further includes: the first device obtains first information from the second device, the first information includes screencasting data of a third application, the third application belongs to the second application, and the screencasting data of the third application includes the third application.
  • Three-application display strategy the first device displays a second interface according to the first information, the second interface includes a third application, and the third application can call the hardware capabilities of the first device. In doing so, applications can be supported to directly use various hardware capabilities of the receiving device (the first device).
  • the above method further includes: the first device sends second information to the second device, the second information includes application information of the third application and hardware capabilities of the first device, and the second information is used by the second device to generate the first information.
  • the display policy can be specified according to the hardware capabilities of the receiving device, thereby supporting the third application to adapt the display to the receiving device resolution, receiving device screen size and layout method.
  • the above method also includes: the first device receives a first control instruction from a third device, and the third device is a control device; and the first device controls the position of the cursor on the display interface of the first device in response to the first control instruction. Move, or the first device controls sliding of the display interface of the first device in response to the first control instruction.
  • the first control instruction is generated by the third device based on the second control instruction
  • the second control instruction is generated by the third device based on the user's fourth operation.
  • the appropriate application control method is selected based on the device's control capabilities, supporting the control of cross-platform applications, and supporting multiple operation methods such as buttons and touch.
  • FIG. 7 shows a schematic diagram of a specific example of the method for controlling cross-device applications provided by the embodiment of the present application.
  • the sending device 401 may be the second device described in FIG. 6
  • the receiving device 402 may be the first device described in FIG. 6 .
  • the sending device 401 is powered on and writes the application information into the second distributed database.
  • the receiving device 402 may receive a second operation from the user, and the second operation is used to instruct the receiving device 402 to display a list of applications that the sending device 401 allows sharing.
  • the second operation can have the following forms:
  • the account logged in by the user on the receiving device 402 and the account logged in on the sending device 401 are the same account.
  • the user's login using an account on the receiving device 402 may also include the user switching the account logged in on the receiving device 402 to the account logged in on the sending device 401 .
  • the user can use the sending device 401 to scan the QR code identification of the receiving device 402, thereby establishing a connection with the receiving device 402.
  • the receiving device 402 can be the cockpit of the vehicle, and the user can set a sending device corresponding to the receiving device 402 (cabin) in advance, such as the sending device 401.
  • the receiving device 402 (cabin) )'s car-machine exclusive subsystem can notify the collaborative configuration service module of the receiving device 402 (cockpit) to get on the car, so that the receiving device 402 can discover that the sending device 401 set by the user in advance is online, and actively seek to establish an agreement with the sending device 401 connect.
  • the soft bus is located in the Hongmeng unified device interconnection system, which may also include a device management module and a device authentication module.
  • the device management module of the receiving device 402 can send a notification to the super desktop in the desktop launcher, notifying that the sending device 401 is online and can synchronize application data.
  • the receiving device 402 calls the remote service module to start synchronizing the application information of the sending device 401.
  • S760 The receiving device 402 calls the super desktop to display the first interface.
  • this application there is no need to modify existing applications, and it supports displaying application lists from different devices on the current device, enabling users to perform cross-device application management and seamlessly use applications installed on other devices on the current device.
  • FIG. 8 shows an example of the overall architecture diagram of the method for controlling cross-device applications provided by the embodiment of the present application.
  • FIG. 8 takes the receiving device as a large screen and the sending device as a mobile phone as an example to show the architecture diagram provided by the embodiment of the present application.
  • the architecture diagram shown in Figure 8 can be used to implement the method described in Figure 7.
  • the architecture 800 includes a large-screen dedicated cloud server 801, a desktop launcher 802, a collaborative configuration management service module 803, a hyper terminal 804, and a Hongmeng unified device interconnection system 805.
  • the desktop launcher 802 is located in the application layer of the system and is responsible for the connection and display of the super desktop.
  • the desktop launcher 802 is used for synchronization and classification display of mobile applications, as well as remote startup and display of mobile applications. List management.
  • the collaborative configuration management service module 803 is used to provide atomization capabilities for collaborative services including application migration management capabilities and hardware migration management capabilities.
  • the application migration management capabilities include application migration capabilities, feature capability (FA) migration capabilities and windows. Migration capabilities, etc.
  • Hardware migration management capabilities include audio migration capabilities, camera migration capabilities and migration rules.
  • HyperTerminal 804 is used to provide global package management capabilities, distributed multi-screen and multi-window management capabilities, and distributed hardware management capabilities.
  • the global package management capability mainly includes the global package information synchronization capability, and the global package information includes application information.
  • the application can be an Android application or a Hongmeng application, etc.
  • Distributed multi-screen and multi-window management capabilities include the ability to support the "horizontal screen", "parallel view” and "vertical screen” window display adaptability of mobile phone applications on large-screen devices.
  • Hongmeng unified device interconnection system 805 includes a device management module and a soft bus. The device management module is used to provide the capability of proximity discovery between devices, and the soft bus is used for communication between modules.
  • Hongmeng The distributed interconnection technology based on Hongmeng supports device discovery, connection and authentication.
  • Application data synchronization relies on distributed data technology.
  • Application adaptation, application migration and hardware migration capabilities rely on collaborative configuration.
  • Management services and application control capabilities rely on adaptive application control services.
  • it can also be implemented based on other systems, such as the one mentioned above or other operating systems, which are not limited in this application.
  • FIG. 9 shows an example user interface diagram of a specific example of a method for controlling cross-device applications provided by the embodiment of the present application.
  • the receiving device 402 can obtain the application information of the sending device 401 (for example, the sending device 401 can be a mobile phone, and the model can be Mate 40) according to the user's operation, thereby displaying the first interface.
  • the first interface includes a list of applications that the sending device 401 allows sharing.
  • the super desktop module in the desktop launcher of the receiving device 402 is responsible for displaying the application list on the sending device 401 .
  • the display interface supports the layout of interface elements.
  • the first row can display commonly used applications.
  • the first row can display up to M recently used applications. For example, the number of commonly used applications shown in the figure is 4, that is, M is 4.
  • M can vary according to the size of the page and the application icon.
  • M can also be 5, 6, or 7, which is not limited in this application.
  • the second row can display other application icons of the device.
  • the application icons displayed in the second row may be arranged from A to Z according to the first letters of the application names.
  • Figure 10 is another user interface diagram illustrating a specific example of a method for controlling cross-device applications provided by an embodiment of the present application.
  • the receiving device 402 can be connected to multiple sending devices at the same time, that is, the number of sending devices 401 can be one or more.
  • the user may take operations on the receiving device 402 to switch to the sending device.
  • the user can click the OK key on the keyboard tabulator key (Tab) on the receiving device 402, and a drop-down menu as shown in Figure 10 will appear.
  • the menu displays a list of switchable sending devices, and the list can It includes multiple sending devices, for example, sending device 401, sending device 404, and sending device 407.
  • their models may be Mate 40, P50, or Mate 30Pro, etc.
  • the user can start an application on the first interface displayed by the receiving device 402.
  • the application can be one of the application lists allowed to be shared by the sending device 401. For convenience of description, it can be called the first application.
  • the receiving device 402 sends the first information to the sending device 401.
  • the first information includes application information of the first application and hardware capabilities of the receiving device 402 .
  • the hardware capabilities of the device include the device's microphone capabilities, voice capabilities, camera capabilities, etc.
  • the receiving device 402 can call the collaborative configuration service module to send the above-mentioned first information to the sending device 401.
  • the first information is used to instruct the collaborative configuration service module of the sending device 401 to call the distributed window management service (DWMS). ) creates a virtual display (display), and instructs the distributed hardware platform of the sending device 401 to perform hardware negotiation with the distributed hardware platform of the receiving device 402, thereby obtaining the hardware capabilities of the receiving device 402.
  • DWMS distributed window management service
  • the collaborative configuration service module of the sending device 401 calculates the display strategy of the first application (for example, parallel view, horizontal screen display, etc.) based on the hardware capabilities of the first application and the receiving device 402.
  • the sending device 401 starts the application.
  • the collaborative configuration service module of the sending device 401 can call the AMS interface to start the first application, and send the first application to the virtual display for display.
  • S1150 The sending device 401 starts screencasting.
  • the sending device 401 can call the distributed window management module to prepare to project the virtual display to the receiving device 402.
  • the sending device 401 sends the screen projection data to the receiving device 402.
  • the sending device 401 may send second information to the receiving device 402.
  • the second information includes the screencast data of the first application, and the screencast data of the first application includes the first application determined by the sending device 401 based on the first information. display strategy.
  • the receiving device 402 may display a second interface, the second interface includes a first application, and the first application is capable of calling hardware capabilities of the receiving device 402. For example, when the receiving device is a large-screen device, it supports the application of 4K resolution display. If it is a tablet, it can support the first application of 2K resolution display.
  • the first application can use the receiving device's microphone to For application recording, you can use the speaker of the receiving device for playback, the camera for recording, the global positioning system (GPS) for positioning, and so on.
  • GPS global positioning system
  • the technical solution provided by this application can support the application of the sending device to adapt the display to the resolution, device screen size and layout of the receiving device. Furthermore, it can support the application of the sending device to directly use the hardware capabilities of the receiving device.
  • Figure 12 is a schematic interaction diagram of an example of a method for controlling cross-device applications provided by an embodiment of the present application.
  • This embodiment outputs an example method of controlling an application belonging to the sending device displayed on the receiving device through the control device.
  • the applications on the sending device 401 and the receiving device 402 can be applications on different platforms, such as Hongmeng applications or Android applications.
  • the commands supported by the control device 403 itself are also related to the device platform. Therefore, the applications on different devices support The control instructions are completely different and require unified adaptation and conversion.
  • the touch panel on the control device 403 sends the touch event to the control command adapter on the control device 403.
  • control device 403 may generate a second control instruction (for example, a touch event) according to the user's third operation on the touch panel.
  • a second control instruction for example, a touch event
  • the control device 403 includes physical buttons
  • the user can also perform a third operation on the physical buttons to generate a second control instruction (key event).
  • control device 403 converts the touch event into a unified command event.
  • the manipulation command adapter in the control device 403 converts the second control command (eg, touch event) into the first control command (unified command event) according to the type of the receiving device 402 .
  • control device 403 sends the control instruction to the receiving device 402.
  • control device 403 may send the converted first control instruction (unified command event) to the distributed fusion sensing platform of the receiving device 402.
  • the receiving device 402 sends the control instruction information to the instruction receiver.
  • the information of the control instruction includes parameters such as the type of the control instruction, the coordinate position of the control instruction, and the movement speed of the control instruction.
  • the receiving device 402 can also perform S1241 to inject the control instruction into the system input service manager.
  • the distributed fusion sensing platform in the receiving device 402 obtains the first control instruction sent by the control device 403, sends the information of the first control instruction to the system input service manager, and the system input service manager transmits the first control instruction Distributed to upper-layer applications for processing.
  • the user's key events or movement events are converted on the control device and adapted to receive control instructions that the device should execute, thereby supporting the user's cross-platform control of the application.
  • Figure 14 is an example user interface diagram of a specific example of a method for controlling cross-device applications provided by the embodiment of the present application. As shown in Figure 14, the user can operate within a designated area on the control device 403, and control the cursor displayed on the receiving device 402 to move to the highlighted picture (for example, picture 7).
  • the highlighted picture for example, picture 7
  • the disclosed systems, devices and methods can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented.
  • the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请提供了一种控制跨设备应用的方法,包括:第一设备从第一分布式数据库获取第二设备的至少一个第一应用的应用信息,第一分布式数据库位于第一设备,第一分布式数据库能够与第二分布式数据库进行数据同步,第二分布式数据库位于第二设备,应用信息包括应用名称、应用图标、应用类型中的至少一种。第一设备显示第一界面,第一界面包括第二设备的第二应用,第二应用属于第一应用的子集。根据本申请的技术方案,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。

Description

控制跨设备应用的方法以及电子设备
本申请要求于2022年6月16日提交中国专利局、申请号为202210682462.0、申请名称为“控制跨设备应用的方法以及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及电子设备领域,并且更具体地,涉及一种控制跨设备应用的方法以及电子设备。
背景技术
随着电子设备的普及,每个用户通常同时存在多个智能电子设备,包括手机、平板、智慧屏、个人电脑(personal computer,PC)、智能音箱以及智能座舱等,这些设备上安装的应用不尽相同,而且在不同设备上可以应用的使用和控制也存在差别。例如,大屏上的应用需要支持遥控器控制,而手机上的应用无法直接在大屏上使用。
当前,用户不满足于仅在单一设备上来操作和管理应用。但是,在分布式多设备交互的场景,跨设备使用应用,会受到不同系统、应用适配、数据同步等一系列问题限制。例如,用户在手机上看视频、玩游戏,回到家希望直接在大屏上继续使用应用,但是大屏上的应用往往没有对应的手机应用,如直播、游戏应用等,无法在大屏上操作。又例如,用户在上车驾驶时希望继续听手机的音乐,但由于座舱上没有安装对应的应用,需要用户切换到手机上执行应用操作,频繁切换设备操作应用,用户体验差。
因此,亟需一种控制跨设备应用的方法,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
发明内容
本申请提供一种控制跨设备应用的方法以及电子设备,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
第一方面,提供了一种控制跨设备应用的方法,包括:第一设备从第一分布式数据库获取第二设备的至少一个第一应用的应用信息,第一分布式数据库位于第一设备,第一分布式数据库能够与第二分布式数据库进行数据同步,第二分布式数据库位于第二设备,应用信息包括应用名称、应用图标、应用类型中的至少一种;第一设备显示第一界面,第一界面包括第二设备的第二应用,第二应用属于第一应用的子集。其中,第一应用可以是多个应用,第二应用也可以是一个或多个应用,子集也可以是全集,即第二应用为至少一个第一应用中的部分或全部应用。
根据本申请的技术方案,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:第一设备接收来自用户的第一操作,第一操作用于指示第一设备显示第二设备的第二应用。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:第一设备获取第二设备允许分享的应用列表和/或禁止分享的应用列表,第二设备允许分享的应用列表和/或禁止分享的应用列表是第二设备根据用户的第二操作生成的;第一设备根据第二设备允许分享的应用列表和/或禁止分享的应用列表对第一应用的应用信息进行筛选,得到第二应用,第二应用属于第二设备允许分享的应用列表。这样做,能够根据用户的意愿,将允许分享的应用列表展示在接收设备(第一设备)上,保证用户的数据安全,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:第一设备从第二设备获取第一信息,第一信息包括第三应用的投屏数据,第三应用属于第二应用,第三应用的投屏数据包括第三应用的显示策略;第一设备根据第一信息显示第二界面,第二界面包括第三应用,第三应用能够调用第一设备的硬件能力。这样做,可以支持应用直接使用接收设备(第一设备)的各种硬件能力。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:第一设备接收来自用户的第三操作,第三操作用于指示第一设备显示第二设备的第三应用。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:第一设备向第二设备发送第二信息,第二信息包括第三应用的应用信息和第一设备的硬件能力,第二信息用于第二设备生成第一信息。这样做,能够根据接收设备的硬件能力指定显示策略,从而支持应用以设备分辨率、设备屏幕大小和布局方式适配显示。
结合第一方面,在第一方面的某些实现方式中,上述方法还包括:第一设备接收来自第三设备的第一控制指令,第三设备为控制设备;第一设备响应于第一控制指令控制光标在第一设备的显示界面上的移动,或者,第一设备响应于第一控制指令控制第一设备的显示界面的滑动。
结合第一方面,在第一方面的某些实现方式中,第一控制指令是第三设备根据第二控制指令生成的,第二控制指令是第三设备根据用户的第四操作生成的。这样做,根据设备操控能力来选择合适的应用操控方式,支持跨平台应用的操控,支持按键和触控等多种操作方式。
第二方面,提供了控制跨设备应用的方法,包括:第二设备获取至少一个第一应用的应用信息,应用信息包括应用名称、应用图标、应用类型中的至少一种;第二设备存储第一应用的应用信息到第二分布式数据库,第二分布式数据库能够与第一分布式数据库进行数据同步,第二分布式数据可以设置在第二设备中,第一分布式数据库设置在第一设备中。
根据本申请的技术方案,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
结合第二方面,在第二方面的某些实现方式中,上述方法还包括:第二设备接收来自 用户第一操作,第一操作用于指示第二设备存储第一应用的应用信息到第二分布式数据库。
结合第二方面,在第二方面的某些实现方式中,上述方法还包括:第二设备接收来自用户的第二操作,第二操作用于指示第二设备生成禁止分享的应用列表;第二设备生成的禁止分享的应用列表,禁止分享的应用列表用于第一设备对第一应用的应用信息进行筛选,得到第二应用,第二应用属于第一应用的子集,第二应用属于第二设备允许分享的应用列表;第二设备发送禁止分享的应用列表至服务器,第一设备可以从服务器获取该禁止分享的应用列表。
结合第二方面,在第二方面的某些实现方式中,第二设备接收来自第一设备的第一信息,第一信息包括第三应用的应用信息和第一设备的硬件能力,第三应用属于第二设备的第二应用;第二设备确定第三应用的投屏数据,第三应用的投屏数据包括第三应用的显示策略;第二设备向第一设备发送第二信息,第二信息包括第三应用的投屏数据,第三应用能够调用第一设备的硬件能力。
第三方面,提供了一种控制跨设备应用的方法,包括:第三设备接收来自用户的第一操作,第三设备根据第一操作,生成第一控制指令;第三设备根据第一设备的类型和第一控制指令生成第二控制指令;第三设备向第一设备发送第二控制指令,第一控制指令用于指示光标在第一设备的显示界面上的移动,或者,第一控制指令用于指示第一设备的显示界面的滑动。
本申请的技术方案,根据设备操控能力来选择合适的应用操控方式,支持跨平台应用的操控,支持按键和触控等多种操作方式。
第四方面,提供了一种电子设备,包括:收发模块,用于从第一分布式数据库获取第二设备的第一应用的应用信息,第一分布式数据库位于第一设备,第一分布式数据库能够与第二分布式数据库进行数据同步,第二分布式数据库位于第二设备,应用信息包括应用名称、应用图标、应用类型中的至少一种;处理模块,用于显示第一界面,第一界面包括第二设备的第二应用,第二应用属于第一应用的子集。
结合第四方面,在第四方面的某些实现方式中,收发模块,还用于接收来自用户的第一操作,第一操作用于指示第一设备显示第二设备的第二应用。
结合第四方面,在第四方面的某些实现方式中,收发模块,还用于获取第二设备禁止分享的应用列表,第二设备禁止分享的应用列表是第二设备根据用户的第二操作生成的;处理模块,还用于根据第二设备禁止分享的应用列表对第一应用的应用信息进行筛选,得到第二应用,第二应用属于第二设备允许分享的应用列表。
结合第四方面,在第四方面的某些实现方式中,收发模块,还用于从第二设备获取第一信息,第一信息包括第三应用的投屏数据,第三应用属于第二应用,第三应用的投屏数据包括第三应用的显示策略;处理模块,还用于根据第一信息显示第二界面,第二界面包括第三应用,第三应用能够调用第一设备的硬件能力。
结合第四方面,在第四方面的某些实现方式中,收发模块,还用于接收来自用户的第三操作,第三操作用于指示第一设备显示第二设备的第三应用。
结合第四方面,在第四方面的某些实现方式中,收发模块,还用于向第二设备发送第二信息,第二信息包括第三应用的应用信息和第一设备的硬件能力,第二信息用于第二设备生成第一信息。
结合第四方面,在第四方面的某些实现方式中,收发模块,还用于接收来自第三设备的第一控制指令,第三设备为控制设备;处理模块,还用于响应于所述第一控制指令控制光标在第一设备的显示界面上的移动,或者,控制第一设备的显示界面的滑动。
其中,第一控制指令是第三设备根据第二控制指令生成的,第二控制指令是第三设备根据用户的第四操作生成的。
第五方面,提供了一种电子设备,包括:收发模块,用于获取第一应用的应用信息,应用信息包括应用名称、应用图标、应用类型中的至少一种;处理模块,用于存储第一应用的应用信息到第一分布式数据库,第一分布式数据库能够与第二分布式数据库进行数据同步,第一分布式数据可以设置在第二设备中,第二分布式数据库设置在第一设备中。
结合第五方面,在第五方面的某些实现方式中,收发模块,还用于接收来自用户第一操作,第一操作用于指示第二设备存储多个应用的应用信息到第一分布式数据库。
结合第五方面,在第五方面的某些实现方式中,收发模块,还用于接收来自用户的第二操作,第二操作用于指示第二设备生成禁止分享的应用列表;第二设备生成的禁止分享的应用列表,禁止分享的应用列表用于第一设备对第一应用的应用信息进行筛选,得到第二应用,第二应用属于第一应用的子集,第二应用属于第二设备允许分享的应用列表;收发模块,还用于发送禁止分享的应用列表。
结合第五方面,在第五方面的某些实现方式中,收发模块,还用于接收来自第一设备的第一信息,第一信息包括第三应用的应用信息和第一设备的硬件能力,第三应用属于第二设备的第二应用;处理模块,用于确定第三应用的投屏数据,第三应用的投屏数据包括第一应用的显示策略;收发模块,还用于向第一设备发送第二信息,第二信息包括第三应用的投屏数据,第三应用能够调用第一设备的硬件能力。
第六方面,提供了一种电子设备,包括:收发模块,用于接收来自用户的第一操作;处理模块,用于根据第一操作,生成第一控制指令,根据第一设备的类型和第一控制指令生成第二控制指令;收发模块,还用于向第一设备发送第二控制指令,第一控制指令用于指示光标在第一设备的显示界面上的移动,或者,第一控制指令用于指示第一设备的显示界面的滑动。
第七方面,提供一种芯片,芯片包括处理器与数据接口,处理器通过数据接口读取存储器上存储的指令,执行上述第一方面至第三方面中的任意一种实现方式中的方法。
可选的,作为一种实现方式,芯片还可以包括存储器,存储器中存储有指令,处理器用于执行存储器上存储的指令,当指令被执行时,处理器用于执行第一方面至第三方面中的任意一种实现方式中的方法。
第八方面,提供了一种计算机程序存储介质,计算机可读介质存储有程序代码,当计算机程序代码在计算机上运行时,使得计算机执行第一方面至第三方面的任一种可能的实现方式的指令。
第九方面,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述第一方面至第三方面中的任意一种实现方式中的方法。
第十方面,提供了一种终端设备,包括用于执行上述第一方面至第三方面的任一种可能的实现方式的模块。
第十一方面,提供了一种通信装置,用于执行上述第一方面至第三方面的任一种可能 的实现方式所述的方法。
第十二方面,提供了一种通信装置,所述装置包括:处理器和存储器,所述处理器与存储器耦合,所述存储器用于存储计算机程序,处理器,用于执行所述存储器中存储的计算机程序,以使得所述通信装置执行上述第一方面至第三方面的任一种可能的实现方式所述的方法。
第十三方面,提供了一种通信装置,所述装置包括:处理器、存储器和收发器,所述存储器,用于存储计算机程序,所述处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行上述第一方面至第三方面的任一种可能的实现方式所述的方法。
第十四方面,提供了一种通信装置,所述通信装置包括:至少一个处理器和通信接口,所述通信接口用于所述通信装置与其它通信装置进行信息交互,当程序指令在所述至少一个处理器中执行时,使得所述通信装置实现第一方面至第三方面的任一种可能的实现方式所述的方法。
第十五方面,提供了一种处理器,所述处理器包括:至少一种电路,用于执行上述第一方面至第三方面的任一种可能的实现方式所述的方法。
第十六方面,提供了一种芯片系统,所述芯片系统包括至少一个处理器,当程序指令在所述至少一个处理器中执行时,使得所述芯片系统实现上述第一方面至第三方面的任一种可能的实现方式所述的方法。
附图说明
图1是当前的设备间进行投屏的两种方法的示意图。
图2是当前一种设备间应用接力的方法的示意图。
图3是本申请实施例提供的控制跨设备应用的方法所适用的系统架构。
图4是本申请提供的三种具体实施方式。
图5是本申请实施例提供的一种电子设备的硬件结构示意图。
图6是本申请实施例提供的控制跨设备应用方法的示意性流程图。
图7是本申请实施例提供的控制跨设备应用方法具体示例的一例示意性流程图。
图8是本申请实施例提供的控制跨设备应用方法具体示例所适用的一例架构图。
图9是本申请实施例提供的控制跨设备应用方法具体示例的一例用户界面图。
图10是本申请实施例提供的控制跨设备应用方法具体示例的另一例用户界面图。
图11是本申请实施例提供的控制跨设备应用方法具体示例的另一例示意性流程图。
图12是本申请实施例提供的控制跨设备应用方法一例的示意性交互图。
图13是本申请实施例提供的控制跨设备应用方法具体示例的又一例示意性流程图。
图14是本申请实施例提供的控制跨设备应用方法具体示例的一例用户界面图。
图15是本申请实施例提供的控制跨设备应用方法具体示例的另一例用户界面图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、 “一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个、两个或两个以上。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
图1示出了当前的设备间进行投屏的两种方法的示意图。
当前主流的设备间进行投屏的方法主要有基于文件的投屏方法和基于屏幕镜像的投屏方法。其中,基于文件的投屏方法只适合视频、音频、图片等文件推送到其他设备显示,例如图1(a)所示的数字生活网络联盟(digitallivingnetwork alliance,DLNA)协议投屏方法,手机端110和电视(television,TV)端120位于同一局域网,彼此通过DLNA接收端进行设备发现、内容推送以及状态同步等。但是,基于文件的投屏方法较为依赖应用提供相关内容的投屏能力,此外,不支持对应用的其他页面进行投屏,对显示的内容有限制,无法满足用户使用应用多样化的需求。
基于屏幕镜像的投屏方法能够将发送设备的显示内容通过镜像方式发送到接收设备来进行显示,发送设备和接收设备显示内容完全一致,例如图1(b)所示的镜像投屏Miracast协议投屏方法,发送设备130将合成图像压缩成符合数字视频压缩格式标准H.264的视频代码,将截取到的音频压缩成符合高级音频编码(advanced audio coding,AAC)标准的音频代码,并将图像代码和音频代码混合成数据传送流(transport stream,TS)后通过实时流传输(real time streaming protocol,RTSP)协议传输至接收设备140,接收设备140通过RTSP协议对TS流进行接收,对TS流进行音视频解码后,将画面和声音传输给TV进行播放。但是,基于屏幕镜像的投屏方法无法适配接收设备140显示器的尺寸和操作,用户操作还需要回到发送设备130控制,交互复杂。
图2示出了当前一种设备间应用接力的方法的示意图。
如图2所示,第一设备201和第二设备202均设置有应用分享模块,第一设备201和第二设备202可以通过应用分享模块进行应用接力,从而实现跨设备任务处理的功能,该功能允许用户在一台设备上开始任务,然后在附近的另一台设备上继续处理该任务。例如,用户可以在第一设备201上打开浏览器浏览某一个网页,在第一设备201附近的第二设备202上的任务栏左侧就会出现临时的浏览器标签,如果用户在第二设备202上点击该浏览器标签,就可以打开刚才在第一设备201浏览的网页,从而继续浏览。但是,在上述方法中,第一设备201和第二设备202都必须安装有同一个应用(例如,同一个浏览器),该方法同步的是应用的数据内容,不支持第一设备201上的应用迁移到第二设备202上运行。此外,用户不能主动在第二设备202上选择第一设备201的应用打开运行,必须先操作第 一设备201进行分享后,再操作第二设备202进行接收,跨设备交互复杂。
基于上述原因,本申请提出了一种控制跨设备应用的方法和电子设备,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
图3示出了本申请实施例提供的控制跨设备应用的方法所适用的系统架构。
如图3所示,本申请实施例提供的控制跨设备应用的方法可应用于电子设备300上,电子设备300可以是发送设备或者接收设备。其中,电子设备300包括应用层310、服务框架和服务层320以及连接层330。应用层310包括桌面启动器311(Launcher)、显示窗口应用312(HiWindow)、超级终端313和语音助手314。桌面启动器311用于超级桌面组件和用户界面(user interface,UI)显示,显示窗口应用312用于显示发送设备侧的应用,超级终端313用于提供用户与系统框架和服务层320以及连接层330的交互能力,语音助手314用于提供语音跨端协同响应、协同打开应用能力等。系统框架和服务层320包括安卓基础框架321、拓展能力框架322、协同配置管理模块323、分布式连接管理模块324(AllConnect)、全局包管理(bundle manager service,BMS)模块325、分布式窗口管理服务模块(distribute window manager service,DWMS)326、分布式媒体框架327和分布式硬件平台328。安卓基础框架321用于提供应用组件管理服务(activity manager service,AMS)功能和窗口管理服务(window manager service,WMS)功能,拓展能力框架322用于提供平行视界功能和智慧多窗功能,平行视界功能支持应用以平行视界方式打开,智慧多窗功能支持应用多窗口显示,协同配置管理模块323用于管理跨设备应用迁移和硬件迁移的策略,分布式连接管理模块324用于管理分布式业务状态和处理业务冲突,全局包管理模块325用于跨设备同步各个设备的应用列表数据,包括应用名、图标等,分布式窗口管理服务模块326用于提供应用投屏接口能力、窗口显示适配逻辑和架构重构等,分布式媒体框架327用于支持多路音频、音频分布式能力以及跨设备相机能力构建等,分布式硬件平台328用于硬件虚拟化以及应用投屏能力等。连接层330用于提供软总线功能,并提供设备发现、设备认证、设备信息配置以及设备管理等功能。
图4示出了本申请提供的三种具体实施方式。结合图4,阐述本申请提供的三种具体实施方式。在受益于前述描述和相关附图中呈现的指导启示下,本领域技术人员将会想到本申请的许多改进和其他实施例。因此,应理解,本申请不限于所公开的特定实施例。
本申请支持用户在接收设备上无缝访问发送设备的应用,其中,发送设备可以是用户的移动手机,应用运行在移动手机上,发送设备可以通过与接收设备无线连接,并将应用图标、应用名、包名等信息发送到接收设备;接收设备可以是显示大屏,应用显示在显示大屏上时,应用界面支持适配接收设备屏幕,支持横屏、竖屏、分屏等方式显示,支持应用管理,支持黑白名单管控等;控制设备可以是遥控板或手机,负责应用的操控,支持按键、触控、滑动等多种交互方式。
作为一种可能的实现方式,本申请可以支持1个发送设备对应1个接收设备,1个接收设备对应1个控制设备,如图4(a)所示,发送设备401对应接收设备402,用户可以在接收设备402上无缝访问发送设备401的应用,并通过与接收设备402对应的控制设备403控制显示在接收设备402上的应用。
作为另一种可能的实现方式,本申请还可以支持多个发送设备对应1个接收设备,1 个接收设备对应1个控制设备,如图4(b)所示,发送设备401和发送设备404同时对应接收设备402,用户可以在接收设备402上同时访问发送设备401的应用1(例如,视频应用)和发送设备404的应用2(例如,导航应用),其中,发送设备401的应用1显示在接收设备402的窗口1上,发送设备404的应用2显示在接收设备402的窗口2上。用户可以通过与接收设备402对应的控制设备403控制显示在接收设备402上的应用1和/或应用2。
作为再一种可能的实现方式,本申请还可以支持1个发送设备对应多个接收设备,1个接收设备对应1个控制设备,如图4(c)所示,发送设备401同时对应接收设备402和接收设备405,用户可以在接收设备402上访问发送设备401的应用1(例如,视频应用),通过控制设备403控制显示在接收设备402上的应用1;在接收设备405上访问发送设备401的应用2(例如,导航应用),通过控制设备406控制显示在接收设备405上的应用2。
应理解,在上述三种实施方式中,均以1个接收设备对应1个控制设备为例进行了说明,但本申请不限于此。本领域人员可以理解到,1个接收设备通常可以对应多个控制设备,例如,当接收设备402为电视显示屏时,控制设备403可以是遥控器,还可以是电视上的物理按键,随着电视显示屏技术的发展,控制设备403甚至还可以是触摸面板。
图5示出了本申请实施例提供的一种电子设备的硬件结构示意图。其中,图5所示电子设备500仅是一个范例,并且电子设备500可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
电子设备500可以包括:处理器510,外部存储器接口520,内部存储器521,通用串行总线(universal serial bus,USB)接口530,充电管理模块540,电源管理模块541,电池542,天线1,天线2,移动通信模块550,无线通信模块560,音频模块570,扬声器570A,受话器570B,麦克风570C,耳机接口570D,传感器模块580,按键590,马达591,指示器592,摄像头593,显示屏594,以及用户标识模块(subscriber identification module,SIM)卡接口595等。其中传感器模块580可以包括压力传感器580A,陀螺仪传感器580B,气压传感器580C,磁传感器580D,加速度传感器580E,距离传感器580F,接近光传感器580G,指纹传感器580H,温度传感器580J,触摸传感器580K,环境光传感器580L,骨传导传感器580M等。
处理器510可以包括一个或多个处理单元,例如:处理器510可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的部件,也可以集成在一个或多个处理器中。在一些实施例中,电子设备500也可以包括一个或多个处理器510。其中,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。在其他一些实施例中,处理器510中还可以设置存储器,用于存储指令和数据。示例性地,处理器510中的存储器可以为高速缓冲存储器。该存储器可 以保存处理器510刚用过或循环使用的指令或数据。如果处理器510需要再次使用该指令或数据,可从所述存储器中直接调用。这样就避免了重复存取,减少了处理器510的等待时间,因而提高了电子设备500处理数据或执行指令的效率。
在一些实施例中,处理器510可以包括一个或多个接口。接口可以包括集成电路间(inter-integrated circuit,I2C)接口,集成电路间音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,SIM卡接口,和/或USB接口等。其中,USB接口是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口可以用于连接充电器为电子设备500充电,也可以用于电子设备500与外围设备之间传输数据。该USB接口也可以用于连接耳机,通过耳机播放音频。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备500的结构限定。在本申请另一些实施例中,电子设备500也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备500的无线通信功能可以通过天线1,天线2,移动通信模块550,无线通信模块560,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备500中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块550可以提供应用在电子设备500上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块550可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块550可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块550还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块550的至少部分功能模块可以被设置于处理器510中。在一些实施例中,移动通信模块550的至少部分功能模块可以与处理器510的至少部分模块被设置在同一个器件中。
无线通信模块560可以提供应用在电子设备500上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信协议(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块560可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块560经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器510。无线通信模块560还可以从处理器510接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备500通过GPU,显示屏594,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏594和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器510可包括一个或多个GPU,其执行程序指令以生成或改变显示信 息。
显示屏594用于显示图像,视频等。显示屏594包括显示面板。在一些实施例中,电子设备500可以包括1个或N个显示屏594,N为大于1的正整数。
电子设备500可以通过ISP,摄像头593,视频编解码器,GPU,显示屏594以及应用处理器等实现拍摄功能。摄像头593用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备500可以包括1个或N个摄像头593,N为大于1的正整数。
扬声器570A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备500可以通过扬声器570A收听音乐,或收听免提通话。
麦克风570C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风570C发声,将声音信号输入到麦克风570C。电子设备500可以设置至少一个麦克风570C。在另一些实施例中,电子设备500可以设置两个麦克风570C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备500还可以设置三个,四个或更多麦克风570C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
在一些实施例中,电子设备可以是还包含其它功能诸如个人数字助理和/或音乐播放器功能的便携式电子设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴电子设备(如智能手表)、视频播放器、耳机、音箱、摄像头等。便携式电子设备的示例性实施例包括但不限于搭载或者其它操作系统的便携式电子设备。上述便携式电子设备也可以是其它便携式电子设备,诸如膝上型计算机(Laptop)等。还应当理解的是,在其他一些实施例中,上述电子设备也可以不是便携式电子设备,而是台式计算机、电视、音箱、摄像头等。
图6示出了本申请实施例提供的一例控制跨设备应用方法的示意性流程图。
S610,第一设备从第一分布式数据库获取第二设备的至少一个第一应用的应用信息,第一分布式数据库位于第一设备,第一分布式数据库能够与第二分布式数据库进行数据同步,第二分布式数据库位于第二设备,应用信息包括应用名称、应用图标、应用类型中的至少一种。
其中,第一设备可以为大屏、座舱、显示器等具有应用接收能力的设备,第二设备可以是手机等具有应用分享能力的设备,第一应用可以包括多个应用。
S620,第一设备显示第一界面,第一界面包括所述第二设备的第二应用,第二应用属于第一应用的子集。
其中,子集也可以是全集,第二应用可以包括多个应用,这样,第一界面显示的具体可以是一个第二应用的应用列表。
可选的,上述方法还包括第一设备接收来自用户的第一操作,第一操作用于指示第一设备显示第二设备的第二应用。
作为示例而非限定,第一操作可以是用户在第一设备上采用第一账号登录,第一账号为用户在第二设备上登录的账号,第一操作还可以是用户在第一设备上展示第一设备的二 维码,采用第二设备扫描第一设备的二维码,当第一设备为车辆的座舱时,第一操作还可以是用户登上车辆的座舱,即主驾上车。
可选的,上述方法还包括:第一设备获取第二设备允许分享的应用列表和/或禁止分享的应用列表,第二设备允许分享的应用列表和/或禁止分享的应用列表是第二设备根据用户的第二操作生成的;第一设备根据第二设备允许分享的应用列表和/或禁止分享的应用列表对第一应用的应用信息进行筛选,得到第二应用,第二应用属于第二设备允许分享的应用列表。其中,第一设备可以从服务器获取第二设备允许分享的应用列表和/或禁止分享的应用列表。这样做,能够根据用户的意愿,将允许分享的应用列表展示在接收设备(第一设备)上,保证用户的数据安全,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
可选的,上述方法还包括:第一设备从第二设备获取第一信息,第一信息包括第三应用的投屏数据,第三应用属于第二应用,第三应用的投屏数据包括第三应用的显示策略;第一设备根据第一信息显示第二界面,第二界面包括第三应用,第三应用能够调用第一设备的硬件能力。这样做,可以支持应用直接使用接收设备(第一设备)的各种硬件能力。
可选的,上述方法还包括:第一设备接收来自用户的第三操作,第三操作用于指示第一设备显示第二设备的第三应用。
可选的,上述方法还包括:第一设备向第二设备发送第二信息,第二信息包括第三应用的应用信息和第一设备的硬件能力,第二信息用于第二设备生成第一信息。这样做,能够根据接收设备的硬件能力指定显示策略,从而支持第三应用以接收设备分辨率、接收设备屏幕大小和布局方式适配显示。
可选的,上述方法还包括:第一设备接收来自第三设备的第一控制指令,第三设备为控制设备;第一设备响应于第一控制指令控制光标在第一设备的显示界面上的移动,或者,第一设备响应于第一控制指令控制第一设备的显示界面的滑动。
可选的,第一控制指令是第三设备根据第二控制指令生成的,第二控制指令是第三设备根据用户的第四操作生成的。这样做,根据设备操控能力来选择合适的应用操控方式,支持跨平台应用的操控,支持按键和触控等多种操作方式。
根据本申请的技术方案,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
图7示出了本申请实施例提供的控制跨设备应用方法的一例具体示例的示意图。其中,发送设备401可以是图6中所述的第二设备,接收设备402可以上图6中所述的第一设备。
S710,发送设备401开机启动,将应用信息写入第二分布式数据库。
其中,发送设备401可以接收用户的第一操作,第一操作用于指示发送设备401开机启动。发送设备401的全局包管理模块可以获取应用信息,并将应用信息存储在分布式数据库,应用信息包括发送设备401本地安装应用的全量信息,该信息包括但不限于:包名称、应用名称、应用图标和应用类型等。当发送设备401的应用信息发生更新时,例如应用安装、应用更新、应用卸载等,发送设备401的包管理服务模块可以将更新后的应用信息发送给全局包管理模块,全局包管理模块将更新后的应用信息存储在第二分布式数据库中。
接收设备402可以接收用户的第二操作,第二操作用于指示接收设备402显示发送设备401允许分享的应用列表。其中第二操作可以有以下几种形式:
情形1:
S720,用户在接收设备402上使用账号登录。
其中,用户在接收设备402上登录的账号与在发送设备401登录的账号为同一个账号。可选的,用户在接收设备402上使用账号登录还可以包括用户将接收设备402登录的账号切换为在发送设备401登录的账号。
情形2:
S721,用户使用发送设备401扫码发现接收设备402。
具体的,用户可以使用发送设备401扫描接收设备402的二维码标识,从而与接收设备402建立连接。
情形3:
S722,用户在接收设备402所在车辆的主驾上车。
在该情形下,接收设备402可以是车辆的座舱,用户可以提前设置与接收设备402(座舱)对应的发送设备,例如发送设备401,当用户登上车辆的主驾时,接收设备402(座舱)的车机专属子系统可以通知接收设备402(座舱)的协同配置服务模块主驾上车,从而接收设备402可以发现用户提前设定好的发送设备401上线,并主动寻求与发送设备401建立连接。
S730,接收设备402调用协同配置服务模块通知软总线发现发送设备401。
示例性的,软总线位于鸿蒙统一设备互联系统,该系统还可以包括设备管理模块和设备认证模块。
S740,接收设备402调用设备管理模块通知桌面启动器发送设备401上线。
具体的,接收设备402的设备管理模块可以向桌面启动器中的超级桌面发送通知,通知发送设备401上线,可以同步应用数据。
S750,接收设备402调用远程服务模块开始同步发送设备401的应用信息。
具体的,接收设备402远程服务模块可以调用全局包管理模块接口,从第一分布式数据库获取发送设备401的应用信息,其中,发送设备401的应用信息存储在第二分布式数据库,第一分布式数据库能够与第二分布式数据库进行数据同步。
S760,接收设备402调用超级桌面显示第一界面。
具体的,在发送设备401的应用信息同步结束后,接收设备402调用超级桌面显示第一界面,第一界面包括发送设备401允许分享的应用列表。其中,超级桌面可以根据发送设备401的应用黑白名单(即禁止分享的应用列表和允许分享的应用列表),对获取到的发送设备401的应用信息进行筛选,最后显示发送设备401允许分享的应用列表。
根据本申请提供的技术方案,无需修改现有应用,支持在当前设备上显示来自不同设备的应用列表,使得用户能够进行跨设备应用管理,在当前设备上无缝使用其他设备上安装的应用。
图8示出了本申请实施例提供的控制跨设备应用方法的一例整体架构图。其中,图8中以接收设备为大屏,发送设备为手机为例,来展示本申请实施例提供的架构图。图8所示的架构图可用于实现图7所述的方法。
如图8所示,架构800包括大屏专有云服务器801、桌面启动器802、协同配置管理服务模块803、超级终端804以及鸿蒙统一设备互联系统805。其中,桌面启动器802位于系统的应用层,负责超级桌面的连接和显示,当大屏与手机相连接时,桌面启动器802用于手机应用的同步和分类显示,以及手机应用的远程启动和名单管理。协同配置管理服务模块803用于提供包括应用迁移管理能力和硬件迁移管理能力在内的协同业务的原子化能力,应用迁移管理能力包括应用迁移能力、特征能力(feature ability,FA)迁移能力和窗口迁移能力等,硬件迁移管理能力包括音频迁移能力、摄像头迁移能力和迁移规则等。超级终端804用于提供全局包管理能力、分布式多屏多窗管理能力和分布式硬件管理能力。其中,全局包管理能力主要包括全局包信息同步能力,全局包信息包括应用信息,应用可以是安卓应用或者鸿蒙应用等。分布式多屏多窗管理能力包括支持手机的应用在大屏设备上的“横屏”、“平行视界”和“竖屏”的窗口显示自适应能力。鸿蒙统一设备互联系统805包括设备管理模块和软总线,设备管理模块用于提供设备间靠近发现的能力,软总线用于模块间的通信。
其中,桌面启动器802可以与超级终端804进行通信,以实现应用信息的同步以及将应用投屏在桌面启动器802上,桌面启动器802还可以与鸿蒙统一设备互联系统805进行通信,当鸿蒙统一设备互联系统805发现连接到手机时,鸿蒙统一设备互联系统805可以通知桌面启动器802。桌面启动器802还可以从云服务器801获取手机应用的黑白名单,手机应用的黑白名单可以由用户设置,也可以是系统根据设备(包括接收设备和发送设备)的类型自动生成的。桌面启动器802还可以接收用户应用启动和迁移的操作,并调动协同配置管理服务模块803来实现应用启动和迁移。协同配置管理服务模块803可以基于可配置的协同规则,对协同策略进行决策,并调用超级终端804的分布式能力实现协同。可选的,手机侧应用可以包括智慧屏触控板应用,该应用支持手机投屏应用的触控操作以及大屏应用的触控操作。
应理解,上述方案可以基于鸿蒙系统实现,基于鸿蒙的分布式互联技术支持设备发现、连接和认证,应用的数据同步依赖分布式数据技术,应用适配、应用迁移和硬件迁移能力依赖于协同配置管理服务,应用操控能力依赖于自适应的应用操控服务。可选的,还可以基于其他系统实现,例如上文所述的或者其它操作系统,本申请对其不作限定。
图9示出了本申请实施例提供的控制跨设备应用方法具体示例的一例用户界面图。
如图9所示,接收设备402(例如,大屏)可以根据用户的操作,获取发送设备401(例如,发送设备401可以为手机,型号可以为Mate 40)的应用信息,从而显示第一界面,第一界面包括发送设备401允许分享的应用列表。具体的,接收设备402的桌面启动器中的超级桌面模块负责展示发送设备401上的应用列表。该显示界面支持界面元素布局,第一排可以显示常用应用,可选的,第一排可以最多显示M个最近使用的应用,示例性的,图中示出的常用应用为4个,即M为4。应理解,M的数值可以根据页面以及应用图标的大小变化,例如,M也可以为5、6、或7,本申请对其不作限定。第二排可以显示设备的其他应用图标。作为示例而非限定,第二排显示的应用图标可以根据应用名称首字母从A到Z排列。其中,当发送设备401的应用信息发生变化时,接收设备402的第一界面会同步更新显示。
图10是本申请实施例提供的控制跨设备应用方法具体示例的另一例用户界面图。
如图10所示,接收设备402可以同时与多个发送设备相连接,即,发送设备401的个数可以是一个或多个。作为示例而非限定,用户可以在接收设备402上采取操作实现对发送设备的切换。例如,用户可以在接收设备402上的键盘制表定位键(tabulator key,Tab)点击OK键,出现如图10所示的下拉菜单,该菜单显示可切换的发送设备的列表,该列表中可以包括多个发送设备,例如,发送设备401、发送设备404、发送设备407,作为示例而非限定,他们的型号可以是Mate 40、P50、或者Mate 30Pro等。当用户点击到其他发送设备后,对应的发送设备可以进行二次确认,接收设备402可以显示对应的发送设备的允许分享的应用列表。
应理解,上述以发送设备的型号为Mate 40、P50、或者Mate 30Pro例,对本申请的技术方案进行说明,其不应作为对本申请技术方案的限定,当发送设备为其他型号或其他厂商的设备时,本申请的技术方案同样适用。
图11是本申请实施例提供的控制跨设备应用方法具体示例的另一例示意性流程图。该方法可以在图7所示的方法700之后。
S1110,用户在接收设备402上启动应用。
其中,用户可以在接收设备402显示的第一界面上启动应用,该应用可以是发送设备401允许分享的应用列表中的一个,为了便于表述,可称为第一应用。
S1120,接收设备402向发送设备401发送第一信息。
其中,该第一信息包括第一应用的应用信息和接收设备402的硬件能力。设备的硬件能力包括设备的麦克风能力、语音能力、相机能力等。具体的,接收设备402可以调用协同配置服务模块,向发送设备401发送上述第一信息,第一信息用于指示发送设备401端的协同配置服务模块调用分布式窗口管理服务(distribute window manger service,DWMS)创建虚拟的显示器(display),并指示发送设备401的分布式硬件平台与接收设备402的分布式硬件平台进行硬件协商,从而获取接收设备402的硬件能力。
S1130,发送设备401计算显示策略。
具体的,发送设备401的协同配置服务模块根据第一应用和接收设备402的硬件能力,计算第一应用的显示策略(例如,平行视界、横屏显示等等)。
S1140,发送设备401启动应用。
具体的,发送设备401的协同配置服务模块可以调用AMS接口启动第一应用,并将第一应用发送至虚拟display上显示。
S1150,发送设备401启动投屏。
具体的,发送设备401可以调用分布式窗口管理模块,准备将虚拟的display投屏到接收设备402。
S1160,发送设备401发送投屏数据至接收设备402。
具体的,发送设备401可以向接收设备402发送第二信息,第二信息包括所述第一应用的投屏数据,第一应用的投屏数据包括发送设备401根据第一信息确定的第一应用的显示策略。接收设备402可以显示第二界面,第二界面包括第一应用,第一应用能够调用接收设备402的硬件能力。例如,当接收设备为大屏设备时,支持应用4K分辨率的显示,如果是平板,可以支持第一应用2K分辨率显示。第一应用可以使用接收设备的麦克风进 行应用录音,可以使用接收设备的音箱进行放音,可以使用摄像头来录像,可以使用全球定位系统(global positioning system,GPS)来定位等等。
本申请提供的技术方案,能够支持发送设备的应用以接收设备的分辨率、设备屏幕大小和布局方式适配显示,进一步的,可以支持发送设备的应用直接使用接收设备的硬件能力。
图12是本申请实施例提供的控制跨设备应用方法一例的示意性交互图。该实施例输出了通过控制设备控制显示在接收设备上的属于发送设备的应用的一例方法。其中,发送设备401和接收设备402上应用可以是不同平台的应用,例如鸿蒙应用或android应用等,另外控制设备403本身支持获取的命令也和设备平台相关,因此,不同设备上的应用所支持的操控指令是完全不同的,需要进行统一适配转换。
S1210,控制设备403上的触摸板将触摸事件发送至控制设备403上的操控命令适配器。
其中,控制设备403可以根据用户在触摸板上的第三操作生成第二控制指令(例如,触摸事件)。可选的,当控制设备403包括物理按键时,用户也可以在物理按键上执行第三操作生成第二控制指令(按键事件)。
S1220,控制设备403将触摸事件转换为统一的命令事件。
具体的,控制设备403中的操控命令适配器根据接收设备402的类型将第二控制指令(例如,触摸事件)转换为第一控制指令(统一的命令事件)。
S1230,控制设备403将控制指令发送至接收设备402。
具体的,控制设备403可以将转换后的第一控制指令(统一的命令事件)发送至接收设备402的分布式融合感知平台。
S1240,接收设备402将控制指令的信息发送至指令接收器。
其中,控制指令的信息包括控制指令的类型、控制指令的坐标位置和控制指令的移动速度等参数。
可选的,接收设备402还可以执行S1241,将控制指令注入至系统输入服务管理器。
其中,接收设备402中的分布式融合感知平台获取控制设备403发送来的第一控制指令,将第一控制指令的信息发送给系统输入服务管理器,统输入服务管理器将第一控制住指令分发到上层应用进行处理。
S1250,接收设备402的指令接收器渲染光标。
具体的,接收设备402的指令接收器根据第一控制指令的信息进行光标渲染,渲染的光标在接收设备402上显示。
根据本申请的技术方案,在控制设备上通过转换用户的按键事件或移动事件,将其适配为接收设备应该执行的控制指令,支持用户对应用进行跨平台的操控。
图13是本申请实施例提供的控制跨设备应用方法具体示例的又一例示意性流程图。图13以功能模块之间的交互展示图12所述的方法。
如图13所示,在控制设备403中,FA鸿蒙可以将触控事件发送至操控命令适配器,安卓系统的插件也可以将移动事件/按键事件发送至操控命令适配器,操控命令适配器和事件转换器将这些触控事件、移动事件/按键事件等(统称为第二控制指令)转换为第一控住指令(统一的命令事件)。接收设备402通过分布式感知平台接收第一控制指令,并 将第一控制指令的信息传输至智慧屏操控指令管理服务模块,智慧屏操控指令管理服务模块包括指令接收器,指令接收器根据第一控制指令的信息进行光标渲染,渲染的光标在接收设备402上显示。
图14是本申请实施例提供的控制跨设备应用方法具体示例的一例用户界面图。如图14所示,用户可以在控制设备403上指定区域内进行操作,操控接收设备402显示的光标移动到高亮的图片上(例如,图片7)。
图15是本申请实施例提供的控制跨设备应用方法具体示例的另一例用户界面图。如图15所示,用户可以在控制设备403上指定区域内进行操作,操控接收设备402显示的界面进行上下滑动或者左右滑动。作为示例而非限定,响应于用户在控制设备403上指定区域内的操作,图15中接收设备402所显示的界面相对于图14中接收设备402所显示的界面进行了向上滑动。
在本申请所提供的实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (16)

  1. 一种控制跨设备应用的方法,其特征在于,包括:
    第一设备从第一分布式数据库获取第二设备的至少一个第一应用的应用信息,所述第一分布式数据库位于所述第一设备,所述第一分布式数据库能够与第二分布式数据库进行数据同步,所述第二分布式数据库位于所述第二设备,所述应用信息包括应用名称、应用图标、应用类型中的至少一种;
    所述第一设备显示第一界面,所述第一界面包括所述第二设备的第二应用,所述第二应用属于所述第一应用的子集。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述第一设备接收来自用户的第一操作,所述第一操作用于指示所述第一设备显示所述第二设备的所述第二应用。
  3. 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
    所述第一设备获取所述第二设备禁止分享的应用列表,所述第二设备禁止分享的应用列表是所述第二设备根据所述用户的第二操作生成的;
    所述第一设备根据所述第二设备禁止分享的应用列表对所述第一应用的应用信息进行筛选,得到所述第二应用,所述第二应用属于所述第二设备允许分享的应用列表。
  4. 根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
    所述第一设备从所述第二设备获取第一信息,所述第一信息包括第三应用的投屏数据,所述第三应用属于所述第二应用,所述第三应用的投屏数据包括所述第三应用的显示策略;
    所述第一设备根据所述第一信息显示第二界面,所述第二界面包括所述第三应用,所述第三应用能够调用所述第一设备的硬件能力。
  5. 根据权利要求4所述的方法,其特征在于,所述方法还包括:
    所述第一设备接收来自用户的第三操作,所述第三操作用于指示所述第一设备显示所述第二设备的所述第三应用。
  6. 根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
    所述第一设备向所述第二设备发送第二信息,所述第二信息包括所述第三应用的应用信息和所述第一设备的硬件能力,所述第二信息用于所述第二设备生成所述第一信息。
  7. 根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
    所述第一设备接收来自第三设备的第一控制指令,所述第三设备为控制设备;
    所述第一设备响应于所述第一控制指令控制光标在所述第一设备的显示界面上的移动,或者,
    所述第一设备响应于所述第一控制指令控制所述第一设备的显示界面的滑动。
  8. 根据权利要求7所述的方法,其特征在于,所述第一控制指令是所述第三设备根据第二控制指令生成的,所述第二控制指令是所述第三设备根据用户的第四操作生成的。
  9. 一种控制跨设备应用的方法,其特征在于,包括:
    第二设备获取至少一个第一应用的应用信息,所述应用信息包括应用名称、应用图标、应用类型中的至少一种;
    所述第二设备存储所述第一应用的应用信息到第二分布式数据库,所述第二分布式数据库能够与第一分布式数据库进行数据同步,所述第二分布式数据可以设置在所述第二设备中,所述第一分布式数据库设置在第一设备中。
  10. 根据权利要求9所述的方法,其特征在于,所述方法还包括:
    所述第二设备接收来自用户第一操作,所述第一操作用于指示所述第二设备存储所述第一应用的应用信息到所述第二分布式数据库。
  11. 根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
    所述第二设备接收来自用户的第二操作,所述第二操作用于指示所述第二设备生成禁止分享的应用列表;
    所述第二设备生成所述禁止分享的应用列表,所述禁止分享的应用列表用于所述第一设备对所述第一应用的应用信息进行筛选,得到第二应用,所述第二应用属于所述第一应用的子集,所述第二应用属于所述第二设备允许分享的应用列表;
    所述第二设备发送所述禁止分享的应用列表。
  12. 根据权利要求9至11中任一项所述的方法,其特征在于,所述方法还包括:
    所述第二设备接收来自第一设备的第一信息,所述第一信息包括第三应用的应用信息和所述第一设备的硬件能力,所述第三应用属于所述第二设备的所述第二应用;
    所述第二设备确定所述第三应用的投屏数据,所述第三应用的投屏数据包括所述第三应用的显示策略;
    所述第二设备向所述第一设备发送所述第二信息,所述第二信息包括所述第三应用的投屏数据,所述第三应用能够调用所述第一设备的硬件能力。
  13. 一种控制跨设备应用的方法,其特征在于,包括:
    第三设备接收来自用户的第一操作,所述第三设备根据所述第一操作,生成第一控制指令;
    所述第三设备根据第一设备的类型和所述第一控制指令生成第二控制指令;
    所述第三设备向所述第一设备发送第二控制指令,所述第一控制指令用于指示光标在所述第一设备的显示界面上的移动,
    或者,所述第一控制指令用于指示所述第一设备的显示界面的滑动。
  14. 一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
  15. 一种芯片,其特征在于,包括至少一个处理器和接口电路,所述接口电路用于为所述至少一个处理器提供程序指令或者数据,所述至少一个处理器用于执行所述指令,以实现如权利要求1至13中任一项所述的方法。
  16. 一种电子设备,其特征在于,所述通信装置包括处理器和存储器,用于执行如权利要求1至13中任一项所述的方法。
PCT/CN2023/100200 2022-06-16 2023-06-14 控制跨设备应用的方法以及电子设备 WO2023241624A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210682462.0A CN117289990A (zh) 2022-06-16 2022-06-16 控制跨设备应用的方法以及电子设备
CN202210682462.0 2022-06-16

Publications (1)

Publication Number Publication Date
WO2023241624A1 true WO2023241624A1 (zh) 2023-12-21

Family

ID=89192306

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/100200 WO2023241624A1 (zh) 2022-06-16 2023-06-14 控制跨设备应用的方法以及电子设备

Country Status (2)

Country Link
CN (1) CN117289990A (zh)
WO (1) WO2023241624A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1708751A (zh) * 2002-08-23 2005-12-14 国际商业机器公司 处理应用数据
US20170033989A1 (en) * 2015-07-31 2017-02-02 Apple Inc. Shareable code objects for accessories and user devices
CN111240547A (zh) * 2020-01-08 2020-06-05 华为技术有限公司 跨设备任务处理的交互方法、电子设备及存储介质
CN114071425A (zh) * 2020-07-29 2022-02-18 华为技术有限公司 电子设备间的协同方法、协同系统和电子设备
CN114296948A (zh) * 2020-09-21 2022-04-08 荣耀终端有限公司 一种跨设备调用应用的方法及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1708751A (zh) * 2002-08-23 2005-12-14 国际商业机器公司 处理应用数据
US20170033989A1 (en) * 2015-07-31 2017-02-02 Apple Inc. Shareable code objects for accessories and user devices
CN111240547A (zh) * 2020-01-08 2020-06-05 华为技术有限公司 跨设备任务处理的交互方法、电子设备及存储介质
CN114071425A (zh) * 2020-07-29 2022-02-18 华为技术有限公司 电子设备间的协同方法、协同系统和电子设备
CN114296948A (zh) * 2020-09-21 2022-04-08 荣耀终端有限公司 一种跨设备调用应用的方法及电子设备

Also Published As

Publication number Publication date
CN117289990A (zh) 2023-12-26

Similar Documents

Publication Publication Date Title
WO2021078284A1 (zh) 一种内容接续方法及电子设备
WO2020248668A1 (zh) 一种显示器及图像处理方法
WO2018094556A1 (zh) 直播间视频流推送控制方法及相应的服务器与移动终端
CN112394895B (zh) 画面跨设备显示方法与装置、电子设备
WO2022242597A1 (zh) 处理方法、处理设备及存储介质
JP2023503679A (ja) マルチウィンドウ表示方法、電子デバイス及びシステム
WO2022121775A1 (zh) 一种投屏方法及设备
WO2022083296A1 (zh) 一种显示方法及电子设备
CN114286165A (zh) 一种显示设备、移动终端及投屏数据传输方法
WO2020248924A1 (zh) 显示设备及扫描外部蓝牙设备的方法
CN112437334A (zh) 一种显示设备
CN113194197A (zh) 交互方法、终端及存储介质
WO2022142674A1 (zh) 一种快捷方式的创建方法及相关设备
WO2022007678A1 (zh) 一种打开文件的方法及设备
WO2022088974A1 (zh) 一种遥控方法、电子设备及系统
WO2021190353A1 (zh) 交互方法和显示设备
WO2021121036A1 (zh) 一种折叠设备的自定义按键方法、设备及存储介质
CN114430492B (zh) 显示设备、移动终端及图片同步缩放方法
US20220294844A1 (en) Information Transmission Method And Electronic Device
US20230350631A1 (en) Projection display method and electronic device
CN114079819A (zh) 一种内容显示方法及显示设备
WO2023241624A1 (zh) 控制跨设备应用的方法以及电子设备
WO2023273845A1 (zh) 一种多应用录屏方法及装置
WO2023236800A1 (zh) 控制跨设备应用的方法以及电子设备
CN114286320A (zh) 一种显示设备、移动终端及蓝牙连接方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23823190

Country of ref document: EP

Kind code of ref document: A1