WO2021042991A1 - 一种非侵入式交互方法及电子设备 - Google Patents

一种非侵入式交互方法及电子设备 Download PDF

Info

Publication number
WO2021042991A1
WO2021042991A1 PCT/CN2020/110026 CN2020110026W WO2021042991A1 WO 2021042991 A1 WO2021042991 A1 WO 2021042991A1 CN 2020110026 W CN2020110026 W CN 2020110026W WO 2021042991 A1 WO2021042991 A1 WO 2021042991A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
description file
electronic device
component
functions
Prior art date
Application number
PCT/CN2020/110026
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 华为技术有限公司
Priority to CN202080058043.9A priority Critical patent/CN114586001A/zh
Priority to EP20860819.0A priority patent/EP4024204B1/en
Publication of WO2021042991A1 publication Critical patent/WO2021042991A1/zh
Priority to US17/688,025 priority patent/US12019531B2/en

Links

Images

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3096Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents wherein the means or processing minimize the use of computing system or of computing system component resources, e.g. non-intrusive monitoring which minimizes the probe effect: sniffing, intercepting, indirectly deriving the monitored data from other directly available data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • This application relates to the field of electronic equipment, and in particular to a non-intrusive interaction method and electronic equipment.
  • an application application, APP, hereinafter referred to as an application
  • the functions of the electronic device can be improved and a richer user experience can be provided to the user.
  • the realization of some functions of the application depends on the device capability service provided by the electronic device operating system.
  • the interaction between the application and the electronic device operating system uses intrusive interaction methods.
  • the operating system of the electronic device provides device capability services for implementing different functions, and provides corresponding functional interfaces for applications.
  • the functional interface can be encapsulated into a software development kit (SDK), which is called a functional interface package.
  • SDK software development kit
  • the corresponding device capability service can be called to realize the corresponding function.
  • This intrusive interaction method has at least the following shortcomings: it cannot cross operating systems, that is, if the functional interface package is implemented based on an operating system (such as Android operating system), then it can only call the corresponding device capabilities provided by the operating system Services, the same device capability services provided by other operating systems cannot be called. It cannot be cross-device, that is, an application installed in an electronic device integrates a functional interface package. Through this functional interface package, the application can only call the corresponding device capability service provided by the operating system of the electronic device, and cannot call other device operating systems. Same equipment capability service. The application or functional interface package must be compatible, otherwise, even if the application integrates the functional interface package, the corresponding device capability service cannot be invoked. There are many types of device capability services provided by the electronic device operating system, and there are also many corresponding functional interface packages, that is, the functional interface package is fragmented, which may cause an application to integrate a multi-functional interface package.
  • the embodiments of the present application provide a non-intrusive interaction method and electronic device.
  • the application can realize the invocation of device capability services without integrating various functional interface packages, thereby realizing the corresponding Features. And it can realize cross-operating system, cross-device device capability service call.
  • an embodiment of the present application provides a non-intrusive interaction method, which can be applied to an electronic device, and the method may include: the electronic device obtains a description file of the application, the description file is used to indicate the function that the application needs to implement, and the description The file uses the non-intrusive protocol description definition; the electronic device determines the first component according to the description file, the first component is the component of the electronic device that can realize the function of the application, and the component of the electronic device is the electronic device according to the non-intrusive protocol
  • the configured module for providing device capability services can realize independent functions; the electronic device runs the first component according to the description file to provide device capability services for the application to realize the functions that the application needs to implement.
  • the electronic device After the electronic device obtains the description file defined by the non-intrusive protocol description of the application, it can determine the components that can realize the functions required by the application from the components of the electronic device according to the description file.
  • the components of the electronic device are modules configured in the electronic device according to a non-intrusive protocol for providing device capability services, and can realize independent functions.
  • the electronic device runs the above-determined components according to the description file to provide device capability services for the application to realize the functions that the application needs to implement. In this way, the application in the electronic device can implement the invocation of the device capability service through a non-intrusive interaction method, thereby realizing the corresponding function. And it can realize cross-operating system, cross-device device capability service call.
  • the description file is composed of an identification block and a logic block.
  • the identification block contains the following fields: the version number of the non-intrusive protocol followed by the description file, the identification of the application, and the signature of the application;
  • the logic block consists of one or It is composed of multiple single logic entities;
  • the single logic entity in the logic block is used to indicate the running instance of a component, and the single logic entity in the logic block includes the head area;
  • the head area includes: used to identify the implementation needs of the application
  • the above-mentioned electronic device determines the first component according to the description file, which may include: the electronic device verifies the normativeness of the description file according to the fields contained in the identification block of the description file and the fields contained in the head area; When it is determined that the normative verification of the description file has passed, the first component is determined according to the fields contained in the head area of the single logical entity in the logic block of the description file.
  • the single logical entity in the logic block also includes a body area.
  • the body area contains: fields for the data required by the component to realize the function; the above-mentioned electronic device runs the first according to the description file.
  • the component provides device capability services for the application to realize the functions that the application needs to implement. It may include: the electronic device runs the first component according to the fields contained in the body area of the single logical entity in the logic block of the description file to provide device capability services for the application. In order to realize the function that the application needs to realize.
  • the electronic device obtaining the description file of the application may include: the electronic device obtains the pre-configured description file during the non-running period of the application; the method may also include: the electronic device performs the description file on the description file. Analyze and store the fields contained in the identification block of the description file, the fields contained in the head area and the body area of the single logical entity in the logical block of the description file; the above-mentioned electronic device runs the first component according to the description file to provide device capabilities for the application Services to realize the functions that the application needs to implement, including: the electronic device reads the fields contained in the body area of the single logical entity in the logical block of the stored description file during the runtime of the application; The fields contained in the body area of the logical entity are parsed, and the first component is run according to the analysis result to provide device capability services for the application to realize the functions that the application needs to implement.
  • the pre-configured description file is suitable for scenarios where the data that the corresponding component needs to use when providing services
  • the electronic device acquiring the description file of the application may include: the electronic device generates the description file when the application is running; the method may also include: the electronic device parses the description file and stores the description file The fields contained in the identification block of the description file, the fields contained in the head area of the single logical entity in the logical block of the description file, and the fields contained in the body area; the above-mentioned electronic device runs the first component according to the description file to provide device capability services for the application to realize the application
  • the functions that need to be implemented can include: the electronic device reads the fields contained in the body area of the single logical entity in the logical block of the stored description file; the electronic device parses the fields contained in the body area of the single logical entity in the logical block of the description file , And run the first component according to the analysis result to provide device capability services for the application to realize the functions that the application needs to implement. For scenarios where the data required by the corresponding component to provide services will change with changes in the operating environment, the interaction of description files can be realized through
  • the above-mentioned electronic device stores configuration information of all components of the electronic device; the electronic device determines the first component according to the description file, which may include: the electronic device according to the description file and the stored configuration information of all components , Determine the first component.
  • the component that can provide the corresponding service can be found according to the description file, and the corresponding service can be provided for the application.
  • the electronic device also stores configuration information of all components in the device that has established a wireless connection with the electronic device; the method may also include: if the electronic device does not determine the first component, and according to The stored configuration information of the component determines that there are components of the device connected to the electronic device that can realize the functions required by the application, then the electronic device transmits a description file to the device connected to the electronic device for determining the corresponding device connected to the electronic device.
  • the components run concurrently to provide device capability services for the application and realize the functions that the application needs to implement.
  • the electronic device can store the configuration information of the components of other electronic devices connected to itself. In this way, when there is no component that can provide services for the application in the electronic device, the description file can be sent to other devices that can provide corresponding services. The ability to call services across devices.
  • an embodiment of the present application provides an electronic device.
  • the electronic device may include: a processor and a memory; the processor and the memory are coupled, and the memory is used to store computer program code.
  • the computer program code includes computer software instructions.
  • the electronic device is caused to perform the following operations: Obtain the description file of the application, the description file is used to indicate the function that the application needs to implement, the description file uses the non-intrusive protocol description definition; the first component is determined according to the description file, and the first component is determined according to the description file.
  • One component is the component of the electronic device that can realize the functions required by the application.
  • the component of the electronic device is the module of the electronic device that is configured according to the non-intrusive protocol to provide device capability services, and can realize independent functions; run according to the description file
  • the first component provides equipment capability services for the application to realize the functions that the application needs to implement.
  • the description file is composed of an identification block and a logic block.
  • the identification block contains the following fields: the version number of the non-intrusive protocol followed by the description file, the identification of the application, and the signature of the application;
  • the logic block consists of one or It is composed of multiple single logic entities;
  • the single logic entity in the logic block is used to indicate the running instance of a component, and the single logic entity in the logic block includes the head area;
  • the head area contains: used to identify the functions that can be realized by the application
  • the field of the component; the above determining the first component according to the description file includes: verifying the normativeness of the description file according to the fields contained in the identification block of the description file and the fields contained in the head area; in determining the normative verification of the description file When passing, the first component is determined according to the fields contained in the head area of the single logical entity in the logical block of the description file.
  • the single logic entity in the logic block also includes a body area, and the body area contains: fields for the data required by the component to realize the function; the first component is run according to the description file above, which is the application Provide device capability services to realize the functions that the application needs to implement, including: running the first component according to the fields contained in the body area of the single logical entity in the logic block of the description file, and provide device capability services for the application to realize the functions that the application needs to implement .
  • the foregoing obtaining the description file of the application includes: obtaining the pre-configured description file during the non-running period of the application; when the computer software instruction is executed by the electronic device, the electronic device also performs the following operations : Analyze the description file, store the fields contained in the identification block of the description file, the fields contained in the head area of the single logical entity and the fields contained in the body area in the logical block of the description file; the first component is run according to the description file, which is the application Provide device capability services to realize the functions that the application needs to implement, including: reading the fields contained in the body area of the single logic entity in the logic block of the stored description file during the runtime of the application; for the single logic in the logic block of the description file The fields contained in the body area of the entity are parsed, and the first component is run according to the analysis result to provide device capability services for the application to implement the functions that the application needs to implement.
  • the foregoing obtaining the description file of the application includes: generating the description file when the application is running; when the computer software instruction is executed by the electronic device, the electronic device also performs the following operations: Parse, store the fields contained in the identification block of the description file, the fields contained in the head area of the single logical entity and the fields contained in the body area in the logical block of the description file; the first component is run according to the description file to provide device capability services for the application, In order to realize the functions that the application needs to implement, including: reading the fields contained in the body area of the single logical entity in the logic block of the stored description file; parsing the fields contained in the body area of the single logical entity in the logical block of the description file, and Run the first component according to the analysis result to provide device capability services for the application to realize the functions that the application needs to implement.
  • the memory also stores configuration information of all components of the electronic device; the above determining the first component according to the description file includes: determining the first component according to the description file and the configuration information of all the components stored .
  • the memory also stores configuration information of all components in the device that has established a wireless connection with the electronic device; when the computer software instruction is executed by the electronic device, the electronic device also performs the following operations: The first component is not determined, and it is determined according to the stored configuration information of the component that there is a component that can realize the functions required by the application among the components of the device connected to the electronic device, then the description file is transmitted to the device connected to the electronic device for communication with The device connected to the electronic device determines the corresponding components and runs to provide device capability services for the application and realize the functions that the application needs to implement.
  • an embodiment of the present application provides a computer-readable storage medium, including: computer software instructions; when the computer software instructions are executed in an electronic device, the electronic device is made to perform possible operations as described in the first aspect or the first aspect.
  • the embodiments of the present application provide a computer program product, which when the computer program product runs on a computer, causes the computer to execute the non-invasive method described in the first aspect or any one of the possible implementation manners of the first aspect Interactive method.
  • the embodiments of the present application provide a chip system, which is applied to an electronic device; the chip system includes an interface circuit and a processor; the interface circuit and the processor are interconnected by wires; the interface circuit is used to receive data from the memory of the electronic device Signal, and send a signal to the processor, the signal includes a computer instruction stored in the memory; when the processor executes the computer instruction, the chip system executes the non-transmittance described in the first aspect or any one of the possible implementation manners of the first aspect Intrusive interactive methods.
  • an embodiment of the present application provides a device that has the function of implementing the behavior of the electronic device in the method of the first aspect.
  • the function can be realized by hardware, or the corresponding software can be executed by hardware.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions, for example, an acquisition unit or module, a determination unit or module, an operation unit or module, and so on.
  • FIG. 1 is a schematic structural diagram of an electronic device provided by an embodiment of this application.
  • FIG. 2 is a schematic diagram of the composition of a software architecture of an electronic device provided by an embodiment of the application;
  • FIG. 3 is a schematic flowchart of a non-intrusive interaction provided by an embodiment of this application.
  • FIG. 4 is a schematic flowchart of another non-intrusive interaction provided by an embodiment of this application.
  • FIG. 5 is a schematic diagram of a display interface provided by an embodiment of the application.
  • FIG. 6 is a schematic diagram of another display interface provided by an embodiment of the application.
  • FIG. 7 is a schematic diagram of another display interface provided by an embodiment of the application.
  • the embodiments of the present application provide a non-intrusive interaction method, which can be applied to electronic devices containing applications.
  • the application in the electronic device can call the device capability service through a non-intrusive interaction method, thereby realizing the corresponding function. And it can realize cross-operating system, cross-device device capability service call.
  • the application in the embodiment of the present application may be an embedded application (that is, a system application of an electronic device) or a downloadable application.
  • Embedded applications are applications provided as part of the implementation of electronic devices.
  • a downloadable application is an application that can provide its own Internet protocol multimedia subsystem (IMS) connection.
  • the downloadable application may be an application pre-installed in the electronic device or may be a third-party application downloaded and installed in the electronic device by the user.
  • IMS Internet protocol multimedia subsystem
  • the electronic devices described in the embodiments of the present application may be mobile phones, tablet computers, desktop computers, laptops, handheld computers, notebook computers, ultra-mobile personal computers (UMPC), and netbooks.
  • devices such as cellular phones, personal digital assistants (PDAs), augmented reality (AR) ⁇ virtual reality (VR) devices, media players, etc., the specific form of the device in the embodiment of the application No special restrictions.
  • FIG. 1 is a schematic structural diagram of an electronic device provided by an embodiment of this application.
  • the electronic device 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, and a battery 142, Antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, earphone interface 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, A display screen 194, and a subscriber identification module (SIM) card interface 195, etc.
  • SIM subscriber identification module
  • the sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, and the environment Light sensor 180L, bone conduction sensor 180M, etc.
  • the structure illustrated in this embodiment does not constitute a specific limitation on the electronic device.
  • the electronic device may include more or fewer components than shown, or combine certain components, or split certain components, or arrange different components.
  • the illustrated components can be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units.
  • the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), and an image signal processor. (image signal processor, ISP), controller, memory, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (NPU) Wait.
  • AP application processor
  • modem processor modem processor
  • GPU graphics processing unit
  • image signal processor image signal processor
  • ISP image signal processor
  • controller memory
  • video codec digital signal processor
  • DSP digital signal processor
  • NPU neural-network processing unit
  • the different processing units may be independent devices or integrated in one or more processors.
  • the controller can be the nerve center and command center of the electronic device.
  • the controller can generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.
  • a memory may also be provided in the processor 110 to store instructions and data.
  • the memory in the processor 110 is a cache memory.
  • the memory can store instructions or data that the processor 110 has just used or used cyclically.
  • the processor 110 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, and a universal asynchronous transmitter/receiver (universal asynchronous) interface.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transmitter/receiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM interface SIM interface
  • USB interface universal asynchronous transmitter/receiver
  • the charging management module 140 is used to receive charging input from the charger.
  • the charger can be a wireless charger or a wired charger. While the charging management module 140 charges the battery 142, it can also supply power to the electronic device through the power management module 141.
  • the power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110.
  • the power management module 141 receives input from the battery 142 and/or the charge management module 140, and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, and the wireless communication module 160.
  • the power management module 141 may also be provided in the processor 110.
  • the power management module 141 and the charging management module 140 may also be provided in the same device.
  • the wireless communication function of the electronic device can be realized by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor.
  • the antenna 1 and the antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in an electronic device can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • the mobile communication module 150 may provide a solution for wireless communication including 2G/3G/4G/5G and the like applied to electronic devices.
  • the mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc.
  • the mobile communication module 150 can receive electromagnetic waves from the antenna 1, filter and amplify the received electromagnetic waves, and transmit them to the modem processor for demodulation.
  • the mobile communication module 150 can also amplify the signal modulated by the modem processor, and convert it into electromagnetic wave radiation via the antenna 1.
  • at least part of the functional modules of the mobile communication module 150 may be provided in the processor 110.
  • at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 may be provided in the same device.
  • the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 110 and be provided in the same device as the mobile communication module 150 or other functional modules.
  • the wireless communication module 160 can provide applications on electronic devices including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), and global navigation satellite systems. (global navigation satellite system, GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • WLAN wireless local area networks
  • BT Bluetooth
  • GNSS global navigation satellite system
  • FM frequency modulation
  • NFC near field communication
  • IR infrared technology
  • the wireless communication module 160 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110.
  • the wireless communication module 160 may also receive the signal to be sent from the processor 110, perform frequency modulation, amplify it, and convert it into electromagnetic waves to radiate through the antenna 2.
  • the antenna 1 of the electronic device is coupled with the mobile communication module 150, and the antenna 2 is coupled with the wireless communication module 160, so that the electronic device can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code division multiple access (wideband code division multiple access, WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc.
  • the GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite-based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite-based augmentation systems
  • the electronic device realizes the display function through the GPU, the display screen 194, and the application processor.
  • the GPU is an image processing microprocessor, which is connected to the display screen 194 and the application processor.
  • the GPU is used to perform mathematical and geometric calculations for graphics rendering.
  • the processor 110 may include one or more GPUs, which execute program instructions to generate or change display information.
  • the display screen 194 is used to display images, videos, and the like.
  • the display screen 194 includes a display panel.
  • the display panel can adopt liquid crystal display (LCD), organic light-emitting diode (OLED), active matrix organic light-emitting diode or active-matrix organic light-emitting diode (active-matrix organic light-emitting diode).
  • LCD liquid crystal display
  • OLED organic light-emitting diode
  • active-matrix organic light-emitting diode active-matrix organic light-emitting diode
  • emitting diode AMOLED, flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oLed, quantum dot light-emitting diode (QLED), etc.
  • the electronic device may include one or N display screens 194, and N is a positive integer greater than one.
  • Electronic equipment can achieve shooting functions through ISP, camera 193, video codec, GPU, display 194, and application processor.
  • the ISP is used to process the data fed back by the camera 193.
  • the ISP may be provided in the camera 193.
  • the camera 193 is used to capture still images or videos.
  • the electronic device may include 1 or N cameras 193, and N is a positive integer greater than 1.
  • Digital signal processors are used to process digital signals. In addition to digital image signals, they can also process other digital signals.
  • Video codecs are used to compress or decompress digital video.
  • NPU is a neural-network (NN) computing processor. By drawing on the structure of biological neural networks, for example, the transfer mode between human brain neurons, it can quickly process input information, and it can also continuously self-learn. NPU can realize the intelligent cognition of electronic equipment and other applications, such as: image recognition, face recognition, speech recognition, text understanding, etc.
  • the external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device.
  • an external memory card such as a Micro SD card
  • the internal memory 121 may be used to store computer executable program code, where the executable program code includes instructions.
  • the processor 110 executes various functional applications and data processing of the electronic device by running instructions stored in the internal memory 121.
  • the internal memory 121 may include a storage program area and a storage data area.
  • the storage program area can store an operating system, at least one application program (such as a sound playback function, an image playback function, etc.) required by at least one function.
  • the data storage area can store data (such as audio data, phone book, etc.) created during the use of the electronic device.
  • the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), and the like.
  • UFS universal flash storage
  • the electronic device can implement audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor. For example, music playback, recording, etc.
  • the audio module 170 is used to convert digital audio information into an analog audio signal for output, and is also used to convert an analog audio input into a digital audio signal.
  • the audio module 170 can also be used to encode and decode audio signals.
  • the speaker 170A also called “speaker” is used to convert audio electrical signals into sound signals.
  • the electronic device can listen to music through the speaker 170A, or listen to a hands-free call.
  • the receiver 170B also called “earpiece”, is used to convert audio electrical signals into sound signals. When the electronic device answers a call or voice message, it can receive the voice by bringing the receiver 170B close to the human ear.
  • the microphone 170C also called “microphone”, “microphone”, is used to convert sound signals into electrical signals.
  • the electronic device may be provided with at least one microphone 170C.
  • the earphone interface 170D is used to connect wired earphones.
  • the pressure sensor 180A is used to sense the pressure signal and can convert the pressure signal into an electrical signal.
  • the pressure sensor 180A may be provided on the display screen 194.
  • the gyro sensor 180B can be used to determine the movement posture of the electronic device.
  • the air pressure sensor 180C is used to measure air pressure.
  • the electronic device calculates the altitude based on the air pressure value measured by the air pressure sensor 180C to assist positioning and navigation.
  • the magnetic sensor 180D includes a Hall sensor. The electronic device can use the magnetic sensor 180D to detect the opening and closing of the flip holster.
  • the acceleration sensor 180E can detect the magnitude of the acceleration of the electronic device in various directions (generally three axes). It can also be used to identify the posture of electronic equipment.
  • Distance sensor 180F used to measure distance. Electronic equipment can measure distance through infrared or laser.
  • the proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector such as a photodiode.
  • the electronic device emits infrared light to the outside through the light-emitting diode.
  • Electronic devices use photodiodes to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device. When insufficient reflected light is detected, the electronic device can determine that there is no object near the electronic device.
  • the ambient light sensor 180L is used to sense the brightness of the ambient light.
  • the electronic device can adaptively adjust the brightness of the display screen 194 according to the perceived brightness of the ambient light.
  • the ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the electronic device is in the pocket to prevent accidental touch.
  • the fingerprint sensor 180H is used to collect fingerprints. Electronic devices can use the collected fingerprint characteristics to unlock fingerprints, access application locks, take photos with fingerprints, and answer calls with fingerprints.
  • the temperature sensor 180J is used to detect temperature. In some embodiments, the electronic device uses the temperature detected by the temperature sensor 180J to execute the temperature processing strategy.
  • Touch sensor 180K also called “touch panel”.
  • the touch sensor 180K may be disposed on the display screen 194, and the touch screen is composed of the touch sensor 180K and the display screen 194, which is also called a “touch screen”.
  • the touch sensor 180K is used to detect touch operations acting on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • the visual output related to the touch operation can be provided through the display screen 194.
  • the touch sensor 180K may also be disposed on the surface of the electronic device, which is different from the position of the display screen 194.
  • the bone conduction sensor 180M can acquire vibration signals.
  • the bone conduction sensor 180M may also be provided in the earphone, combined with the bone conduction earphone.
  • the audio module 170 can parse the voice signal based on the vibration signal of the vibrating bone block of the voice obtained by the bone conduction sensor 180M, and realize the voice function.
  • the button 190 includes a power-on button, a volume button, and so on.
  • the button 190 may be a mechanical button. It can also be a touch button.
  • the electronic device can receive key input, and generate key signal input related to user settings and function control of the electronic device.
  • the motor 191 can generate vibration prompts.
  • the motor 191 can be used for incoming call vibration notification, and can also be used for touch vibration feedback.
  • the indicator 192 may be an indicator light, which may be used to indicate the charging status, power change, or to indicate messages, missed calls, notifications, and so on.
  • the SIM card interface 195 is used to connect to the SIM card.
  • the SIM card can be inserted into the SIM card interface 195 or pulled out from the SIM card interface 195 to achieve contact and separation with the electronic device.
  • the electronic device can support 1 or N SIM card interfaces, and N is a positive integer greater than 1.
  • the software system of the above electronic device may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
  • the embodiment of the present application takes an Android system with a layered architecture as an example to illustrate the software structure of an electronic device.
  • FIG. 2 is a schematic diagram of the composition of a software architecture of an electronic device provided by an embodiment of this application.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Communication between layers through software interface.
  • the Android system is divided into three layers, from top to bottom, the application layer, the bus layer, and the component service layer. Based on this software architecture, applications and operating systems can use non-intrusive interactions to call device capabilities and services.
  • the software architecture can be applied to scenarios where service providers and application developers are separated on multiple devices.
  • the application layer can include a series of application packages.
  • the application package can include applications such as Amazon, WeChat, Settings, Calculator, Camera, Toutiao, SMS, and music player.
  • some functions of the application need to be implemented by calling the device capability service.
  • the application When the application needs to call the device capability service to implement the corresponding function, it can send a description file to the bus layer.
  • the description file is used to indicate that the application needs to implement functions.
  • the bus layer may include bus modules.
  • the bus module is responsible for connecting the application of the application layer with the components of the component service layer.
  • the bus module can be used to receive application description files from the application layer.
  • the description file After receiving the description file of the application from the application layer, the description file can be parsed, so as to find the corresponding components used to realize the functions required by the application from the components of the component service layer according to the parsed description file. The found components are used to provide equipment capability services for applications to implement corresponding functions.
  • the component service layer can include multiple components, such as component 1, component 2, component 3, ..., component n. Each component serves the capability of a device capable of completing an independent function.
  • the device capability services provided by different components can be the same or different.
  • the component of the component service layer can be started to provide the corresponding device capability service for the application , So as to achieve the corresponding function.
  • this embodiment does not specifically limit the bearing form of components. For example, different components can be carried in different logical entities for implementation, and different components can also be carried in one logical entity for implementation.
  • the description file can be defined using a non-intrusive protocol description to indicate that the application needs to implement a function.
  • the non-intrusive protocol description is a descriptive language used to support the interaction between the application at the application layer and the bus module at the bus layer, and can give full play to the advantages of the descriptive language across devices.
  • json JavaScript object notation
  • the json language is a lightweight data exchange format based on the JavaScript language.
  • EasyGoVersion identifies the non-intrusive protocol version number.
  • the client identifies the application (or client) that uses the non-intrusive protocol.
  • signInfo identifies the signature of an application that uses a non-intrusive protocol.
  • logicEntities identifies a collection of logical entities.
  • head identifies the general area of the head in the logical entity.
  • the body identifies the custom data area of the component.
  • the function identifies the component. required identifies whether the component must be executed.
  • the description file of the above example follows the non-intrusive protocol version 1.0.
  • the non-intrusive protocol version 1.0 can include the fields in the above example.
  • the field support can be extended.
  • the first to third rows are identification blocks. It can be seen that the identification block contains general fields such as protocol version number, application identification, and application signature.
  • the remaining rows are logical blocks.
  • the logic block is the logical entity when the component is running.
  • a logic block can be composed of one or more single logic entities. In this embodiment, it supports parallel configuration of multiple logical entities and serial configuration of multiple logical entities.
  • a nesting method can be used, using hasNext to identify whether it is a serial configuration or a parallel configuration. For example, “hasNext”: “false” is used to identify a parallel configuration, that is, to identify components that are not running serially. "HasNext”: “ture” is used to identify serial configuration, that is, to identify components that run serially.
  • the single logic entity in the logic block represents the running instance of a component, that is, calling a component to provide the corresponding equipment capability service.
  • a single logical entity contains a head area and a body area.
  • the head area contains the component name, such as function can be used to identify.
  • the head area can also contain general fields related to other components, such as the identification of whether the component must be executed (such as required to identify), and whether there is the identification of serially running components (such as hasNext to identify).
  • the head area may also contain the identification of the specific component to be used (for example, the parameter may be used for identification, which is not shown in the above example).
  • the identifier can be used to match the component to be used by the application.
  • the body area contains component custom fields (or custom keys).
  • the data contained in the body area is related to the function (or business) that the component can complete.
  • the application of the application layer can realize the call to the corresponding component by issuing the description file described by the non-intrusive protocol to the bus module of the bus layer.
  • bus modules of the bus layer The following describes the bus modules of the bus layer.
  • the bus module may include: application layer general interface, protocol specification, protocol infrastructure, component infrastructure, component routing module, data analysis/execution module, data storage module and remote bus interconnection module.
  • the general interface of the application layer can be implemented by the general PostData interface.
  • the application of the application layer can transmit the description file to the bus module of the bus layer through the general interface of the application layer.
  • the protocol infrastructure can be responsible for implementing the basic data structure of a non-intrusive protocol.
  • the basic data structure is the standard format of the non-intrusive protocol, including the identification block and the logic block class, as well as the data structure of the standard Key of the identification block, and the data structure of the standard Key of the logic block.
  • Protocol specifications can be responsible for providing specific data and logic specifications in non-intrusive protocols.
  • the protocol specification can also provide a normative verification function for the description file issued by the application at the application layer. Among them, according to the protocol infrastructure and protocol specifications, the specification of the description file can be verified. For example, the protocol version number, client's identification, signature and function in the description file can be verified to verify the specification of the description file.
  • the protocol version number, client ID, signature and function in the description file are not empty, confirm that the description file has passed the verification.
  • verifying the function invalid spaces in the corresponding data can be removed, the case can also be ignored, and all the letters are converted to lower case.
  • the component infrastructure defines the basic elements of components in the component service layer, including action and meta-data mechanisms.
  • the action and meta-data mechanism will be described in the introduction to the components below.
  • the data analysis/execution module can be used to analyze/verify the application description file from the application layer according to the above protocol specification and protocol infrastructure. It can also be used to start the corresponding execution logic according to the serial and parallel configuration of the logic entity in the description file according to the protocol specification. If the logic entity in the description file is a serial configuration, then the serial logic is executed, that is, each component is run serially, and as described If the logical entities in the file are configured in parallel, the parallel logic is executed, that is, the components are run in parallel.
  • the data analysis/execution module connects the component routing module and the data storage module. For example, after the data analysis/execution module parses the description file, the corresponding analysis result can be transmitted to the component routing module and/or the data storage module.
  • the component routing module is used to realize the function of finding the corresponding component from the components of the component service layer according to the description file from the application layer application. For example, the component routing module can search for the corresponding component based on the analysis result of the description file from the data analysis/execution module, and notify the component to provide the application with corresponding device capability services.
  • the component routing module can also provide a query function for the component's custom data (such as the data contained in the above body area).
  • the data storage module is responsible for the storage of the analysis results of the description file.
  • the remote bus interconnection module can connect the bus module of other equipment bus layer through the network.
  • the remote bus interconnect module can also be used to transmit application description files from the application layer.
  • the remote bus interconnection module can transfer application description files from the application layer to the bus modules of other devices with corresponding components.
  • components are modules that provide equipment capability services and can implement independent functions.
  • the component contains at least the following three characteristics:
  • Feature 1 Able to realize the analysis of component custom data provided by non-intrusive protocols.
  • Feature 2 Has its independent configuration information.
  • the component can add the configuration information of the component in the following format (for example, the format can be called action, meta-data mechanism) in the logical entity that carries it:
  • the first line is used to identify the following components are components that support non-intrusive protocols.
  • the second and third lines respectively identify the functions implemented by different components.
  • the electronic device can provide video playback services and video upload services for applications. Then, the corresponding play video component and upload video component can add configuration information in the following format in the logical entity that carries it:
  • the second line is used to identify that the function implemented by the component is video playback, which can provide video playback services for the application.
  • the third line is used to identify that the function implemented by the component is video upload, which can provide an upload video service for the application.
  • Feature 3 Contains the interface used to realize the interaction with the bus module.
  • a general PostData interface can be used for implementation, for example, the interface is: PostData (json easygo).
  • the application at the application layer in the electronic device uses a non-intrusive interaction method, that is, by issuing a description file to the bus module of the bus layer to indicate that the application needs to implement functions, so that The bus module can find the corresponding component for the corresponding function from the components of the component service layer according to the description file. After the found components are started up and running, they can provide the application with corresponding device capability services to realize the corresponding functions.
  • the non-intrusive interaction mode based on the above software architecture can be divided into static interaction and runtime interaction.
  • static interaction can refer to the description file used to indicate certain functions that the application needs to achieve.
  • the application interacts with the bus module of the bus layer. To complete the interaction.
  • the corresponding component can directly provide the corresponding device capability service for the application according to the interactive result completed in advance, and then realize the corresponding function.
  • the static interaction method is suitable for self-starting components.
  • a self-starting component refers to a component that automatically starts when an electronic device is turned on, such as a component that provides interface self-adaptation services. The data required for self-starting components to provide corresponding services will not change with changes in the operating environment.
  • the non-operational period of the application may include periods such as when the application is installed.
  • Runtime interaction can refer to the description file used to indicate certain functions that the application needs to implement.
  • the application then completes the interaction with the bus module of the bus layer, and provides the application with corresponding device capability services according to the interaction result. , And then realize the corresponding function.
  • the interaction mode of runtime interaction is suitable for components whose data used to provide corresponding services can change at any time during the application runtime. Therefore, when the application requires the component to provide services, data interaction is performed with the bus module of the bus layer.
  • the application installer When the application is installed, the application installer reads the description file of the application (that is, performs step 1 in Figure 3), and transfers the read description file by calling the application layer general interface of the bus layer bus module, such as the PostData interface To the bus module (that is, perform step 2 in Figure 3).
  • the application installer is a software module responsible for application installation.
  • the application installer can be responsible for the analysis of the application configuration, the decompression of the application package, and the solidification of the application file to the application installation directory.
  • the description file is configured and packaged into the installation package of the application by the application developer according to the function to be realized by the application. This function may include a function implemented by calling the device capability service provided by the self-starting component.
  • the description file can be transmitted to the data analysis/execution module (that is, step 3 in FIG. 3 is executed).
  • the data analysis/execution module parses the description file according to the protocol specification and the protocol infrastructure, and verifies the standardization of the description file. After verifying the description file specification, the data analysis/execution module will parse the data obtained (for example, include the standard key/value values in the identification block and logic block in the description file, and also include component-related data, such as the description file
  • the data in the body area is transmitted to the data storage module (that is, step 4 in Figure 3 is executed).
  • the data storage module stores the received data.
  • the data analysis/execution module does not analyze the data in the body area of the description file, that is, the component custom data, but directly transmits it to the data storage module for storage. At this point, the interaction between the application and the bus module is completed.
  • the self-starting component can query the data storage module of the bus module in real time through the interface with the bus module, such as PostData (json easygo), to obtain the component customization corresponding to the self-starting component data.
  • the self-starting component can parse the acquired custom data of the component when running the device capability service provided by the component, and provide the corresponding device capability service to the application to realize the corresponding function.
  • the application interface contains display elements that are too close to the edge of the display screen, the display may be deformed or the user may touch by mistake.
  • the application developer can configure a description file in the application (today's headlines, etc.), and the description file contains information indicating that the application needs to implement the margin self-adjustment function.
  • the margin self-adaptation function can be implemented using the hypersurface self-adaptation service provided by component A. In this way, when the application is installed, the description file can be transmitted to the bus module of the bus layer to complete data interaction.
  • component A runs and queries the data in the data storage module of the bus module to obtain component custom data corresponding to component A (for example, perform step 5-1 in FIG. 3).
  • Component A can analyze the acquired component customization data when running the hypersurface self-adaptation service provided by component A, and automatically adjust the margins according to the current interface of the application to avoid getting close to the current interface of the application.
  • the display elements on the edges appear to be deformed, which can also prevent the user from touching by mistake.
  • the application developer can configure a description file in the application (such as Amazon and other shopping applications).
  • the description file contains instructions that the application needs to implement page side-by-side display functions (such as the store home page and product details page side-by-side display, The product details page and the customer service page are displayed side by side, etc.) and information suitable for side-by-side display of the page.
  • this page side-by-side display function can be implemented using the large-screen self-adaptation service provided by component B.
  • component B runs and queries the data in the data storage module of the bus module to obtain component custom data corresponding to component B, such as information suitable for side-by-side display of the page (such as performing the steps in Figure 3) 5-2).
  • Component B can parse the acquired component customization data when running the large-screen self-adaptation service provided by component B, and display the corresponding pages of the application side by side according to the current interface of the application, so as to improve the user’s browsing and Operational efficiency.
  • the application When the application is running, the application generates a corresponding description file according to the function to be implemented, and transfers the generated description file to the bus module by calling the application layer general interface of the bus layer bus module, such as the PostData interface.
  • the application layer general interface of the bus layer bus module such as the PostData interface.
  • the description file is used to indicate what Application 1 wants to achieve.
  • the function is the movie ticket reservation function, and the description file is transferred to the application layer general interface of the bus module, such as the PostData interface (that is, step 1-1 in Figure 4 is executed).
  • the description file includes the "function": "movieTicket" field.
  • the corresponding application of the electronic device can generate a corresponding description file.
  • the description file is used to indicate that the function to be implemented by the application 2 is the face recognition function, and the description
  • the file is transferred to the application layer general interface of the bus module, such as the PostData interface (that is, steps 1-2 in Figure 4 are executed).
  • the application layer general interface of the bus module for example, after the PostData interface receives the description file, the description file can be transmitted to the data analysis/execution module (that is, step 2 in FIG. 4 is executed).
  • the data analysis/execution module parses the description file according to the protocol specification and the protocol infrastructure, and verifies the standardization of the description file. After verifying the description file specification, the data analysis/execution module will parse the data obtained (for example, include the standard key/value values in the identification block and logic block in the description file, and also include component-related data, such as the description file
  • the data in the body area is transferred to the data storage module (that is, step 3 in Figure 4 is executed).
  • the data storage module stores the received data. Among them, it should be noted that the data analysis/execution module does not analyze the data in the body area of the description file, that is, the component custom data, but directly transmits it to the data storage module for storage.
  • the data analysis/execution module can also transmit the analyzed data (such as component-related data, such as data in the head area contained in the logic block in the description file) to the component routing module to trigger component routing
  • the module performs routing (that is, step 4 in Figure 4 is performed).
  • the bus module will automatically start and scan all components of the electronic device according to the component infrastructure. If the electronic device has established a connection with other devices, it can also scan all the components of the other device, and The configuration information of all scanned components is stored in the data storage module.
  • components that are not configured in the electronic device such as components that provide underlying system services are usually not configured, such components can automatically transmit their corresponding information (such as configuration information) to the bus when the device is turned on.
  • Module used for component routing.
  • the component routing module When the component routing module performs component routing, it can search for components that can provide corresponding device capability services from the components of the component service layer according to the configuration information stored in the data storage module. In some embodiments, if the electronic device has established a connection with other devices, when the component routing module performs component routing, it may first check whether there is a component that can provide corresponding device capability services among the components of the device. If there is a component that can provide the corresponding device capability service among the components of the device, the component is notified to start. For example, in combination with the above example, the description file is used to indicate that the function to be implemented by the application is a movie ticket reservation function.
  • the component routing module finds a component that can provide life services in the components of the device, such as component 1, which can be used to realize the movie ticket reservation function, then the component routing module informs the component 1 to start (that is, execute the component 1 in Figure 4). Step 5-1).
  • the description file is used to indicate that the function to be implemented by the application is a face recognition function.
  • the component routing module finds a component that can provide artificial intelligence (AI) services in the components of the device, such as component 2, which can be used to realize the face recognition function, then the component routing module notifies the component 2 Start (that is, perform step 5-2 in Figure 4).
  • AI artificial intelligence
  • the received description file is transmitted to other devices connected to the device through the remote bus interconnection module.
  • a device for example, a remote bus interconnection module in a bus module that is transmitted to other devices, that is, step 6 in FIG. 4 is executed, and the device includes a component capable of providing corresponding device capability services.
  • the device After the description file is transmitted to the other device, the device re-parses and verifies the description file and triggers the component routing module to perform routing until it finds a component that can provide the corresponding device capability service, and notifies the component to start.
  • the component can query the data storage module of the bus module in real time through the interface with the bus module, such as PostData (json easygo), to obtain the component custom data corresponding to the component.
  • the component can parse the acquired component custom data when running the device capability service provided by the component, and provide the corresponding device capability service to the application to realize the corresponding function.
  • the data storage module is inquired to obtain the component custom data corresponding to the component 1 (that is, step 7-1 in FIG. 4 is executed).
  • the data storage module is inquired to obtain the component custom data corresponding to the component 2 (that is, step 7-2 in FIG. 4 is executed).
  • the component service layer of a mobile phone includes split-screen components.
  • the split-screen component can provide split-screen services and realize the split-screen display function.
  • the split screen component may display the pages of the application in split screens according to the activity characteristics of the application.
  • the split screen component may belong to the aforementioned self-starting component.
  • a static interactive interaction method can be used.
  • the application completes the interaction with the bus module of the bus layer.
  • the application developer can configure and package the corresponding description file into the installation package of the application. When the application is installed, the description file is transferred to the bus module of the bus layer.
  • the data obtained by the analysis is stored, for example, it contains the standard key/value values in the identification block and the logic block in the description file, and also contains component-related data (such as The data in the body area of the description file).
  • component-related data such as The data in the body area of the description file.
  • the split-screen service provided by the split-screen component includes two split-screen display modes, namely: a list mode and a non-list mode.
  • the list mode is suitable for information flow applications, such as news applications.
  • the non-list mode is suitable for scenarios where a single product is displayed in multiple dimensions or associated displays, and supports scenarios where two products are compared in a split screen, such as shopping applications.
  • the list mode can include two modes: single list and multiple list.
  • the split-screen display of the application page can be: the display of the mobile phone is divided into two display areas on the left and right, the home page of the application is always displayed in the display area on the left, and other pages of the application can be displayed on the right. Display area on the side.
  • the corresponding description file can be passed to the bus module, and the bus module parses the description file and verifies it. After verifying the specification of the description file, store the parsed data. As shown in (a) of FIG. 5, after the user opens the headline of today, the mobile phone displays the homepage 501 of headline of today.
  • the above-mentioned split-screen component runs, reads and parses the stored data to provide split-screen services for today's headlines, and realizes split-screen display of today's headlines.
  • the mobile phone displays the homepage 501 of Today's Toutiao on the left area of the display screen, and other pages 502 are displayed on the right area.
  • the split-screen component can also provide services for exiting the split-screen display.
  • the user wants to exit the split-screen display he can exit the split-screen display by executing a corresponding gesture, which can solve the discomfort of half-screen reading when reading long content.
  • the user can also re-trigger the split-screen display of the mobile phone by executing the corresponding mobile phone.
  • a multi-list mode can be used for split-screen display.
  • the split-screen display of this type of application page may be: after the application is started, as shown in Figure 6 (a), the mobile phone displays the home page of the application in full screen. If the user clicks an option on the home page to trigger the display of a non-list page, as shown in Figure 6 (b), the mobile phone divides the display into two display areas, the left area displays the home page, and the right area displays the non-list page. List.
  • the mobile phone displays the recommended page in full screen. If the user is in the split-screen display shown in Figure 6 (b) and clicks on the option on the home page to trigger the display of other list pages, such as the search page, as shown in Figure 6 (d), the phone is in the left area The home page is displayed, and the search page is displayed in the right area.
  • the split-screen component can also provide services for exiting the split-screen display.
  • split-screen display For applications that use non-list mode for split-screen display, you can perform split-screen display according to the rules for simultaneous display of related activities. Take shopping applications as an example. Related activities may include: an activity that carries a product detail page, an activity that carries a customer service page of the product, an activity that carries a product review page, and an activity that carries a detail page of a product similar to the product.
  • the split-screen display of a shopping application page may be: after the application is started, the mobile phone can display the homepage of the application in full screen. If the user clicks on the option on the homepage to trigger the display of the detail page of a product, such as the detail page 1, the mobile phone can display the detail page 1 in full screen. If the user clicks the option on the detail page 1 to trigger the display of the store homepage, the mobile phone displays the store homepage in full screen. If the user clicks the option on the detail page 1 to trigger the display of the detail page of the product related to the product, such as the detail page 2, the mobile phone divides the display into two display areas on the left and right, and the left area displays the detail page 1. The detail page 2 is displayed in the right area.
  • the mobile phone divides the display into two display areas on the left and right, the left area displays the details page 1, and the right area displays Customer service page 1.
  • the mobile phone displays the details page 1 in the left area and the details page 2 in the right area
  • the user clicks the option on the details page 1 to trigger the display of the details page of the product related to the product such as the details page 3.
  • the left area continues to display the details page 1, and the right area displays the details page 3.
  • the user clicks the option on the detail page 1 to trigger the display of the customer service page of the product such as customer service page 1
  • the left area continues to display the details page 1
  • the right area displays the customer service page 1.
  • the user clicks the option on the detail page 2 to trigger the display of the detail page of the product related to the product, such as the detail page 3 the detail page 2 is displayed in the left area and the detail page 3 is displayed in the right area.
  • the user clicks on the option on the detail page 2 to trigger the display of the customer service page of the product such as customer service page 2
  • the left area displays the detail page 2
  • the right area displays the customer service page 2.
  • the mobile phone displays the details page 1 in the left area and the customer service page 1 in the right area
  • the left area continues to display the details page 1
  • the right area displays the details page 2.
  • the user clicks the option on the detail page 1 to trigger the display of the comment page of the product the left area continues to display the detail page 1, and the right area displays the comment page.
  • the stored data is read and analyzed to provide split-screen services to the application and achieve split-screen display of the application page.
  • the component service layer of both the mobile phone and the smart speaker includes audio playback components, and a connection is established between the mobile phone and the smart speaker.
  • the audio playback component can provide audio playback services and realize audio playback functions.
  • the audio playback component function of the mobile phone is phoneMusicPlay
  • the audio playback component function of the smart speaker is boxMusicPlay. If you want to implement the following logic when the user starts the music player to play music: play a piece of music, use the audio playback service provided by the audio playback component to implement the audio playback function, and prioritize the use of smart speakers for playback. Because this kind of scene is a user-triggered music playback, a runtime interactive interaction method can be adopted. When the music player is running, the application completes the interaction with the bus module of the bus layer.
  • the user opens the music player on the mobile phone and clicks on the music that needs to be played.
  • the music player can generate the following description file and transmit it to the bus module of the bus layer.
  • the bus module performs analysis and verification, and the boxMusicPlay audio playback component obtained by the bus module analysis is given priority.
  • the bus module searches for the device, that is, whether there is a boxMusicPlay audio player component in the mobile phone, but does not find the boxMusicPlay audio player component.
  • the bus module transmits the description file to the bus module of the smart speaker.
  • the bus module of the smart speaker is analyzed to give priority to the boxMusicPlay audio playback component, and the data in the body area can also be stored.
  • the bus module of the smart speaker finds the boxMusicPlay audio playback component in the device, and starts the boxMusicPlay audio playback component.
  • the boxMusicPlay audio playback component runs, reads and parses the stored data in the body area to provide audio playback services to the music player for music playback.
  • inventions of the present application also provide an electronic device for executing the method in the above embodiment, so as to realize the function of the electronic device in the above embodiment.
  • the electronic device may include: a display screen; one or more processors; and a memory.
  • the above-mentioned devices can be connected through one or more communication buses.
  • One or more computer program codes are stored in the foregoing memory, and the one or more computer program codes include computer instructions.
  • One or more processors are used to execute the computer instructions and can be used to implement the behavior and functions of the electronic device in the foregoing embodiments.
  • inventions of the present application also provide a computer-readable storage medium.
  • the computer-readable storage medium may include computer software instructions.
  • the computer software instructions run on an electronic device, the electronic device executes the electronic device in the above-mentioned embodiments. The steps performed by the device.
  • inventions of the present application also provide a computer program product, which when the computer program product runs on a computer, causes the computer to execute each step performed by the electronic device in the above-mentioned embodiments.
  • inventions of the present application also provide a device, which has the function of realizing the behavior of the electronic device in the foregoing embodiments.
  • the function can be realized by hardware, or the corresponding software can be executed by hardware.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions, for example, an acquisition unit or module, a determination unit or module, an operation unit or module, and so on.
  • the chip system includes an interface circuit and a processor; the interface circuit and the processor are interconnected by wires; the interface circuit is used to receive signals from the memory of the electronic device and send signals to the processor.
  • the signals include computer instructions stored in the memory; when the processor executes When the computer is instructed, the chip system executes each step executed by the electronic device in the above-mentioned embodiment.
  • the electronic equipment, computer-readable storage medium, computer program product, device, and chip system provided in the embodiments of the present application can execute the actions of the electronic equipment in the above-mentioned embodiments, and the implementation principles and technical effects are similar, and will not be repeated here.
  • the disclosed device and method can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, for example, multiple units or components may be divided. It can be combined or integrated into another device, or some features can be omitted or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate parts may or may not be physically separate.
  • the parts displayed as units may be one physical unit or multiple physical units, that is, they may be located in one place, or they may be distributed to multiple different places. . Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium.
  • the technical solutions of the embodiments of the present application are essentially or the part that contributes to the prior art, or all or part of the technical solutions can be embodied in the form of a software product, and the software product is stored in a storage medium. It includes several instructions to make a device (may be a single-chip microcomputer, a chip, etc.) or a processor (processor) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program code .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)

Abstract

一种非侵入式交互方法及电子设备,涉及电子设备领域。通过采用非侵入式的交互方式,使得应用无需集成各种功能接口包便可实现对设备能力服务的调用,实现对应功能。且可实现跨操作系统,跨设备的设备能力服务调用。电子设备获取应用的描述文件,描述文件用于指示应用需要实现的功能,描述文件采用非侵入式协议描述定义;根据描述文件确定第一组件,第一组件是电子设备的组件中能够实现应用需要实现功能的组件,电子设备的组件是电子设备中根据非侵入式协议配置的用于提供设备能力服务的模块,能够实现独立功能;根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。

Description

一种非侵入式交互方法及电子设备
本申请要求于2019年09月05日提交国家知识产权局、申请号为201910840922.6、申请名称为“一种终端交互系统”,及于2019年09月19日提交国家知识产权局、申请号为201910886241.3、申请名称为“一种非侵入式交互方法及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及电子设备领域,尤其涉及一种非侵入式交互方法及电子设备。
背景技术
如今,手机等电子设备已成为人们日常生活和工作中必不可少的通讯工具。通过在电子设备中安装应用程序(application,APP,以下简称为应用),可以完善电子设备功能,为用户提供更丰富的使用体验。其中,应用有些功能的实现依赖于电子设备操作系统提供的设备能力服务。
目前,应用和电子设备操作系统的交互使用侵入式的交互方式。具体的:电子设备的操作系统提供用于实现不同功能的设备能力服务,并给应用提供对应的功能接口。功能接口可封装成软件开发包(software develop kit,SDK),称为功能接口包。应用集成功能接口包后,可调用对应设备能力服务,以实现对应功能。
这种侵入式的交互方式至少存在如下缺点:无法跨操作系统,即如果功能接口包是基于一种操作系统(如安卓操作系统)实现的,那么其只能调用该操作系统提供的对应设备能力服务,无法调用其他操作系统提供的相同设备能力服务。无法跨设备,即安装在一个电子设备中的应用集成了一个功能接口包,通过该功能接口包该应用只能调用该电子设备操作系统提供的对应设备能力服务,无法调用其他设备操作系统提供的相同设备能力服务。应用或功能接口包必须做好兼容性,否则即使应用集成了功能接口包,也无法调用对应设备能力服务。电子设备操作系统提供的设备能力服务种类较多,对应的功能接口包也较多,也即功能接口包碎片化,这会出现一个应用集成过多功能接口包的情况。
发明内容
本申请实施例提供一种非侵入式交互方法及电子设备,通过采用非侵入式的交互方式,使得应用无需集成各种各样的功能接口包便可实现对设备能力服务的调用,进而实现对应功能。且可实现跨操作系统,跨设备的设备能力服务调用。
本申请采用如下技术方案:
第一方面,本申请实施例提供一种非侵入式交互方法,该方法可以应用于电子设备,该方法可以包括:电子设备获取应用的描述文件,描述文件用于指示应用需要实现的功能,描述文件采用非侵入式协议描述定义;电子设备根据描述文件确定第一组件,第一组件是电子设备的组件中能够实现应用需要实现功能的组件,电子设备的组件是电子设备中根据非侵入式协议配置的用于提供设备能力服务的模块,能够实现独立功能;电子设备根据描述文件运行第一组件,为应用提供设备能力服务,以实现应 用需要实现的功能。
采用上述技术方案,电子设备在获取到应用采用非侵入式协议描述定义的描述文件后,可以根据描述文件从电子设备的组件中确定能够实现应用需要实现功能的组件。电子设备的组件是电子设备中根据非侵入式协议配置的用于提供设备能力服务的模块,能够实现独立功能。电子设备根据描述文件运行上述确定出的组件,为应用提供设备能力服务,以实现应用需要实现的功能。这样,电子设备中的应用通过非侵入式的交互方式,便可实现对设备能力服务的调用,从而实现对应功能。且可实现跨操作系统,跨设备的设备能力服务调用。
在一种可能的实现方式中,描述文件由标识块和逻辑块组成,标识块包含以下字段:描述文件所遵循的非侵入式协议版本号,应用的标识,应用的签名;逻辑块由一个或多个单逻辑实体组成;逻辑块中的单逻辑实体用于指示一个组件的运行实例,逻辑块中的单逻辑实体包括头部(head)区域;head区域包含:用于标识能够实现应用需要实现功能的组件的字段;上述电子设备根据描述文件确定第一组件可以包括:电子设备根据描述文件的标识块包含的字段和head区域包含的字段,对描述文件的规范性进行校验;电子设备在确定描述文件的规范性校验通过时,根据描述文件的逻辑块中单逻辑实体的head区域包含的字段确定第一组件。这样,通过采用非侵入式协议描述来生成描述文件,可充分发挥描述性语言跨设备的优势。
在另一种可能的实现方式中,逻辑块中的单逻辑实体还包括体部(body)区域,body区域包含:用于组件实现功能所需数据的字段;上述电子设备根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能,可以包括:电子设备根据描述文件的逻辑块中单逻辑实体的body区域包含的字段运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。
在另一种可能的实现方式中,上述电子设备获取应用的描述文件,可以包括:电子设备在应用的非运行期,获取预先配置的描述文件;该方法还可以包括:电子设备对描述文件进行解析,存储描述文件的标识块包含的字段,描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;上述电子设备根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能,包括:电子设备在应用的运行期,读取存储的描述文件的逻辑块中单逻辑实体的body区域包含的字段;电子设备对描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。其中,预先配置的描述文件适用于对应组件提供服务时所需使用的数据不会随着运行环境的变化而变化的场景。如适用于自启动组件。这样,可以提高组件运行的效率。
在另一种可能的实现方式中,上述电子设备获取应用的描述文件,可以包括:电子设备在应用运行时,生成描述文件;该方法还可以包括:电子设备对描述文件进行解析,存储描述文件的标识块包含的字段,描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;上述电子设备根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能,可以包括:电子设备读取存储的描述文件的逻辑块中单逻辑实体的body区域包含的字段;电子设备对描述文件的 逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。对于对应组件提供服务所需使用的数据会随着运行环境的变化而变化的场景,可以通过该过程实现描述文件的交互。
在另一种可能的实现方式中,上述电子设备中存储有电子设备所有组件的配置信息;电子设备根据描述文件确定第一组件,可以包括:电子设备根据描述文件和存储的所有组件的配置信息,确定第一组件。通过在电子设备中存储自身所支持组件的配置信息,以便能根据描述文件查找到能够提供对应服务的组件,为应用提供对应服务。
在另一种可能的实现方式中,电子设备中还存储有与电子设备建立了无线连接的设备中所有组件的配置信息;该方法还可以包括:如果电子设备未确定出第一组件,且根据存储的组件的配置信息确定与电子设备连接的设备的组件中存在能够实现应用需要实现功能的组件,则电子设备向与电子设备连接的设备传输描述文件,用于与电子设备连接的设备确定对应组件并运行,以为应用提供设备能力服务,实现应用需要实现的功能。电子设备中可以存储有与自身连接的其他电子设备的组件的配置信息,这样在该电子设备中没有能够为应用提供服务的组件时,可以将描述文件发给其他能够提供对应服务的设备,实现了跨设备的能力服务调用。
第二方面,本申请实施例提供一种电子设备,该电子设备可以包括:处理器和存储器;处理器和存储器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机软件指令,当计算机软件指令被电子设备执行时,使得电子设备执行如下操作:获取应用的描述文件,描述文件用于指示应用需要实现的功能,描述文件采用非侵入式协议描述定义;根据描述文件确定第一组件,第一组件是电子设备的组件中能够实现应用需要实现功能的组件,电子设备的组件是电子设备中根据非侵入式协议配置的用于提供设备能力服务的模块,能够实现独立功能;根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。
在一种可能的实现方式中,描述文件由标识块和逻辑块组成,标识块包含以下字段:描述文件所遵循的非侵入式协议版本号,应用的标识,应用的签名;逻辑块由一个或多个单逻辑实体组成;逻辑块中的单逻辑实体用于指示一个组件的运行实例,逻辑块中的单逻辑实体包括头部head区域;head区域包含:用于标识能够实现应用需要实现功能的组件的字段;上述根据描述文件确定第一组件,包括:根据描述文件的标识块包含的字段和head区域包含的字段,对描述文件的规范性进行校验;在确定描述文件的规范性校验通过时,根据描述文件的逻辑块中单逻辑实体的head区域包含的字段确定第一组件。
在另一种可能的实现方式中,逻辑块中的单逻辑实体还包括体部body区域,body区域包含:用于组件实现功能所需数据的字段;上述根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能,包括:根据描述文件的逻辑块中单逻辑实体的body区域包含的字段运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。
在另一种可能的实现方式中,上述获取应用的描述文件,包括:在应用的非运行期,获取预先配置的描述文件;当计算机软件指令被电子设备执行时,使得电子设备 还执行如下操作:对描述文件进行解析,存储描述文件的标识块包含的字段,描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;上述根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能,包括:在应用的运行期,读取存储的描述文件的逻辑块中单逻辑实体的body区域包含的字段;对描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。
在另一种可能的实现方式中,上述获取应用的描述文件,包括:在应用运行时,生成描述文件;当计算机软件指令被电子设备执行时,使得电子设备还执行如下操作:对描述文件进行解析,存储描述文件的标识块包含的字段,描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;上述根据描述文件运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能,包括:读取存储的描述文件的逻辑块中单逻辑实体的body区域包含的字段;对描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行第一组件,为应用提供设备能力服务,以实现应用需要实现的功能。
在另一种可能的实现方式中,存储器中还存储有电子设备所有组件的配置信息;上述根据描述文件确定第一组件,包括:根据描述文件和存储的所有组件的配置信息,确定第一组件。
在另一种可能的实现方式中,存储器中还存储有与电子设备建立了无线连接的设备中所有组件的配置信息;当计算机软件指令被电子设备执行时,使得电子设备还执行如下操作:如果未确定出第一组件,且根据存储的组件的配置信息确定与电子设备连接的设备的组件中存在能够实现应用需要实现功能的组件,则向与电子设备连接的设备传输描述文件,用于与电子设备连接的设备确定对应组件并运行,以为应用提供设备能力服务,实现应用需要实现的功能。
第三方面,本申请实施例提供一种计算机可读存储介质,包括:计算机软件指令;当计算机软件指令在电子设备中运行时,使得该电子设备执行如第一方面或第一方面的可能的实现方式中任一项所述的非侵入式交互方法。
第四方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面或第一方面的可能的实现方式中任一项所述的非侵入式交互方法。
第五方面,本申请实施例提供一种芯片系统,该芯片系统应用于电子设备;芯片系统包括接口电路和处理器;接口电路和处理器通过线路互联;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行该计算机指令时,芯片系统执行如第一方面或第一方面可能的实现方式中任一项所述的非侵入式交互方法。
第六方面,本申请实施例提供一种装置,该装置具有实现上述第一方面的方法中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,获取单元或模块,确定单元或模块,运行单元或模块等。
应当理解的是,本申请中对技术特征、技术方案、有益效果或类似语言的描述并 不是暗示在任意的单个实施例中可以实现所有的特点和优点。相反,可以理解的是对于特征或有益效果的描述意味着在至少一个实施例中包括特定的技术特征、技术方案或有益效果。因此,本说明书中对于技术特征、技术方案或有益效果的描述并不一定是指相同的实施例。进而,还可以任何适当的方式组合本实施例中所描述的技术特征、技术方案和有益效果。本领域技术人员将会理解,无需特定实施例的一个或多个特定的技术特征、技术方案或有益效果即可实现实施例。在其他实施例中,还可在没有体现所有实施例的特定实施例中识别出额外的技术特征和有益效果。
附图说明
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种电子设备的软件架构的组成示意图;
图3为本申请实施例提供的一种非侵入式交互的流程示意图;
图4为本申请实施例提供的另一种非侵入式交互的流程示意图;
图5为本申请实施例提供的一种显示界面的示意图;
图6为本申请实施例提供的另一种显示界面的示意图;
图7为本申请实施例提供的又一种显示界面的示意图。
具体实施方式
本申请实施例提供一种非侵入式交互方法,该方法可以应用于包含应用的电子设备。通过使用该方法,电子设备中的应用通过非侵入式的交互方式,便可实现对设备能力服务的调用,从而实现对应功能。且可实现跨操作系统,跨设备的设备能力服务调用。
示例性的,本申请实施例中的应用可以是嵌入式应用(即电子设备的系统应用),也可以是可下载应用。嵌入式应用是作为电子设备实现的一部分提供的应用程序。可下载应用是一个可以提供自己的因特网协议多媒体子系统(internet protocol multimedia subsystem,IMS)连接的应用程序。该可下载应用可以是预先安装在电子设备中的应用或可以是由用户下载并安装在电子设备中的第三方应用。
示例性的,本申请实施例中所述的电子设备可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备、媒体播放器等设备,本申请实施例对该设备的具体形态不作特殊限制。
下面将结合附图对本申请实施例的实施方式进行详细描述。
请参考图1,为本申请实施例提供的一种电子设备的结构示意图。如图1所示,电子设备可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
其中,传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感 器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本实施例示意的结构并不构成对电子设备的具体限定。在另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以是电子设备的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(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接口等。
充电管理模块140用于从充电器接收充电输入。充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
移动通信模块150可以提供应用在电子设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁 波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备上的包括无线局域网(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)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,电子设备可 以包括1个或N个显示屏194,N为大于1的正整数。
电子设备可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。在一些实施例中,电子设备可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备可以通过扬声器170A收听音乐,或收听免提通话。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。电子设备可以设置至少一个麦克风170C。耳机接口170D用于连接有线耳机。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。陀螺仪传感器180B可以用于确定电子设备的运动姿态。
气压传感器180C用于测量气压。在一些实施例中,电子设备通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。磁传感器180D包括霍尔传感器。电子设备可以利用磁传感器180D检测翻盖皮套的开合。加速度传感器180E可检测电子设备在各个方向上(一般为三轴)加速度的大小。还可以用于识别电子设备姿态。距离 传感器180F,用于测量距离。电子设备可以通过红外或激光测量距离。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。电子设备通过发光二极管向外发射红外光。电子设备使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备附近有物体。当检测到不充分的反射光时,电子设备可以确定电子设备附近没有物体。
环境光传感器180L用于感知环境光亮度。电子设备可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。温度传感器180J用于检测温度。在一些实施例中,电子设备利用温度传感器180J检测的温度,执行温度处理策略。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备可以接收按键输入,产生与电子设备的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备的接触和分离。电子设备可以支持1个或N个SIM卡接口,N为大于1的正整数。
以下实施例可以在具有上述硬件结构的电子设备中实现。
另外,上述电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备的软件结构。
请参考图2,为本申请实施例提供的一种电子设备的软件架构的组成示意图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为三层,从上至下分别为应用程序层,总线层,以及组件服务层。基于该软件架构,应用和操作系统可通过非侵入式的交互方式,实现通过对设备能力服务的调用。该软件架构可适用于在多设备上,服务提供者和应用开发者分离的场景。
其中,应用程序层可以包括一系列应用程序包。例如,应用程序包可以包括亚马 逊,微信,设置,计算器,相机,今日头条,短信息,音乐播放器等应用。在本实施例中,应用的有些功能需要调用设备能力服务来实现。应用在需要调用设备能力服务来实现对应功能时,可向总线层下发描述文件。该描述文件用于指示应用需要实现功能。
总线层可以包括总线模块。总线模块负责连接应用程序层的应用与组件服务层的组件。在本实施例中,总线模块可用于接收来自应用程序层的应用的描述文件。在接收到来自应用程序层的应用的描述文件后,可对该描述文件进行解析,以便根据解析后的描述文件,从组件服务层的组件中寻找到用于实现应用需要实现功能的相应组件。寻找到的组件用于为应用提供设备能力服务,以实现对应功能。
组件服务层可以包括多个组件,如组件1,组件2,组件3,…,组件n。每个组件为能够完成独立功能的设备能力服务。不同组件提供的设备能力服务可以相同,也可以不同。在本实施例中,总线层的总线模块在根据应用程序层的应用下发的描述文件在组件服务层寻找到对应组件后,组件服务层的该组件可启动,以为应用提供对应的设备能力服务,从而实现对应功能。需要说明的是,本实施例对组件的承载形式不做具体限制,如不同组件可以承载在不同逻辑实体中实现,不同组件也可以承载在一个逻辑实体里实现。
其中,以下对应用程序层的应用下发的描述文件进行介绍。
在一些实施例中,描述文件可使用非侵入式协议描述来定义,用于指示应用需要实现功能。
示例性的,非侵入式协议描述是一种描述性语言,用于支撑应用程序层的应用和总线层的总线模块之间的交互,可充分发挥描述性语言跨设备的优势。
例如,可使用json(JavaScript object notation)语言来定义描述文件的结构。其中,json语言是基于JavaScript语言的轻量级的数据交换格式。
使用json语言定义的描述文件的结构可如下所示:
|--标识块:包含通用标识
|--逻辑块:组件运行时的逻辑实体
|--头部(head):固定值(Key),用于总线层的总线模块对描述文件的解析校验
|--body:组件自定义Key,组件服务层的组件解析该部分,以提供相应服务
一种示例的描述文件如下所示:
Figure PCTCN2020110026-appb-000001
Figure PCTCN2020110026-appb-000002
其中,上述示例中,EasyGoVersion标识非侵入式协议版本号。client标识使用非侵入式协议的应用(或者说客户端)的标识。signInfo标识使用非侵入式协议的应用的签名。logicEntities标识逻辑实体集合。head标识逻辑实体中头部通用区域。body标识组件的自定义数据区域。function标识组件。required标识组件是否必须执行。
上述示例的描述文件,遵循的是非侵入式协议1.0版本。非侵入式协议1.0版本中可包含上述示例中的字段。另外,字段支持可扩展。
如上述示例所示,其中第一行至第三行是标识块。可以看到的是,标识块包含,协议版本号,应用标识,应用签名等通用字段。
剩余行是逻辑块。逻辑块是组件运行时的逻辑实体。逻辑块可由一个或多个单逻辑实体组成。在本实施例中,其支持多逻辑实体并行配置及多逻辑实体串行配置。作为一种示例,可采用嵌套方式,使用hasNext标识是串行配置还是并行配置。如,“hasNext”:“false”用于标识是并行配置,即标识没有串行运行的组件。“hasNext”:“ture”用于标识是串行配置,即标识有串行运行的组件。
逻辑块中的单逻辑实体,代表一个组件的运行实例,即调用一个组件,使其提供对应设备能力服务。一个单逻辑实体包含head区域和body区域。head区域包含组件名,如可使用function来标识。head区域还可包含其他组件相关的通用字段,如,组件是否必须执行的标识(如可使用required来标识),是否有串行运行的组件的标识(如可使用hasNext来标识)。又如,head区域还可包含要使用的具体组件的标识(如可使用parameter来标识,上述示例中未示出)。在应用要使用的功能存在多个组件均可提供该功能对应的设备能力服务时,该标识可用于匹配应用具体要使用的组件。body区域包含组件自定义字段(或者说自定义key)。body区域包含的数据与组件所能够完成的功能(或者说业务)相关。
应用程序层的应用通过向总线层的总线模块下发上述使用非侵入式协议描述的描述文件,即可实现对相应组件的调用。
以下对总线层的总线模块进行介绍。
继续参考图2,总线模块可包括:应用层通用接口,协议规范,协议基础结构,组件基础结构,组件路由模块,数据解析/执行模块,数据存储模块及远端总线互连模块。
其中,应用层通用接口,可采用通用的PostData接口实现。应用程序层的应用可通过该应用层通用接口将描述文件传输给总线层的总线模块。
协议基础结构,可负责实现非侵入式协议的基础数据结构。基础数据结构即非侵入式协议的标准格式,包含标识块和逻辑块的类,以及标识块的标准Key的数据结构,逻辑块的标准Key的数据结构。协议规范,可负责提供非侵入式协议中的具体数据和逻辑规范。协议规范还可提供对应用程序层的应用下发的描述文件的规范性校验功能。其中,根据协议基础结构和协议规范,可以对描述文件的规范性进行校验。例如,可对描述文件中的协议版本号,客户端的标识,签名及function进行校验,以验证描述文件的规范性。如可在描述文件中的协议版本号,客户端的标识,签名及function不为空时,确认该描述文件校验通过。在校验function时,可去除其对应数据中的无 效空格,还可忽略其大小写,全部转换为小写。
组件基础结构,定义了组件服务层中组件的基本要素,如包括action,meta-data机制。action,meta-data机制会在以下对组件的介绍中描述。
数据解析/执行模块,可用于根据上述协议规范和协议基础结构,解析/验证来自应用程序层的应用的描述文件。还可用于依据协议规范根据描述文件中逻辑实体的串并行配置,启动对应的执行逻辑,如描述文件中逻辑实体是串行配置,则执行串行逻辑,即串行运行各个组件,又如描述文件中的逻辑实体是并行配置,则执行并行逻辑,即并行运行各个组件。数据解析/执行模块对接组件路由模块和数据存储模块。如,数据解析/执行模块将描述文件解析后,可将对应的解析结果传输给组件路由模块和/或数据存储模块。
组件路由模块,用于实现根据来自应用程序层应用的描述文件,从组件服务层的组件中寻找到相应组件的功能。如,组件路由模块可根据来自数据解析/执行模块对描述文件的解析结果查找相应组件,并通知该组件为应用提供对应设备能力服务。组件路由模块还可提供组件对组件自定义数据(如上述body区域包含的数据)的查询功能。
数据存储模块,负责描述文件的解析结果的存储。
远端总线互连模块,可通过网络连接其他设备总线层的总线模块。远端总线互连模块还可用于传输来自应用程序层的应用的描述文件。如,远端总线互连模块可将来自应用程序层的应用的描述文件传输给其他具备相应组件的设备的总线模块。
以下对组件服务层的组件进行介绍。
如上所述,组件是提供设备能力服务的模块,能够实现独立功能。组件至少包含以下三个特征:
特征1:能够实现对非侵入式协议提供的组件自定义数据的解析。
特征2:有其独立的配置信息。如,组件在承载其的逻辑实体中可按照以下格式(如,该格式可称为action,meta-data机制)添加该组件的配置信息:
<actionname=”com.support.component”/>
<meta-dataname=”com.support.component1”value=”function1”/>
<meta-dataname=”com.support.component2”value=”function2”/>
其中,配置信息中,第一行用于标识以下组件是支持非侵入式协议的组件。第二行和第三行分别标识不同组件实现的功能。
例如,电子设备能够为应用提供播放视频服务和上传视频服务。那么,对应的播放视频组件和上传视频组件可在承载其的逻辑实体中按照以下格式添加配置信息:
<actionname=”com.support.component”/>
<meta-dataname=”com.support.component1”value=”videoPlay”/>
<meta-dataname=”com.support.component2”value=”videoUpload”/>
其中,配置信息中,第二行用于标识组件实现的功能为视频播放,即可为应用提供播放视频服务。第三行用于标识组件实现的功能为视频上传,即可为应用提供上传视频服务。
特征3:包含用于实现与总线模块交互的接口。在一些实施例中,可采用通用的PostData接口实现,如接口为:PostData(json easygo)。
基于上述图2所提供的软件架构,电子设备中应用程序层的应用,通过非侵入式的交互方式,即通过向总线层的总线模块下发用于指示应用需要实现功能的描述文件,以使得总线模块可根据描述文件从组件服务层的组件中寻找到用于对应功能的相应组件。寻找到的组件启动运行后便可为应用提供相应设备能力服务,以实现对应功能。
在本实施例中,基于上述软件架构的非侵入式的交互方式可分为静态交互和运行时交互。
其中,静态交互可以指的是用于指示应用需要实现的某些功能的描述文件,在应用的非运行期,或者说在应用需要使用该组件提供的服务之前,应用便与总线层的总线模块的完成交互。在应用运行期要实现对应功能时,相应组件可根据提前完成的交互结果直接为应用提供对应的设备能力服务,进而实现对应功能。静态交互的交互方式适用于自启动组件。自启动组件指的是在电子设备开机时自动启动的组件,如提供界面自适配服务的组件。自启动组件提供对应服务时所需使用的数据不会随着运行环境的变化而变化。应用的非运行期可以包括安装应用时等时期。
运行时交互可以指的是用于指示应用需要实现的某些功能的描述文件,在应用运行期间,应用再与总线层的总线模块的完成交互,并根据交互结果为应用提供对应的设备能力服务,进而实现对应功能。运行时交互的交互方式适用于提供对应服务时所使用的数据在应用运行期随时会变化的组件,因此在应用需要该组件提供服务时,再与总线层的总线模块进行数据交互。
以下对静态交互和运行时交互分别进行介绍。
以应用的非运行期为安装应用时为例,结合图2,请参考图3,静态交互的交互过程如下:
在应用安装时,应用安装器读取应用的描述文件(即执行图3中的步骤1),并通过调用总线层总线模块的应用层通用接口,如PostData接口,将读取到的描述文件传输到总线模块(即执行图3中的步骤2)。其中,应用安装器是负责应用安装的软件模块。应用安装器可负责应用配置的解析,应用程序包的解压缩,将应用程序文件固化到应用安装目录中等。该描述文件是应用开发者根据该应用所要实现的功能,配置并打包到应用的安装包中的。该功能可以包括调用自启动组件提供的设备能力服务实现的功能。
总线模块的PostData接口接收到该描述文件后,可将该描述文件传输给数据解析/执行模块(即执行图3中的步骤3)。数据解析/执行模块根据协议规范和协议基础结构对描述文件进行解析,并对描述文件的规范性进行校验。在验证描述文件规范后,数据解析/执行模块将解析得到的数据(如,包含描述文件中标识块和逻辑块中的标准的key值/value值,还包含组件相关的数据,如描述文件中body区域的数据)传输给数据存储模块(即执行图3中的步骤4)。数据存储模块存储接收到的数据。其中,需要说明的是,数据解析/执行模块对描述文件中body区域的数据,即组件自定义数据不进行解析,而是直接传输给数据存储模块存储。至此,应用与总线模块的完成交互完成。
在应用运行期如果要实现对应功能,则上述自启动组件运行。在上述自启动组件运行时,该自启动组件可通过与总线模块之间的接口,如PostData(json easygo)对 总线模块的数据存储模块进行实时查询,以获取该自启动组件对应的组件自定义数据。自启动组件可在运行组件所提供的设备能力服务时,对获取到的组件自定义数据进行解析,并对应用提供相应的设备能力服务,以实现对应功能。
例如,在一些特殊的显示屏,如超曲面屏上,如果应用的界面中包含显示元素太靠近显示屏边缘,则可能会出现显示变形的情况,也可能发生用户误触的现象。在这种场景下,应用开发者可在应用(如今日头条等)中配置描述文件,该描述文件包含指示该应用需要实现边距自适配功能的信息。结合图3,该边距自适配功能可使用组件A提供的超曲面自适配服务来实现。这样,在该应用安装时,可将描述文件传输给总线层的总线模块,以完成数据交互。之后,在该应用运行时,组件A运行,并查询总线模块的数据存储模块中的数据,以获得组件A对应的组件自定义数据(如执行图3中的步骤5-1)。组件A可在运行组件A所提供的超曲面自适配服务时,对获取到的组件自定义数据进行解析,并对根据应用当前的界面,自动调整边距,以避免应用当前的界面中靠近边缘的显示元素显示变形的情况出现,还可避免用户误触。
又例如,在一些尺寸较大的显示屏上,如果应用的页面可以并排显示,则能够提高用户的浏览及操作效率。在这种场景下,应用开发者可在应用(如亚马逊等购物类应用)中配置描述文件,该描述文件包含指示该应用需要实现页面并排显示功能(如,店铺首页和商品详情页并排显示,商品详情页和客服页并排显示等)及适合并排展示页面的信息。结合图3,该页面并排显示功能可使用组件B提供的大屏自适配服务来实现。这样,在该应用安装时,可将描述文件传输给总线层的总线模块,以完成数据交互。之后,在该应用运行时,组件B运行,并查询总线模块的数据存储模块中的数据,以获得组件B对应的组件自定义数据,如适合并排展示页面的信息(如执行图3中的步骤5-2)。组件B可在运行组件B所提供的大屏自适配服务时,对获取到的组件自定义数据进行解析,并对根据应用当前的界面,并排显示应用对应的页面,以提高用户的浏览及操作效率。
结合图2,请参考图4,运行时交互的交互过程如下:
在应用运行时,应用根据所要实现的功能,生成对应的描述文件,并通过调用总线层总线模块的应用层通用接口,如PostData接口,将生成的描述文件传输到总线模块。例如,用户在点击应用1中的某个菜单触发应用实现电影票预定功能时,应用1可根据用户对该菜单的点击操作,生成对应的描述文件,该描述文件用于指示应用1所要实现的功能为电影票预定功能,并将该描述文件传入总线模块的应用层通用接口,如PostData接口(即执行图4中的步骤1-1)。如,描述文件中包括“function”:“movieTicket”字段。又例如,用户在进行人脸解锁时,电子设备的对应应用,如称为应用2可生成对应的描述文件,该描述文件用于指示应用2所要实现的功能为人脸识别功能,并将该描述文件传入总线模块的应用层通用接口,如PostData接口(即执行图4中的步骤1-2)。
总线模块的应用层通用接口,如PostData接口接收到该描述文件后,可将该描述文件传输给数据解析/执行模块(即执行图4中的步骤2)。数据解析/执行模块根据协议规范和协议基础结构对描述文件进行解析,并对描述文件的规范性进行校验。在验证该描述文件规范后,数据解析/执行模块将解析得到的数据(如,包含描述文件中 标识块和逻辑块中的标准的key值/value值,还包含组件相关的数据,如描述文件中body区域的数据)传输给数据存储模块(即执行图4中的步骤3)。数据存储模块存储接收到的数据。其中,需要说明的是,数据解析/执行模块对描述文件中body区域的数据,即组件自定义数据不进行解析,而是直接传输给数据存储模块存储。
在验证该描述文件规范后,数据解析/执行模块还可将解析得到的数据(如,与组件相关数据,如描述文件中逻辑块包含的head区域的数据)传输给组件路由模块,触发组件路由模块进行路由(即执行图4中的步骤4)。其中,在电子设备开机时,总线模块会自启动,并根据组件基础结构扫描该电子设备的所有组件,如果该电子设备与其他设备建立了连接,也可以扫描该其他设备的所有组件,并将扫描到的所有组件的配置信息存储在数据存储模块中。另外,如果电子设备中存在没有进行配置的组件,如提供底层的系统服务的组件通常没有进行配置,这种组件可在设备开机时自动将自身对应信息(如也称为配置信息)传输给总线模块,用于组件路由。
在组件路由模块进行组件路由时,可根据数据存储模块中存储的配置信息,从组件服务层的组件中寻找能够提供对应设备能力服务的组件。在一些实施例中,如果该电子设备与其他设备建立了连接,则在组件路由模块进行组件路由时,可先在查找本设备的组件中是否存在能够提供对应设备能力服务的组件。如果本设备的组件中存在能够提供对应设备能力服务的组件,则通知该组件启动。例如,结合上述示例,描述文件用于指示应用所要实现的功能为电影票预定功能。组件路由模块在本设备的组件中查找到了能够提供生活服务的组件,如称为组件1,该组件1可用于实现电影票预定功能,则组件路由模块通知该组件1启动(即执行图4中的步骤5-1)。又例如,结合上述示例,描述文件用于指示应用所要实现的功能为人脸识别功能。组件路由模块在本设备的组件中查找到了能够提供人工智能(artificial intelligence,AI)服务的组件,如称为组件2,该组件2可用于实现人脸识别功能,则组件路由模块通知该组件2启动(即执行图4中的步骤5-2)。
如果本设备的组件中不存在能够提供对应设备能力服务的组件,则根据数据存储模块中存储的配置信息,通过远端总线互连模块将接收到的该描述文件传输给与该设备连接的其他设备(如,传输给其他设备的总线模块中的远端总线互连模块,即执行图4中的步骤6),该设备包括能够提供对应设备能力服务的组件。在描述文件传输给该其他设备后,该设备重新对该描述文件进行解析验证,并触发组件路由模块进行路由,直到查找到能够提供对应设备能力服务的组件,并通知该组件启动。
在上述组件运行时,该组件可通过与总线模块之间的接口,如PostData(json easygo)对总线模块的数据存储模块进行实时查询,以获取该组件对应的组件自定义数据。组件可在运行组件所提供的设备能力服务时,对获取到的组件自定义数据进行解析,并对应用提供相应的设备能力服务,以实现对应功能。例如,结合上述示例,组件1在运行时,对数据存储模块进行查询,以获取该组件1对应的组件自定义数据(即执行图4中的步骤7-1)。又例如,结合上述示例,组件2在运行时,对数据存储模块进行查询,以获取该组件2对应的组件自定义数据(即执行图4中的步骤7-2)。
以下以电子设备是手机为例,按照交互方式的不同(静态交互或运行时交互),结合示例对本实施例进行举例介绍。
示例1、结合图2,手机的组件服务层包括分屏组件。该分屏组件可提供分屏服务,实现分屏显示功能。具体的,在用户浏览应用的过程中,该分屏组件可根据该应用的活动(Activity)特征,将应用的页面分屏显示。该分屏组件可以属于上述自启动组件。可采用静态交互的交互方式,在应用的非运行期,应用便与总线层的总线模块的完成交互。例如,要使用该分屏组件提供的分屏服务的应用,应用开发者可将对应的描述文件配置并打包到该应用的安装包中。在该应用安装时,该描述文件传输给总线层的总线模块。由总线模块进行解析校验,并验证描述文件规范后,存储解析得到的数据,如,包含描述文件中标识块和逻辑块中的标准的key值/value值,还包含组件相关的数据(如描述文件中body区域的数据)。这样,在该应用运行期,如果要实现分屏功能,则该分屏组件运行,读取并解析存储的数据,以对应用提供分屏服务,实现应用页面的分屏显示。
在一些实施例中,该分屏组件提供的分屏服务中包含两种分屏显示模式,分别为:列表模式和非列表模式。其中,列表模式适应于信息流类应用,如新闻类应用。非列表模式适用于应用中单产品多维度展示或关联展示的场景,并支持两个产品分屏比较的场景,如购物类应用。
其中,列表模式可包括单列表和多列表两种模式。如,单列表模式下,应用页面的分屏显示可以是:手机的显示屏被划分为左右两个显示区域,应用的主页始终显示在左侧的显示区域,该应用的其他页面可显示在右侧的显示区域。例如,以应用为今日头条为例,今日头条安装时可将对应的描述文件传入总线模块,总线模块解析描述文件并对其进行校验。验证描述文件规范后,存储解析得到的数据。如图5中的(a)所示,用户打开今日头条后,手机显示今日头条的主页501。在用户点击主页中的选项触发显示其他页面时,上述分屏组件运行,读取并解析存储的数据,以对今日头条提供分屏服务,实现今日头条页面的分屏显示。如图5中的(b)所示,手机在显示屏的左侧区域显示今日头条的主页501,右侧区域显示其他页面502。这样的显示方式可以辅助用户快速浏览。另外,该分屏组件还可提供退出分屏显示的服务。在用户想要退出分屏显示时,可通过执行对应手势触发退出分屏显示,能够解决长内容阅读时半屏阅读的不适感。用户再执行对应手机还可重新触发手机分屏显示。
又如,如果应用存在主页、搜索页、推荐页等多个列表页,承载这些列表页的Activity均为0级,且不同的列表页以不同的Activity承载,承载非列表页的Activity均为1级。则针对这类应用,可采用多列表模式进行分屏显示。结合图6所示,这类应用页面的分屏显示可以是:在该应用启动后,如图6中的(a)所示,手机全屏显示该应用的主页。如果用户点击主页上的选项触发显示非列表页时,如图6中的(b)所示,手机将显示屏被划分为左右两个显示区域,左侧区域显示主页,右侧区域显示该非列表页。如果用户点击主页上的选项触发显示其他列表页,如推荐页时,如图6中的(c)所示,手机全屏显示该推荐页。如果用户在图6中的(b)所示的分屏显示下,点击主页上的选项触发显示其他列表页,如搜索页时,如图6中的(d)所示,手机在左侧区域显示主页,在右侧区域显示该搜索页。另外,该分屏组件也可提供退出分屏显示的服务。在图6中的(c)和图6中的(d)所示的分屏显示场景下,在用户想要退出分屏显示时,可通过执行对应手势触发退出分屏显示,用户还可再执 行对应手机重新触发手机分屏显示。这种显示方式可避免分屏显示及全屏显示的频繁切换。
对于适用非列表模式进行分屏显示的应用,可以按相关Activity同时显示的规则进行分屏显示。以购物类应用为例。相关Activity可以包括:承载商品详情页的Activity,承载该商品客服页的Activity,承载该商品评论页的Activity,承载与该商品相似的商品的详情页的Activity。
例如,请参考图7,购物类应用页面的分屏显示可以是:在该应用启动后,手机可全屏显示该应用的主页。如果用户点击主页上的选项触发显示某商品的详情页,如称为详情页1,手机可全屏显示该详情页1。如果用户点击详情页1上的选项触发显示店铺首页,则手机全屏显示店铺首页。如果用户点击详情页1上的选项触发显示与该商品相关的商品的详情页,如称为详情页2,则手机将显示屏被划分为左右两个显示区域,左侧区域显示详情页1,右侧区域显示详情页2。如果用户点击详情页1上的选项触发显示该商品的客服页,如称为客服页1,则手机将显示屏被划分为左右两个显示区域,左侧区域显示详情页1,右侧区域显示客服页1。
在手机在左侧区域显示详情页1,右侧区域显示详情页2的情况下,如果用户点击详情页1上的选项触发显示与该商品相关的商品的详情页,如称为详情页3,则左侧区域继续显示详情页1,右侧区域显示详情页3。如果用户点击详情页1上的选项触发显示该商品的客服页,如称为客服页1,则左侧区域继续显示详情页1,右侧区域显示客服页1。如果用户点击详情页2上的选项触发显示与该商品相关的商品的详情页,如称为详情页3,则左侧区域显示详情页2,右侧区域显示详情页3。如果用户点击详情页2上的选项触发显示该商品的客服页,如称为客服页2,则左侧区域显示详情页2,右侧区域显示客服页2。
在手机在左侧区域显示详情页1,右侧区域显示客服页1的情况下,如果用户点击详情页1上的选项触发显示与该商品相关的商品的详情页,如称为详情页2,则左侧区域继续显示详情页1,右侧区域显示详情页2。如果用户点击详情页1上的选项触发显示该商品的评论页,则左侧区域继续显示详情页1,右侧区域显示评论页。
在本示例中,以下提供一种描述文件的示例:
Figure PCTCN2020110026-appb-000003
Figure PCTCN2020110026-appb-000004
在该应用安装时,总线模块可获得该描述文件,并对其进行解析校验。在验证规范后,存储解析的数据,如包括:表示支持分屏的数据<windowMode value=“2”>,表示分屏显示模式的数据<switchType value=“1”>,及设置activity层级的数据。在该应用运行期,如果要实现分屏功能,则读取并解析存储的这些数据,以对应用提供分屏服务,实现应用页面的分屏显示。
示例2、结合图2,手机及智能音箱的组件服务层均包括音频播放组件,且手机与该智能音箱建立了连接。该音频播放组件可提供音频播放服务,实现音频播放功能。例如,手机的音频播放组件function为phoneMusicPlay,智能音箱的音频播放组件function为boxMusicPlay。如果想在用户启动音乐播放器播放音乐时实现以下逻辑:播放一首音乐,使用音频播放组件提供的音频播放服务实现音频播放功能,并做到优先采用智能音箱播放。这种场景由于是用户触发的音乐播放,因此可采用运行时交互的交互方式,在音乐播放器运行时,应用与总线层的总线模块的完成交互。
例如,用户打开手机上的音乐播放器,并点击需要播放的音乐。响应于用户的操作,音乐播放器可生成下述描述文件,并传输给总线层的总线模块。由总线模块进行解析校验,总线模块解析得到boxMusicPlay音频播放组件优先。总线模块查找本设备,即手机是否存在boxMusicPlay音频播放组件,没有查找到boxMusicPlay音频播放组件。总线模块将该描述文件传输给智能音箱的总线模块。智能音箱的总线模块解析得到boxMusicPlay音频播放组件优先,还可将body区域的数据进行存储。智能音箱的总线模块在本设备中查找到boxMusicPlay音频播放组件,启动该boxMusicPlay音频播放组件。该boxMusicPlay音频播放组件运行,读取并解析存储的body区域的数据,以对音乐播放器提供音频播放服务,以进行音乐播放。
Figure PCTCN2020110026-appb-000005
Figure PCTCN2020110026-appb-000006
本申请另一些实施例还提供了一种电子设备,用于执行以上实施例中的方法,以实现上述实施例中电子设备的功能。该电子设备可以包括:显示屏;一个或多个处理器;存储器。上述各器件可以通过一个或多个通信总线连接。其中上述存储器中存储一个或多个计算机程序代码,该一个或多个计算机程序代码包括计算机指令,一个或多个处理器用于执行计算机指令,可以用于实现上述实施例中电子设备的行为功能。
本申请另一些实施例还提供一种计算机可读存储介质,该计算机可读存储介质可包括计算机软件指令,当该计算机软件指令在电子设备上运行时,使得该电子设备执行上述实施例中电子设备执行的各个步骤。
本申请另一些实施例还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得该计算机执行上述实施例中电子设备执行的各个步骤。
本申请另一些实施例还提供一种装置,该装置具有实现上述实施例中电子设备行 为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,获取单元或模块,确定单元或模块,运行单元或模块等。
本申请另一些实施例还提供一种芯片系统,该芯片系统可以应用于电子设备。芯片系统包括接口电路和处理器;接口电路和处理器通过线路互联;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行该计算机指令时,芯片系统执行上述实施例中电子设备执行的各个步骤。
本申请实施例提供的电子设备,计算机可读存储介质,计算机程序产品,装置及芯片系统,可以执行上述实施例中电子设备的动作,其实现原理和技术效果类似,在此不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (16)

  1. 一种非侵入式交互方法,其特征在于,应用于电子设备,所述方法包括:
    所述电子设备获取应用的描述文件,所述描述文件用于指示所述应用需要实现的功能,所述描述文件采用非侵入式协议描述定义;
    所述电子设备根据所述描述文件确定第一组件,所述第一组件是所述电子设备的组件中能够实现所述应用需要实现功能的组件,所述电子设备的组件是所述电子设备中根据非侵入式协议配置的用于提供设备能力服务的模块,能够实现独立功能;
    所述电子设备根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  2. 根据权利要求1所述的方法,其特征在于,所述描述文件由标识块和逻辑块组成,所述标识块包含以下字段:所述描述文件所遵循的非侵入式协议版本号,所述应用的标识,所述应用的签名;所述逻辑块由一个或多个单逻辑实体组成;所述逻辑块中的单逻辑实体用于指示一个组件的运行实例,所述逻辑块中的单逻辑实体包括头部head区域;所述head区域包含:用于标识能够实现所述应用需要实现功能的组件的字段;
    所述电子设备根据所述描述文件确定第一组件,包括:
    所述电子设备根据所述描述文件的标识块包含的字段和所述head区域包含的字段,对所述描述文件的规范性进行校验;
    所述电子设备在确定所述描述文件的规范性校验通过时,根据所述描述文件的逻辑块中单逻辑实体的head区域包含的字段确定所述第一组件。
  3. 根据权利要求2所述的方法,其特征在于,所述逻辑块中的单逻辑实体还包括体部body区域,所述body区域包含:用于组件实现功能所需数据的字段;
    所述电子设备根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能,包括:
    所述电子设备根据所述描述文件的逻辑块中单逻辑实体的body区域包含的字段运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述电子设备获取应用的描述文件,包括:
    所述电子设备在所述应用的非运行期,获取预先配置的所述描述文件;
    所述方法还包括:
    所述电子设备对所述描述文件进行解析,存储所述描述文件的标识块包含的字段,所述描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;
    所述电子设备根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能,包括:
    所述电子设备在所述应用的运行期,读取存储的所述描述文件的逻辑块中单逻辑实体的body区域包含的字段;
    所述电子设备对所述描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  5. 根据权利要求1-3中任一项所述的方法,其特征在于,所述电子设备获取应用的描述文件,包括:
    所述电子设备在所述应用运行时,生成所述描述文件;
    所述方法还包括:
    所述电子设备对所述描述文件进行解析,存储所述描述文件的标识块包含的字段,所述描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;
    所述电子设备根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能,包括:
    所述电子设备读取存储的所述描述文件的逻辑块中单逻辑实体的body区域包含的字段;
    所述电子设备对所述描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  6. 根据权利要求1-5中任一项所述的方法,其特征在于,所述电子设备中存储有所述电子设备所有组件的配置信息;
    所述电子设备根据所述描述文件确定第一组件,包括:
    所述电子设备根据所述描述文件和存储的所有组件的配置信息,确定所述第一组件。
  7. 根据权利要求6所述的方法,其特征在于,所述电子设备中还存储有与所述电子设备建立了无线连接的设备中所有组件的配置信息;
    所述方法还包括:
    如果所述电子设备未确定出所述第一组件,且根据存储的组件的配置信息确定与所述电子设备连接的设备的组件中存在能够实现所述应用需要实现功能的组件,则所述电子设备向与所述电子设备连接的设备传输所述描述文件,用于与所述电子设备连接的设备确定对应组件并运行,以为所述应用提供设备能力服务,实现所述应用需要实现的功能。
  8. 一种电子设备,其特征在于,所述电子设备包括:处理器和存储器;所述处理器和所述存储器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机软件指令,当所述计算机软件指令被所述电子设备执行时,使得所述电子设备执行如下操作:
    获取应用的描述文件,所述描述文件用于指示所述应用需要实现的功能,所述描述文件采用非侵入式协议描述定义;
    根据所述描述文件确定第一组件,所述第一组件是所述电子设备的组件中能够实现所述应用需要实现功能的组件,所述电子设备的组件是所述电子设备中根据非侵入式协议配置的用于提供设备能力服务的模块,能够实现独立功能;
    根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  9. 根据权利要求8所述的电子设备,其特征在于,所述描述文件由标识块和逻辑块组成,所述标识块包含以下字段:所述描述文件所遵循的非侵入式协议版本号,所 述应用的标识,所述应用的签名;所述逻辑块由一个或多个单逻辑实体组成;所述逻辑块中的单逻辑实体用于指示一个组件的运行实例,所述逻辑块中的单逻辑实体包括头部head区域;所述head区域包含:用于标识能够实现所述应用需要实现功能的组件的字段;
    所述根据所述描述文件确定第一组件,包括:根据所述描述文件的标识块包含的字段和所述head区域包含的字段,对所述描述文件的规范性进行校验;在确定所述描述文件的规范性校验通过时,根据所述描述文件的逻辑块中单逻辑实体的head区域包含的字段确定所述第一组件。
  10. 根据权利要求9所述的电子设备,其特征在于,所述逻辑块中的单逻辑实体还包括体部body区域,所述body区域包含:用于组件实现功能所需数据的字段;
    所述根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能,包括:根据所述描述文件的逻辑块中单逻辑实体的body区域包含的字段运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  11. 根据权利要求8-10中任一项所述的电子设备,其特征在于,所述获取应用的描述文件,包括:在所述应用的非运行期,获取预先配置的所述描述文件;
    当所述计算机软件指令被所述电子设备执行时,使得所述电子设备还执行如下操作:
    对所述描述文件进行解析,存储所述描述文件的标识块包含的字段,所述描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;
    根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能,包括:
    在所述应用的运行期,读取存储的所述描述文件的逻辑块中单逻辑实体的body区域包含的字段;
    对所述描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  12. 根据权利要求8-10中任一项所述的电子设备,其特征在于,所述获取应用的描述文件,包括:在所述应用运行时,生成所述描述文件;
    当所述计算机软件指令被所述电子设备执行时,使得所述电子设备还执行如下操作:
    对所述描述文件进行解析,存储所述描述文件的标识块包含的字段,所述描述文件的逻辑块中单逻辑实体的head区域包含的字段及body区域包含的字段;
    根据所述描述文件运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能,包括:
    读取存储的所述描述文件的逻辑块中单逻辑实体的body区域包含的字段;
    对所述描述文件的逻辑块中单逻辑实体的body区域包含的字段进行解析,并根据解析结果运行所述第一组件,为所述应用提供设备能力服务,以实现所述应用需要实现的功能。
  13. 根据权利要求8-12中任一项所述的电子设备,其特征在于,所述存储器中还存储有所述电子设备所有组件的配置信息;
    所述根据所述描述文件确定第一组件,包括:根据所述描述文件和存储的所有组件的配置信息,确定所述第一组件。
  14. 根据权利要求13所述的电子设备,其特征在于,所述存储器中还存储有与所述电子设备建立了无线连接的设备中所有组件的配置信息;
    当所述计算机软件指令被所述电子设备执行时,使得所述电子设备还执行如下操作:
    如果未确定出所述第一组件,且根据存储的组件的配置信息确定与所述电子设备连接的设备的组件中存在能够实现所述应用需要实现功能的组件,则向与所述电子设备连接的设备传输所述描述文件,用于与所述电子设备连接的设备确定对应组件并运行,以为所述应用提供设备能力服务,实现所述应用需要实现的功能。
  15. 一种计算机可读存储介质,其特征在于,包括:计算机软件指令;
    当所述计算机软件指令在电子设备中运行时,使得所述电子设备执行如权利要求1至7中任一项所述的非侵入式交互方法。
  16. 一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1至7中任一项所述的非侵入式交互方法。
PCT/CN2020/110026 2019-09-05 2020-08-19 一种非侵入式交互方法及电子设备 WO2021042991A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202080058043.9A CN114586001A (zh) 2019-09-05 2020-08-19 一种非侵入式交互方法及电子设备
EP20860819.0A EP4024204B1 (en) 2019-09-05 2020-08-19 Non-intrusive interaction method and electronic device
US17/688,025 US12019531B2 (en) 2019-09-05 2022-03-07 Non-intrusive interaction method and electronic device

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201910840922.6 2019-09-05
CN201910840922 2019-09-05
CN201910886241.3A CN110955452B (zh) 2019-09-05 2019-09-19 一种非侵入式交互方法及电子设备
CN201910886241.3 2019-09-19

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/688,025 Continuation US12019531B2 (en) 2019-09-05 2022-03-07 Non-intrusive interaction method and electronic device

Publications (1)

Publication Number Publication Date
WO2021042991A1 true WO2021042991A1 (zh) 2021-03-11

Family

ID=69976321

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/110026 WO2021042991A1 (zh) 2019-09-05 2020-08-19 一种非侵入式交互方法及电子设备

Country Status (4)

Country Link
US (1) US12019531B2 (zh)
EP (1) EP4024204B1 (zh)
CN (2) CN110955452B (zh)
WO (1) WO2021042991A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535132A (zh) * 2021-07-26 2021-10-22 中移(杭州)信息技术有限公司 设备接入方法、装置、终端设备以及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110955452B (zh) 2019-09-05 2021-03-05 华为技术有限公司 一种非侵入式交互方法及电子设备
CN112953721B (zh) * 2021-01-28 2023-04-14 浪潮通用软件有限公司 一种ipa文件的解析方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102854853A (zh) * 2012-08-13 2013-01-02 北京和利时系统工程有限公司 一种跨平台轻量级的分布式控制系统
US20130305218A1 (en) * 2011-04-06 2013-11-14 Media Direct, Inc. Systems and methods for a specialized application development and deployment platform
CN104657142A (zh) * 2015-02-12 2015-05-27 中国科学院计算机网络信息中心 一种基于OSGi技术的CCFD系统
CN109391676A (zh) * 2018-07-19 2019-02-26 珠海市魅族科技有限公司 终端设备控制方法、终端设备及计算机可读存储介质
CN110955452A (zh) * 2019-09-05 2020-04-03 华为技术有限公司 一种非侵入式交互方法及电子设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7904537B2 (en) * 2008-01-11 2011-03-08 Microsoft Corporation Architecture for online communal and connected experiences
US8977693B2 (en) * 2010-04-27 2015-03-10 Mindware, Inc. Browser based application development framework
CN104216691B (zh) * 2013-05-31 2017-11-17 华为技术有限公司 一种创建应用的方法及装置
IN2014MU00661A (zh) * 2014-02-25 2015-10-23 Tata Consultancy Services Ltd
EP3217236B1 (de) * 2016-03-11 2019-09-25 Schneider Electric Industries SAS Verfahren und system zur generierung eines bedienprogramms in form einer auf einem mobilen gerät lauffähigen mobilen applikation
CN106020963A (zh) * 2016-06-07 2016-10-12 中国建设银行股份有限公司 一种跨系统内部服务调用方法和装置
CN106549839A (zh) * 2016-11-08 2017-03-29 陈智玲 一种电子设备动态交互方式
CN109213991A (zh) * 2017-07-05 2019-01-15 中兴通讯股份有限公司 消息处理方法、系统、云平台及存储介质
WO2019051480A1 (en) * 2017-09-11 2019-03-14 Nextworld Llc SYSTEMS AND METHODS FOR CREATING BUSINESS SOFTWARE
CN108932087B (zh) * 2018-06-22 2021-01-08 中广热点云科技有限公司 用于移动设备的桌面分屏系统及其实现方法
CN109922148B (zh) * 2019-03-04 2022-02-25 网易(杭州)网络有限公司 跨平台服务方法、装置和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130305218A1 (en) * 2011-04-06 2013-11-14 Media Direct, Inc. Systems and methods for a specialized application development and deployment platform
CN102854853A (zh) * 2012-08-13 2013-01-02 北京和利时系统工程有限公司 一种跨平台轻量级的分布式控制系统
CN104657142A (zh) * 2015-02-12 2015-05-27 中国科学院计算机网络信息中心 一种基于OSGi技术的CCFD系统
CN109391676A (zh) * 2018-07-19 2019-02-26 珠海市魅族科技有限公司 终端设备控制方法、终端设备及计算机可读存储介质
CN110955452A (zh) * 2019-09-05 2020-04-03 华为技术有限公司 一种非侵入式交互方法及电子设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4024204A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535132A (zh) * 2021-07-26 2021-10-22 中移(杭州)信息技术有限公司 设备接入方法、装置、终端设备以及存储介质
CN113535132B (zh) * 2021-07-26 2024-05-07 中移(杭州)信息技术有限公司 设备接入方法、装置、终端设备以及存储介质

Also Published As

Publication number Publication date
US20220188210A1 (en) 2022-06-16
CN110955452B (zh) 2021-03-05
EP4024204B1 (en) 2024-06-19
EP4024204A1 (en) 2022-07-06
US12019531B2 (en) 2024-06-25
CN114586001A (zh) 2022-06-03
CN110955452A (zh) 2020-04-03
EP4024204A4 (en) 2022-11-02

Similar Documents

Publication Publication Date Title
WO2021052263A1 (zh) 语音助手显示方法及装置
WO2020238774A1 (zh) 一种通知消息的预览方法及电子设备
WO2021000807A1 (zh) 一种应用程序中等待场景的处理方法和装置
WO2021063343A1 (zh) 语音交互方法及装置
WO2020103764A1 (zh) 一种语音控制方法及电子设备
WO2021213164A1 (zh) 应用界面交互方法、电子设备和计算机可读存储介质
WO2021017901A1 (zh) 一种屏幕显示方法及电子设备
WO2021042991A1 (zh) 一种非侵入式交互方法及电子设备
WO2021036770A1 (zh) 一种分屏处理方法及终端设备
WO2021159746A1 (zh) 文件共享方法、系统及相关设备
WO2020029094A1 (zh) 一种语音控制命令生成方法及终端
WO2021253975A1 (zh) 应用程序的权限管理方法、装置和电子设备
CN110751503B (zh) 广告处理方法和电子设备
CN111371849A (zh) 数据处理的方法和电子设备
WO2021052311A1 (zh) 一种根据后壳颜色显示用户界面的方法和电子设备
WO2021218429A1 (zh) 应用窗口的管理方法、终端设备及计算机可读存储介质
WO2021151350A1 (zh) 一种动态链接库的加载方法及装置
WO2022253158A1 (zh) 一种用户隐私保护方法及装置
WO2023273543A1 (zh) 一种文件夹管理方法及装置
CN115022982B (zh) 多屏协同无感接入方法、电子设备及存储介质
WO2023029916A1 (zh) 批注展示方法、装置、终端设备及可读存储介质
WO2022152174A9 (zh) 一种投屏的方法和电子设备
WO2022062902A1 (zh) 一种文件传输方法和电子设备
WO2021238376A1 (zh) 功能包的加载方法、装置、服务器和电子设备
WO2022228065A1 (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: 20860819

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020860819

Country of ref document: EP

Effective date: 20220331