WO2023116236A1 - 应用启动方法、装置、设备及存储介质 - Google Patents

应用启动方法、装置、设备及存储介质 Download PDF

Info

Publication number
WO2023116236A1
WO2023116236A1 PCT/CN2022/129858 CN2022129858W WO2023116236A1 WO 2023116236 A1 WO2023116236 A1 WO 2023116236A1 CN 2022129858 W CN2022129858 W CN 2022129858W WO 2023116236 A1 WO2023116236 A1 WO 2023116236A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
message
event
response
sends
Prior art date
Application number
PCT/CN2022/129858
Other languages
English (en)
French (fr)
Inventor
王照金
赵朋勃
杜宏伟
康君平
雷斌生
马安生
Original Assignee
Oppo广东移动通信有限公司
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 Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Publication of WO2023116236A1 publication Critical patent/WO2023116236A1/zh

Links

Images

Classifications

    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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/4401Bootstrapping
    • 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/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • 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/445Program loading or initiating
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Definitions

  • the embodiments of the present application relate to the field of electronic equipment, and in particular to an application starting method, device, device, and storage medium.
  • electronic devices can also realize some complex functions through installed applications. For example, a user can conduct instant messaging through an instant messaging application installed in an electronic device, and monitor sleep quality in real time through an installed sleep monitoring application.
  • Embodiments of the present application provide an application startup method, device, device, and storage medium. Described technical scheme is as follows:
  • an embodiment of the present application provides a method for starting an application, the method is used in an electronic device, and the electronic device supports running a first system and a second system;
  • the methods include:
  • the first system in response to a first operational event, the first system sends a pre-operational message to the second system;
  • the second system performs a pre-operation indicated by the pre-operation message
  • the first system sends an application start message to the second system
  • the first operation event and the second operation event are events triggered successively in different operation stages during the application start operation process
  • the application launching operation refers to an operation of starting a target application in the second system from the first system
  • the second system starts the target application indicated by the application start message.
  • an embodiment of the present application provides an application launching device, the device is used in an electronic device, and the electronic device supports running the first system and the second system;
  • the devices include:
  • the first system module is configured to send a pre-operation message to the second system module in response to the first operation event
  • the second system module is configured to perform the pre-operation indicated by the pre-operation message
  • the first system module is further configured to send an application start message to the second system module in response to a second operation event, the first operation event and the second operation event are different operations during the application start operation process Events triggered successively under the stage, the application startup operation refers to the operation of starting the target application in the second system from the first system;
  • the second system module is further configured to start the target application indicated by the application start message.
  • an embodiment of the present application provides an electronic device, the electronic device includes a processor and a memory; the memory stores at least one program, and the at least one program is used to be executed by the processor to realize the above-mentioned App launch method as described in aspect.
  • an embodiment of the present application provides a computer-readable storage medium, where at least one program is stored in the storage medium, and the at least one program is used to be executed by a processor to implement the method for starting an application as described in the above aspect .
  • an embodiment of the present application provides a computer program product, the computer program product has computer instructions, and the computer instructions are stored in a computer-readable storage medium; a processor of an electronic device reads the computer program from the computer-readable storage medium. Instructions, the processor executes the computer instructions, so that the electronic device executes the application launching method provided in the above aspect.
  • FIG. 1 is a schematic diagram of a dual-core communication software framework corresponding to a second processor shown in an exemplary embodiment of the present application;
  • FIG. 2 is a schematic diagram of a dual-core communication software framework corresponding to the first processor shown in an exemplary embodiment of the present application;
  • FIG. 3 shows a flowchart of an application startup method provided by an exemplary embodiment of the present application
  • Fig. 4 is a system interaction sequence diagram of an application startup process shown in an exemplary embodiment of the present application
  • Fig. 5 is a system interaction sequence diagram of an application startup process shown in another exemplary embodiment of the present application.
  • FIG. 6 shows a flowchart of an application startup method provided by another exemplary embodiment of the present application.
  • Fig. 7 shows a schematic interface diagram of an application startup process provided by an exemplary embodiment of the present application
  • Fig. 8 is a system interaction sequence diagram of an application startup process shown in another exemplary embodiment of the present application.
  • FIG. 9 shows a flow chart of an application startup method provided by another exemplary embodiment of the present application.
  • Fig. 10 shows a schematic interface diagram of an application startup process provided by an exemplary embodiment of the present application
  • Fig. 11 is a system interaction sequence diagram of an application startup process shown in another exemplary embodiment of the present application.
  • Fig. 12 shows a flowchart of an application startup method provided by another exemplary embodiment of the present application.
  • Fig. 13 shows a schematic interface diagram of an application startup process provided by an exemplary embodiment of the present application
  • Fig. 14 is a system interaction sequence diagram of an application startup process shown in another exemplary embodiment of the present application.
  • Fig. 15 shows a structural block diagram of an application launching device provided by another embodiment of the present application.
  • Fig. 16 shows a structural block diagram of an electronic device provided by an exemplary embodiment of the present application.
  • the "plurality” mentioned herein means two or more.
  • “And/or” describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B may indicate: A exists alone, A and B exist simultaneously, and B exists independently.
  • the character “/” generally indicates that the contextual objects are an "or” relationship.
  • an electronic device is provided with a single processor, and through an operating system running on the processor, all system events generated during the operation of the device are processed. Therefore, the processor needs to have a strong data processing capability. And keep the working state during the operation of the equipment.
  • electronic devices only need to implement some functions that require less processing performance in most cases. For example, for smart watches or smart bracelets, in most cases, smart watches or smart wristbands The ring only needs to display the time and prompt the message. Therefore, keeping the processor in the working state for a long time will not improve the performance of the electronic device, but will increase the power consumption of the device, resulting in a shorter battery life of the electronic device (especially in wearable devices with small battery capacity).
  • the electronic device is provided with at least a first processor and a second processor with different processing performance and power consumption, respectively for Run the first system and the second system (ie dual-core dual system), and design a set of system switching mechanism for the dual-core dual system.
  • the first system running on the low-power processor processes the events requiring low-performance processing, and keeps the high-power processor in a dormant state (correspondingly, the high-power processor
  • the running second system is in a dormant state), which reduces the power consumption of the electronic device while realizing the basic functions of the electronic device; processor, and switch to the second system to process the event, so as to ensure that the triggered event can be responded and processed in time, and meet the performance requirements of the electronic device.
  • the embodiment of the present application introduces a pre-operation mechanism.
  • the first system detects the application startup operation When the first operation event is triggered in the first operation stage in the middle, send a pre-operation message to the second system, instructing the second system to perform the pre-operation that needs to be performed before starting the display of the target application; when the application startup operation is detected, the second operation When the second operation event triggered by the stage, an application start message is sent to the second system, instructing the second system to start the target application. Since the second system performs a pre-operation using the time period between the first operation event and the second operation event in the persistent application startup operation, the startup delay of subsequent applications can be shortened and the startup speed of applications can be improved.
  • the first processor and the second processor work asynchronously, and the first system and the second system need to implement system communication (or called dual-core communication).
  • the first system is a real-time operating system (Real Time Operating System, RTOS) running on a Micro Controller Unit (MCU)
  • the second system is a real-time operating system (RTOS) running on a central processing unit (CPU).
  • Android Android operating system on Central Processing Unit, CPU).
  • FIG. 1 it shows a dual-core communication software framework of an Android operating system shown in an exemplary embodiment of the present application.
  • the dual-core communication software framework follows the design principles of "low coupling, high reliability, and high reuse", including Kernel (kernel), HIDL (hardware abstraction layer interface description language), Native Service (local service), Framework Service (framework service) , Framework API (framework interface) and APP (application) module development.
  • the APP module includes Launcher (desktop launcher), Setting (setting) and SystemUI (system user interface) and other functional modules
  • the Framework API module includes MCUManager (MCU management), SensorManager (sensor management), LocationManager (location management), etc.
  • Management module Framework Service module includes MCUManagerService (MCU management service), SystemSensorManager (system sensor management), LocationManagerService (location management service) and other service modules
  • Native Service module includes dccservice (dcc service), Sensorservice (sensor service) and other service modules
  • HIDL modules include Sensor HAL (Sensor Hardware Abstraction Layer), GPS HAL (Global Positioning System Hardware Abstraction Layer) and other modules.
  • the Kernel module includes DCC Transfer Driver (DCC transmission driver) such as dcc_data, Mcu_sensor, and Mcu_gps.
  • the transport layer shields the application layer from the transmission details of the lower layer (data link layer) communication, and provides service channels for application scenarios;
  • the application layer as the main body of service provision, responds to human Machine-computer interaction and transmit the data generated in the process of human-computer interaction through the transport layer, and respond to external data requests.
  • the RTOS is designed using the principle of peer-to-peer. Taking the electronic device as an example of a smart watch, as shown in Figure 2, it shows the dual-core communication software framework of the RTOS shown in an exemplary embodiment of the present application.
  • the dual-core communication software framework of RTOS is divided into Application Layer, Service Layer, Framework Layer, Hardware abstraction layer and Platform Layer.
  • the application layer includes watch face (dial), Daily Tracker (daily tracking), Message center (message center), Voice around Apps (sound application), Health Apps (health application), Settings (settings) and other application modules;
  • the service layer Including Sport&health task (sports health task), System manager task (system management task), AMS (activity management service), AudioService (audio service), Log Service (log service), OFTP Service (Odette file transfer protocol service), BT Service (Bluetooth Service), Delegate Service (handover service), RPC Service (remote call service), sensor Service (sensor service), storage Service (storage service) and other service modules;
  • the framework layer includes Message Pub (message center), UI Framework ( User interface framework), G2D Engine (G2D engine), Audio Middleware (audio middleware), Preference (preference), File system (file system), Algorithms (algorithm), AsycEvent (in-process asynchronous event) and other framework modules; hardware abstraction
  • the layer includes Screen/TP (screen/touch screen), sensors (
  • FIG. 3 shows a flow chart of an application startup method provided by an exemplary embodiment of the present application.
  • the method is applied to an electronic device, and the electronic device supports running the first system and the second system as an example. Note that the method may include the following steps.
  • Step 301 in response to a first operation event, the first system sends a pre-operation message to the second system.
  • the operating power consumption of the first system is lower than that of the second system.
  • the electronic device is provided with a first processor and a second processor, wherein the processing performance of the first processor is lower than the processing performance of the second processor (the processing performance of the first processor and the The processing speed is lower than that of the second processor), and the power consumption of the first processor is lower than that of the second processor.
  • the second system running by the second processor
  • can process events handled by the first system running by the first processor
  • the first system may not necessarily be able to process events handled by the second system.
  • the electronic device may also be provided with a single processor, and the first system and the second system run on different cores of the processor respectively, wherein the processing performance of the core running the second system is higher than that of running the The processing performance of the core of the first system.
  • the first processor is an MCU
  • the second processor is a CPU
  • the first system is an RTOS
  • the second system is an Android system.
  • the events that the first system can handle include dial display, dial interface switching, notification message display, etc. that require less processing performance or weak interaction scenarios; the events that the second system can handle include incoming call answering, launching applications , dial editing, function setting and other scenes that require high processing performance or strong interaction scenes.
  • the working modes of the electronic device include a performance mode, a hybrid mode, and a low power consumption mode, wherein, in the performance mode, both the second processor and the first processor remain awake (correspondingly, Both the first system and the second system are in the wake-up state); in the low power mode, only the first processor remains in the wake-up state, while the second processor remains in the off state (that is, the first system is in the wake-up state, and the second system is in the off state state); in the hybrid mode, when the event is processed by the first system, the second processor is in the standby state and can be switched between the sleep state and the wake-up state (that is, when the first system is in the wake-up state, the second system can either be in the Awake state, can be in sleep state again).
  • the system-related data is cached in the memory (RAM), so that the system-related data can be run at any time.
  • RAM memory
  • the system-related data is stored in the hard disk (ROM). And it is written into the memory by the hard disk when switching to the wake-up state.
  • wearable devices as an auxiliary electronic device, only have weak interaction with users in most usage scenarios. For example, in most scenarios, the user only checks the time by raising the wrist through the smart watch. Therefore, when the wearable device processes the event through the first system, the second processor is controlled to be in the sleep state (the second system is in the sleep state), thereby reducing the overall power consumption of the wearable device.
  • the following embodiments take a wearable device as an example for illustration.
  • the electronic device displays a system interface of the first system, for example, a wearable device displays a dial interface.
  • a system interface of the first system for example, a wearable device displays a dial interface.
  • the second system when the first system is in the awake state, the second system is in the sleep state; in another possible application scenario, when the first system is in the awake state, the second system is also in the awake state state, and the first system is running in the foreground, while the second system is running in the background.
  • the application installed in the electronic device supports running in the second system, and supports triggering and launching from the first system.
  • the application that supports triggering and launching from the first system is a default application or is user-defined.
  • the application startup operation is a persistent operation, that is, the application startup operation lasts for a certain period of time from the start of the operation to the end of the operation.
  • the application launching operation is at least one of a click operation, a button operation, or a sliding operation, and this embodiment of the present application does not limit the specific application launching operation.
  • the first system monitors the first operation event triggered by the application startup operation in real time, and when the first operation event is detected, it sends a pre-operation message to the second system, instructing the second system to perform the pre-operation .
  • the first operation events corresponding to different application start operations may be the same or different.
  • the first operation event is an event triggered during an operation start phase of an application startup operation.
  • the first system determines the manner of sending the pre-operation message to the second system and the message content of the pre-operation message based on the state of the second system.
  • the first system sends the pre-operation message to the second system through dual-core communication, or the first system sends the pre-operation message to the second system by sending an interrupt.
  • Step 302 the second system executes the pre-operation indicated by the pre-operation message.
  • the second system executes the pre-operation indicated by the pre-operation message.
  • the pre-operation is an operation to be performed before the second system displays the application.
  • the pre-operation is a wake-up operation (when the second system is in a dormant state) or a screen brightening operation (when the second system is in a background running state), and the like.
  • Step 303 In response to the second operation event, the first system sends an application start message to the second system.
  • the first operation event and the second operation event are events triggered successively in different operation stages during the application start operation process.
  • the application start operation instruction Operation of the target application in the second system is initiated from the first system.
  • the first system after listening to the first operation event, continues to listen to the second operation event, and when listening to the second operation event, determines that a complete application startup operation has been received, so as to send the second The system sends an app launch message.
  • the second operation events corresponding to different application start operations may be the same or different.
  • the second operation event is an event triggered at the end of the operation of the application start operation, that is, the second operation event is detected after the first operation event.
  • the first operation event may not be triggered by an application startup operation
  • the first system detects the first operation event, it does not directly send an application startup message to the second system, but When an event is operated, an application start message is sent to the second system, which helps to reduce the probability of false start of the application.
  • the first system determines a target application to be started by the second system based on the application start operation, and sends an application start message to the second system based on the target application.
  • the first system sends an application start message to the second system through dual-core communication.
  • Step 304 the second system starts the target application indicated by the application start message.
  • the second system After receiving the application start message, the second system starts the target application indicated by the application start message. It should be noted that, if the pre-operation is not completed when the application startup message is received, the second system first completes the pre-operation and then performs the application startup operation.
  • the first system when the first system is in the wake-up state, when receiving the first operation event triggered by the application startup operation, the first system sends the second The second system sends a pre-operation message, instructing the second system to perform a pre-operation, and when receiving the second operation event triggered by the application start operation, the first system sends an application start message to the second system, instructing the second system to start the target application ;
  • the first system instructs the second system to perform pre-operations before the application is displayed based on the first operation event triggered first during the persistent application startup operation, so as to accelerate the speed at which the second system starts the target application after receiving the application startup message, Helps reduce application launch delays when launching a target application in a second system from a first system.
  • the first system in response to the first operation event, sends a pre-operation message to the second system, including:
  • the first system in response to the first operation event, the first system sends a pre-wake-up message to the second system;
  • the second system performs the pre-operation indicated by the pre-operation message, including:
  • the second system performs a pre-wake-up operation.
  • the method also includes:
  • the second system sets a sleep prohibition time period, wherein the second system is prohibited from entering the sleep state within the sleep prohibition time period after the pre-awakening.
  • the first system in response to the first operation event, sends a pre-operation message to the second system, including:
  • the first system When the second system is in the wake-up state, in response to the first operation event, the first system sends a pre-brightening message to the second system;
  • the second system performs the pre-operation indicated by the pre-operation message, including:
  • the second system performs a screen pre-brightening operation.
  • the application start operation is a click operation
  • the first system In response to the first operational event, the first system sends a pre-operational message to the second system, including:
  • the first system In response to the touch-down event, the first system sends a pre-operation message to the second system;
  • the first system sends an application start message to the second system, including:
  • the first system sends an application start message to the second system.
  • the first system sends a pre-operation message to the second system, including:
  • the first system sends a pre-operation message to the second system, and the target control area is the display area of the target control in the system interface of the first system,
  • the target control is used to start the target application in the second system;
  • the first system sends an application start message to the second system, including:
  • the first system sends an application start message to the second system, the application start message includes the application identifier of the target application, and the application identifier is determined based on the target control area.
  • the method also includes:
  • the second system When the second system is in the wake-up state, the second system sends a control update message to the first system, and the control update message includes the control area information of the target control and the application identification of the target application;
  • the first system stores the control area information and the application identification.
  • the second system when the second system is in the wake-up state, the second system sends a control update message to the first system, including:
  • the second system determines the control layout information of the switched system interface, and the interface switching operation is used to switch the system interface of the first system; the second system determines the control layout information based on the control layout information , sending a control update message to the first system; or,
  • the second system determines the control layout information of the edited system interface, and the interface editing operation is used to edit the system interface of the first system; the second system based on the control layout information , sending a control update message to the first system.
  • the application start operation is a button operation
  • the first system In response to the first operational event, the first system sends a pre-operational message to the second system, including:
  • the first system In response to the button press event, the first system sends a pre-operation message to the second system;
  • the first system sends an application start message to the second system, including:
  • the first system In response to the key up event, the first system sends an application start message to the second system.
  • the first system sends an application start message to the second system, including:
  • the first system In response to the key up event, the first system sends an application start message to the second system based on the number of times the key is pressed, where different times of pressing correspond to different applications.
  • the application start operation is a sliding operation
  • the first system In response to the first operational event, the first system sends a pre-operational message to the second system, including:
  • the first system In response to the touch sliding event, the first system sends a pre-operation message to the second system;
  • the first system sends an application start message to the second system, including:
  • the first system sends an application start message to the second system.
  • the first system sends a pre-operation message to the second system, including:
  • the first system In response to the touch sliding event, and the sliding parameter meets the system switching condition, the first system sends a pre-operation message to the second system.
  • the first system in response to the touch sliding event, and the sliding parameter meets the system switching condition, sends a pre-operation message to the second system, including:
  • the first system In response to the touch slide event, and the slide direction is the target direction, and the slide distance is greater than a distance threshold, the first system sends a pre-operation message to the second system;
  • the first system sends an application start message to the second system, including:
  • the first system In response to the touch-up event and the sliding distance is greater than the distance threshold, the first system sends an application start message to the second system.
  • the operating power consumption of the first system is lower than that of the second system.
  • the first system determines the pre-operation that the second system needs to perform based on the system status of the second system, and sends a corresponding pre-operation message to the second system, which may include the following two types: Condition:
  • the second system is in sleep state
  • the first system When the second system is in the dormant state, since the second system first needs to wake up the system before starting the application, in response to the first operation event, the first system sends a pre-wake-up message to the second system, instructing the second system to perform a pre-wake-up message. Wake up operation.
  • the first processor instructs the second processor to switch from the sleep state to the wake-up state by sending an interrupt.
  • the second system can switch from the dormant state to the wake-up state in advance during the application launch operation process, compared to when the application launch operation is complete Afterwards, switching from the sleep state to the wake-up state can speed up the application startup process in the second system in the sleep state and reduce the application startup delay.
  • the second system since it takes a certain amount of time from the start to the end of the application launch operation, and the second system in the wake-up state does not receive an operation within a certain period of time, it will re-enter the sleep state, so in order to prevent the second system from executing the application launch operation , switch back to the dormant state again.
  • the second system when the second system performs a pre-wake-up operation, the second system sets a sleep-prohibited duration, so that the second system remains awake within the sleep-prohibited duration after the pre-wake-up ( i.e. prohibit entering sleep state).
  • the second system may set the sleep prohibition period as 1s, that is, the second system cannot enter the sleep state again within 1s after the pre-awakening.
  • the second system cancels the prohibited sleep duration, so as to avoid the second system being in the wake-up state for a long time, so as to reduce the power consumption of the electronic device.
  • the first system is in the wake-up state, and the second system is in the sleep state.
  • the first system detects the first operation event, it sends a pre-wake-up message to the second system.
  • the second system receives the pre-wake-up message, it performs a pre-wake-up operation and sets a sleep-prohibited duration.
  • the first system subsequently detects the second operation event, it sends an application start message to the second system.
  • the second system starts the target application according to the application start message.
  • the second system is in the wake-up state
  • the display authority of the Graphical User Interface is located in the first system (that is, the system interface currently displaying the first system), and the second The screen status corresponding to one system is on, and the screen status corresponding to the second system is off. Since the second system needs to set the screen status to on before starting the application, and it takes a certain amount of time to set the screen status, so in order to reduce the application startup delay, the first system sends a pre-brightening screen message to the second system in response to the first operation event , to instruct the second system to perform the pre-brightening operation, that is, to set the screen status of the second system to on.
  • GUI Graphical User Interface
  • the first system sends a screen pre-brightening message to the second system through dual-core communication.
  • the second system can perform the screen brightening operation in advance during the application launch operation, compared to executing the application after the application launch operation
  • the bright screen operation can speed up the startup process of the application in the second system in the dormant state, and reduce the application startup delay.
  • the screen brightening operation refers to the operation at the software level, including the screen brightening startup operation of the framework layer, the screen state setting operation (changing the screen state corresponding to the second system from off to on), etc., and this embodiment does not make any reference to this limited.
  • the first system is in the wake-up state
  • the second system is in the wake-up state.
  • the first system detects the first operation event, it sends a screen pre-brightening message to the second system.
  • the second system executes the pre-brightening operation and sets the screen state to on.
  • the first system subsequently detects the second operation event, it sends an application start message to the second system.
  • the second system starts the target application according to the application start message.
  • the first system when it detects the first operation event, it instructs the second system to perform a pre-wakeup operation by sending a pre-wakeup message, or instructs the second system to perform a pre-brighten-up operation by sending a pre-brighten screen message , to reduce the startup delay of the application.
  • the time period for prohibiting sleep is set to avoid re-entering the sleep state during the application switching operation and ensure the effectiveness of the pre-wake-up operation.
  • the user can start an application in the second system from the first system by clicking a control displayed on the system interface, pressing a physical button, or gesture operation.
  • the operation events monitored by the first system are also different.
  • the following uses an exemplary embodiment to describe the application startup process under different application startup operations.
  • FIG. 6 shows a flowchart of an application launching method provided by another exemplary embodiment of the present application.
  • the application launching operation is a click operation as an example for illustration.
  • the method may include the following steps.
  • Step 601 in response to a touch down event, the first system sends a pre-operation message to the second system.
  • the electronic device displays a system interface of the first system, for example, a smart watch displays a dial interface.
  • the system interface of the first system is provided with a control for triggering the start of a specific application in the second system (default display on the dial interface or user-defined), the control can be a widget (widgets), status bars, indicators, etc.
  • the control can be a widget (widgets), status bars, indicators, etc.
  • there is a temperature indicator displayed on the dial interface and the weather application installed in the second system can be started by clicking the temperature indicator; there is a motion widget displayed on the dial interface, and the weather application installed in the second system can be started by clicking the motion widget. sports applications.
  • the first system Since it takes a certain amount of time from the start of the click to the end of the click on the controls displayed in the system interface, in order to reduce the application startup delay, the first system detects the touch down event (touch down) triggered at the beginning of the click operation, through the first The system sends a pre-operational message to the second system.
  • touch down event touch down
  • the click operation may be used to trigger the dynamic display of the system interface, so when the touch drop event is detected, the first The system needs to further detect whether the touch area corresponding to the touch drop event intersects with the target control area.
  • the target control area is a display area of the target control in the system interface of the first system.
  • the first system when the first system is in the wake-up state, in response to the touch drop event, and the touch area corresponding to the touch drop event overlaps with the target control area, the first system sends a pre-operation message to the second system,
  • the target control area is the display area of the target control in the system interface of the first system, and the target control is used to start the target application in the second system.
  • the storage area corresponding to the first system stores control area information corresponding to each target control, and the control area information may be expressed as (x, y, dx, dy), where (x, y ) is the vertex coordinates of the target control, dx and dy are the control dimensions of the target control.
  • the first system detects whether there is an intersection between the touch area and the control area indicated by each control area information.
  • the first system sends a pre-operation message to the second system; if the touch area corresponding to the touch drop event does not overlap with the target control area, the first system does not send a message to the second system The second system sends a pre-operational message.
  • a motion control 711 is displayed on the dial interface 71 of the RTOS.
  • the RTOS monitors the touch down event, and detects that the touch area overlaps with the control display area corresponding to the motion control 711, thereby sending a pre-awakening message to the Android system.
  • Step 602 the second system executes the pre-operation indicated by the pre-operation message.
  • the Android system after receiving the pre-wakeup message, the Android system performs a pre-wakeup operation.
  • Step 603 in response to the touch-up event, the first system sends an application start message to the second system.
  • the first system sends an application start message including the application identifier to the second system, instructing the second system to start the target application.
  • the application start message includes the application identifier of the target application, and the application identifier is determined based on the target control area.
  • the first system stores the correspondence between control area information and application identifiers. After determining the target control area that intersects with the touch area, the first system determines the target application based on the above correspondence. , and add the app ID to the app launch message.
  • the application identifier may be an application package name of the target application.
  • the first system after the first system detects the touch-down event, if it detects the touch-up event within a preset time period, it sends an application start message to the second system; event, the application launch message will not be sent (so the operation is not a tap operation, but a long press operation).
  • the preset duration is 500ms.
  • the RTOS when it detects a touch up event, it sends an application start message including the application identification corresponding to the sports application to the Android system.
  • Step 604 the second system starts the target application indicated by the application start message.
  • the Android system starts and runs the application after receiving the application startup message.
  • the smart watch displays the application surface 72 of the sports application.
  • the first system when the first system is in the wake-up state, when the first system detects a touch drop event and the touch area overlaps with the target control area, it sends a pre-operation message to the second system. After receiving the pre-operation message, the second system executes the pre-operation. When the first system subsequently detects the touch-up event, it sends an application start message to the second system. The second system starts the target application according to the application start message.
  • the layout position and type of the target controls in the corresponding system interface of the first system can be customized by the user, and when the system interface is replaced, the target controls in the system interface will also change.
  • the second system when the second system is in the wake-up state, the second system sends a control update message to the first system, and stores the control area information and the application identifier through the first system, wherein the control update message contains the target The control area information of the control and the application identification of the target application.
  • control area information In a schematic example, the corresponding relationship between the control area information and the application identifier is shown in Table 1.
  • the second system determines the control layout information of the switched system interface, and based on the control layout information, sends a message to the first system The control update message, wherein the interface switching operation is used to switch the system interface of the first system.
  • the layout positions of controls in different system interfaces are different, for example, in some dial interfaces, the controls are arranged at the four corners, and in some dial interfaces, the controls are arranged in the center. Therefore, when the user switches the system interface of the first system, the second The second system needs to synchronize the control layout information of the switched system interface to the first system for storage by the first system. When the touch drop event is subsequently monitored, it is detected whether there is an intersection between the touch area and the controls indicated by the layout information of each control.
  • the storage space corresponding to the first system simultaneously stores control layout information corresponding to the multiple system interfaces.
  • the first system receives the interface switching operation, the first system obtains the control layout information corresponding to the current system interface.
  • the second system determines the control layout information of the edited system interface, and based on the control layout information, sends a message to the first system A control update message is sent, wherein the interface editing operation is used to edit the system interface of the first system.
  • the second system when the user switches or edits the system interface of the first system under the second system, the second system will synchronize the switched or edited control layout information to the first system, so that the first system can follow up based on The latest control layout information determines whether to send a pre-operation message to the second system to improve the accuracy of pre-operation timing.
  • FIG. 9 shows a flow chart of an application startup method provided by another exemplary embodiment of the present application.
  • the application startup operation is a button operation as an example for illustration.
  • the method may include the following steps.
  • Step 901 in response to a button press event, the first system sends a pre-operation message to the second system.
  • the electronic device displays a system interface of the first system, for example, a smart watch displays a dial interface.
  • the user can quickly start the application in the second system by pressing the physical button provided on the electronic device.
  • users can quickly launch applications by pressing the crown, and for smart glasses, users can quickly launch applications by pressing the buttons on the temples.
  • the first system Since it takes a certain amount of time to press the physical button from the beginning to the end, in order to reduce the application startup delay, the first system sends a pre-operation message to the second system when the first system detects that the button is pressed at the beginning of the button operation .
  • the smart watch when the RTOS is in the wake-up state and the Android system is in the dormant state, the smart watch displays a dial interface 1001 .
  • the RTOS monitors the button press event and sends a pre-wakeup message to the Android system.
  • Step 902 the second system executes the pre-operation indicated by the pre-operation message.
  • the Android system performs pre-awakening after receiving the pre-awakening message.
  • Step 903 in response to the key up event, the first system sends an application start message to the second system.
  • the first system sends an application start message to the second system, instructing the second system to start the target application.
  • pressing the crown of the smart watch once is used to trigger the startup list application (that is, display all applications in the second system )
  • pressing the crown of the smart watch twice is used to trigger the start of the timer application, therefore, the first system detects the key up event, and does not detect the key down event within the preset time period after the key up event
  • an application start message is sent to the second system based on the number of presses of the key operation.
  • the preset duration is the time interval between two consecutive pressing operations in the continuous pressing operation, for example, 100 ms.
  • the application activation message sent by the first system to the second system includes the number of presses, and the second system determines the target application to be started according to the number of presses (the number of presses and the number of applications between applications are set in the first system) corresponding relationship).
  • the second system determines the shortcut key setting information, so as to send an update message to the first system based on the shortcut key setting information, wherein the shortcut key
  • the button setting information includes the corresponding relationship between the set button press times and the application identification.
  • the first system stores the correspondence between the number of presses and the application identifier, and the first system determines the application identifier of the target application based on the above correspondence, and adds the application identifier to the application start message.
  • the application identifier may be an application package name of the target application.
  • the RTOS when the RTOS detects a key-up event, it determines that the target application is a list application based on the number of press times, and then sends an application start message including the application identifier to the Android system.
  • Step 904 the second system starts the target application indicated by the application start message.
  • the Android system starts the list application after receiving the application start message, and when the list application is started, the smart watch displays the application list 1002 of the second system.
  • the first system when the first system is in the wake-up state, when the first system detects a button press event, it sends a pre-operation message to the second system. After receiving the pre-operation message, the second system executes the pre-operation.
  • the first system subsequently detects the key up event, the first system determines the target application based on the number of presses, and sends an application start message to the second system. The second system starts the target application according to the application start message.
  • the above-mentioned embodiment only takes the electronic device provided with a single button as an example for illustration.
  • FIG. 12 shows a flowchart of an application launching method provided by another exemplary embodiment of the present application.
  • the application launching operation is a sliding operation as an example for illustration.
  • the method may include the following steps.
  • Step 1201 in response to a touch and slide event, the first system sends a pre-operation message to the second system.
  • the electronic device displays a system interface of the first system, for example, a smart watch displays a dial interface.
  • the user can quickly start the application in the second system by performing a sliding operation (single-finger sliding or multi-finger sliding) on the dial interface. For example, for a smart watch, the user can quickly launch the first application by performing a left swipe operation on the dial interface, and quickly launch the second application by performing a right swipe operation on the dial interface, and so on.
  • the first system Since it takes a certain amount of time from the start of the slide to the end of the slide, in order to reduce the application startup delay, the first system sends a pre-operation to the second system when the first system detects the touch move event (touch move) triggered at the beginning of the slide operation information.
  • the first system needs to further determine whether the sliding parameter meets the system switching condition. If satisfied, a pre-operation message is sent; if not satisfied, a pre-operation message is not sent.
  • the system switching condition includes a sliding direction and a sliding distance.
  • the first system determines that the system switching condition is met.
  • the first system determines that the system switching condition is not met.
  • the distance threshold is the distance in the direction of the target.
  • the smart watch displays a dial interface 1301 .
  • the first system detects a touch slide event, and the indicated slide operation is a left slide operation, and when the left slide distance is greater than 200px, the first system sends a message to the second system Send a pre-wakeup message.
  • Step 1202 the second system executes the pre-operation indicated by the pre-operation message.
  • the Android system performs pre-awakening after receiving the pre-awakening message.
  • Step 1203 in response to the touch-up event, the first system sends an application start message to the second system.
  • touch up event touch up
  • the first system sends an application start message to the second system, instructing the second system to start the target application.
  • the first system stores the correspondence between the sliding direction and the application identification, and the first system determines the application identification of the target application based on the above correspondence, and adds the application identification to the application startup message .
  • the application identifier may be an application package name of the target application.
  • the first system adds the operation information of the sliding operation (for example, the sliding direction) to the application startup message, and the second system determines the application identifier of the target application based on the operation information (for example, the second system stores There is a correspondence between the sliding direction and the application identification).
  • the operation information of the sliding operation for example, the sliding direction
  • the second system determines the application identifier of the target application based on the operation information (for example, the second system stores There is a correspondence between the sliding direction and the application identification).
  • the user's sliding operation on the system interface may not be used to start the application (maybe to erase stains), so in order to avoid false startup of the application in this scenario, in a possible implementation, the response In the touch-up event, and the sliding distance is greater than the distance threshold, the first system sends an application start message to the second system.
  • the first system will not send an application start message to the second system.
  • the sliding distance can be determined according to the sliding start point and the sliding end point.
  • the RTOS when the RTOS detects a touch-up event, since the sliding distance is greater than 200px, the RTOS sends an application start message containing the application identification corresponding to the motion application to the Android system.
  • Step 1204 the second system starts the target application indicated by the application start message.
  • the Android system starts the sports application after receiving the application start message, and when the sports application is started, the smart watch displays the application interface 1302 of the sports application.
  • the first system when the first system is in the wake-up state, when the first system detects a touch sliding event, and the sliding direction is the target direction, and the sliding distance is greater than the distance threshold, it sends a pre-operation message to the second system. After receiving the pre-operation message, the second system executes the pre-operation.
  • the first system subsequently detects the touch-up event, the first system determines the target application based on the sliding direction, and sends an application start message to the second system. The second system starts the target application according to the application start message.
  • FIG. 15 shows a structural block diagram of an application launching device provided by an embodiment of the present application.
  • the device can be implemented as all or a part of electronic equipment through software, hardware or a combination of the two.
  • the unit includes:
  • the first system module 1501 is configured to send a pre-operation message to the second system module 1502 in response to the first operation event;
  • the second system module 1502 is configured to execute the pre-operation indicated by the pre-operation message
  • the first system module 1501 is further configured to send an application start message to the second system module 1502 in response to a second operation event, the first operation event and the second operation event being during an application start operation Events triggered successively in different operation phases, the application startup operation refers to the operation of starting the target application in the second system module 1502 from the first system module 1501;
  • the second system module 1502 is further configured to start the target application indicated by the application start message.
  • the first system module 1501 is configured to:
  • the second system module 1502 is configured to:
  • the second system module 1502 is also used for:
  • a sleep-prohibited time period is set, wherein the second system module 1502 is prohibited from entering a sleep state within the sleep-prohibited time period after pre-waking up.
  • the first system module 1501 is configured to:
  • the second system module 1502 is configured to:
  • the application start operation is a click operation
  • the first system module 1501 is configured to:
  • the first system module 1501 is specifically used for:
  • the target control area being the first A display area of a target control in the system interface of the system module 1501, where the target control is used to start the target application in the second system module 1502;
  • the application start message includes the application identification of the target application, and the application identification is based on the target control area sure get it.
  • the second system module 1502 is also used for:
  • control update message In the wake-up state, send a control update message to the first system module 1501, where the control update message includes the control area information of the target control and the application identifier of the target application;
  • the first system module 1501 is configured to store the control area information and the application identification.
  • the second system module 1502 is configured to:
  • the interface switching operation in response to an interface switching operation, determine the control layout information of the switched system interface, the interface switching operation is used to switch the system interface of the first system module 1501; based on the control layout information, sending the control update message to the first system module 1501;
  • the interface editing operation is used to edit the system interface of the first system module 1501; based on the control layout information, Send the control update message to the first system module 1501 .
  • the application startup operation is a button operation
  • the first system module 1501 is configured to:
  • the first system module 1501 is specifically used for:
  • the application start message is sent to the second system module 1502, wherein different times of pressing correspond to different applications.
  • the application startup operation is a sliding operation
  • the first system module 1501 is configured to:
  • the first system module 1501 is specifically used for:
  • the pre-operation message is sent to the second system module 1502 .
  • the first system module 1501 is specifically used for:
  • the operating power consumption of the first system module 1501 is lower than the operating power consumption of the second system module 1502 .
  • the first system when the first system is in the wake-up state, when receiving the first operation event triggered by the application startup operation, the first system sends the second The second system sends a pre-operation message, instructing the second system to perform a pre-operation, and when receiving the second operation event triggered by the application start operation, the first system sends an application start message to the second system, instructing the second system to start the target application ;
  • the first system instructs the second system to perform pre-operations before the application is displayed based on the first operation event triggered first during the persistent application startup operation, so as to accelerate the speed at which the second system starts the target application after receiving the application startup message, Helps reduce application launch delays when launching a target application in a second system from a first system.
  • FIG. 16 shows a structural block diagram of an electronic device provided by an exemplary embodiment of the present application.
  • the electronic device in this application may include one or more of the following components: a processor 1610 and a memory 1620 .
  • the processor 1610 includes at least a first processor 1611 and a second processor 1612, wherein the first processor 1611 is used to run the first system, the second processor 1612 is used to run the second system, and the first The power consumption of the processor 1611 is lower than that of the second processor 1612 , and the performance of the first processor 1611 is lower than that of the second processor 1612 .
  • the processor 1610 uses various interfaces and lines to connect various parts of the entire electronic device, and executes electronic functions by running or executing instructions, programs, code sets or instruction sets stored in the memory 1620, and calling data stored in the memory 1620. Various functions and processing data of the device.
  • the processor 1610 may adopt at least one of Digital Signal Processing (Digital Signal Processing, DSP), Field-Programmable Gate Array (Field-Programmable Gate Array, FPGA), and Programmable Logic Array (Programmable Logic Array, PLA). implemented in the form of hardware.
  • the processor 1610 can integrate one or more of a central processing unit (Central Processing Unit, CPU), an image processor (Graphics Processing Unit, GPU), a neural network processor (Neural-network Processing Unit, NPU) and a modem, etc. The combination.
  • the CPU mainly handles the operating system, user interface and application programs, etc.; the GPU is used to render and draw the content that needs to be displayed on the touch screen; the NPU is used to realize the artificial intelligence (Artificial Intelligence, AI) function; the modem is used to process Wireless communication. It can be understood that, the above-mentioned modem may not be integrated into the processor 1610, but may be realized by a single chip.
  • the memory 1620 may include random access memory (Random Access Memory, RAM), and may also include read-only memory (Read-Only Memory, ROM).
  • the memory 1620 includes a non-transitory computer-readable storage medium.
  • the memory 1620 may be used to store instructions, programs, codes, sets of codes, or sets of instructions.
  • the memory 1620 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playback function, an image playback function, etc.), Instructions and the like for implementing the following various method embodiments; the storage data area can store data created according to the use of the electronic device (such as audio data, phonebook) and the like.
  • the electronic device in the embodiment of the present application further includes a communication component 1630 and a display component 1640 .
  • the communication component 1630 can be a Bluetooth component, a wireless local area network (Wireless Fidelity, Wi-Fi) component, a near field communication (Near Field Communication, NFC) component, etc., and is used to communicate with external devices (servers or other The terminal device) communicates;
  • the display component 1640 is configured to display a graphical user interface, and/or receive user interaction operations.
  • an electronic device does not constitute a limitation on the electronic device, and the electronic device may include more or less components than those shown in the illustration, or combine certain some components, or a different arrangement of components.
  • an electronic device also includes components such as a radio frequency circuit, an input unit, a sensor, an audio circuit, a speaker, a microphone, and a power supply, which will not be repeated here.
  • the embodiment of the present application also provides a computer-readable storage medium, the storage medium stores at least one program, and the at least one program is used to be executed by a processor to implement the method for starting an application as described in the above-mentioned embodiments.
  • An embodiment of the present application provides a computer program product, the computer program product includes computer instructions, the computer instructions are stored in a computer-readable storage medium; the processor of the electronic device reads the computer instructions from the computer-readable storage medium, and processes The computer executes the computer instruction, so that the electronic device executes the application launching method provided by the above-mentioned embodiments.
  • the functions described in the embodiments of the present application may be implemented by hardware, software, firmware or any combination thereof.
  • the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium.
  • Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
  • a storage media may be any available media that can be accessed by a general purpose or special purpose computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)

Abstract

一种应用启动方法、装置、设备及存储介质,属于电子设备领域。该方法包括:响应于第一操作事件,第一***向第二***发送预操作消息(301);第二***执行预操作消息所指示的预操作(302);响应于第二操作事件,第一***向第二***发送应用启动消息,第一操作事件和第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,应用启动操作指从第一***启动第二***中目标应用的操作(303);第二***启动应用启动消息所指示的目标应用(304)。第一***基于持续性应用启动操作过程中先触发的第一操作事件指示第二***执行应用显示前所需执行的预操作,加速第二***接收到应用启动消息后启动目标应用的速度。

Description

应用启动方法、装置、设备及存储介质
本申请要求于2021年12月21日提交的申请号为202111573003.0、发明名称为“应用启动方法、装置、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及电子设备领域,特别涉及一种应用启动方法、装置、设备及存储介质。
背景技术
随着科技技术的不断发展,越来越多功能各异的电子设备应运而生,为用户的日常生活带来诸多遍历。
电子设备除了可以实现一些简单功能,比如查看时间、设置闹钟外,还可以通过安装的应用实现一些复杂功能。比如,用户可以通过电子设备中安装的即时通信应用进行即时通信,通过安装的睡眠监测应用对睡眠质量进行实时监测。
发明内容
本申请实施例提供了一种应用启动方法、装置、设备及存储介质。所述技术方案如下:
一方面,本申请实施例提供了一种应用启动方法,所述方法用于电子设备,所述电子设备中支持运行第一***和第二***;
所述方法包括:
响应于第一操作事件,所述第一***向所述第二***发送预操作消息;
所述第二***执行所述预操作消息所指示的预操作;
响应于第二操作事件,所述第一***向所述第二***发送应用启动消息,所述第一操作事件和所述第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,所述应用启动操作指从所述第一***启动所述第二***中目标应用的操作;
所述第二***启动所述应用启动消息所指示的所述目标应用。
另一方面,本申请实施例提供了一种应用启动装置,所述装置用于电子设备,所述电子设备中支持运行第一***和第二***;
所述装置包括:
第一***模块,用于响应于第一操作事件,向第二***模块发送预操作消息;
所述第二***模块,用于执行所述预操作消息所指示的预操作;
所述第一***模块,还用于响应于第二操作事件,向所述第二***模块发送应用启动消息,所述第一操作事件和所述第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,所述应用启动操作指从第一***启动第二***中目标应用的操作;
所述第二***模块,还用于启动所述应用启动消息所指示的所述目标应用。
另一方面,本申请实施例提供了一种电子设备,所述电子设备包括处理器和存储器;所述存储器存储有至少一段程序,所述至少一段程序用于被所述处理器执行以实现上述方面所述的应用启动方法。
另一方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一段程序,所述至少一段程序用于被处理器执行以实现如上述方面所述的应用启动方法。
另一方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品计算机指令,该计算机指令存储在计算机可读存储介质中;电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述方面提供的应用启动方法。
附图说明
图1是本申请一个示例性实施例示出的第二处理器对应双核通信软件框架的示意图;
图2是本申请一个示例性实施例示出的第一处理器对应双核通信软件框架的示意图;
图3示出了本申请一个示例性实施例提供的应用启动方法的流程图;
图4是本申请一个示例性实施例示出的应用启动过程的***交互时序图;
图5是本申请另一个示例性实施例示出的应用启动过程的***交互时序图;
图6示出了本申请另一个示例性实施例提供的应用启动方法的流程图;
图7示出了本申请一个示例性实施例提供的应用启动过程的界面示意图;
图8是本申请另一个示例性实施例示出的应用启动过程的***交互时序图;
图9示出了本申请另一个示例性实施例提供的应用启动方法的流程图;
图10示出了本申请一个示例性实施例提供的应用启动过程的界面示意图;
图11是本申请另一个示例性实施例示出的应用启动过程的***交互时序图;
图12示出了本申请另一个示例性实施例提供的应用启动方法的流程图;
图13示出了本申请一个示例性实施例提供的应用启动过程的界面示意图;
图14是本申请另一个示例性实施例示出的应用启动过程的***交互时序图;
图15示出了本申请另一个实施例提供的应用启动装置的结构框图;
图16示出了本申请一个示例性实施例提供的电子设备的结构方框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
相关技术中,电子设备中设置有单一处理器,并通过运行在处理器上的操作***,对设备运行过程中产生的所有***事件进行处理,因此该处理器需要具备较强的数据处理能力,并在设备运行过程中保持工作状态。然而,在日常使用过程中,电子设备在大多数情况下只需要实现一些对处理性能要求较低的功能,比如,对于智能手表或智能手环来说,大多数情况下,智能手表或智能手环只需要进行时间显示和消息提示。因此,长时间保持处理器处于工作状态并不会提高电子设备的性能,反而会增加设备功耗,导致电子设备的续航时间较短(在电池容量较小的可穿戴式设备上尤为明显)。
为了在保证电子设备性能的同时,降低电子设备的功耗,在一种可能的实施方式中,电子设备至少设置具有不同处理性能以及功耗的第一处理器和第二处理器,分别用于运行第一***和第二***(即双核双***),并为双核双***设计了一套***切换机制。
电子设备运行过程中,通过运行在低功耗处理器上的第一***,对低性能处理需求的事件进行处理,并保持高功耗处理器处于休眠状态(相应的,由高功耗处理器运行的第二***处于休眠状态),在实现电子设备基础功能的同时,降低了电子设备的功耗;当出现存在高性能处理需求的事件时(比如启动应用程序时),通过唤醒高功耗处理器,并切换至第二***对事件进行处理,保证触发的事件能够被及时响应并处理,满足电子设备的性能需求。
由于高功耗处理器从休眠状态切换为唤醒状态需要耗费一定时间(需要耗费约60ms),因此从第一***中启动第二***中应用的启动延迟。为了降低应用的启动延迟,本申请实施例引入了预操作机制,当用户通过持续性的应用启动操作从第一***中启动第二***中的目标应用时,第一***在检测到应用启动操作中第一操作阶段所触发的第一操作事件时,向第二***发送预操作消息,指示第二***执行启动目标应用显示前所需执行的预操作;在检测到应用启动操作中第二操作阶段所触发的第二操作事件时,向第二***发送应用启动消息,指示第二***启动目标应用。由于第二***利用持续性应用启动操作中第一操作事件和第二操作事件之间的时间段进行了预操作,因此能够缩短后续应用的启动延迟,提高应用的启动速度。
本申请实施例中,由于第一处理器和第二处理器异步工作,且第一***和第二***需要实现***通信(或称为双核通信)。在一种可能的应用场景下,第一***为运行在微控制单元(Micro Controller Unit,MCU)上的实时操作***(Real Time Operating System,RTOS),且第二***为运行在中央处理器(Central Processing Unit,CPU)上的安卓(Android)操作***。
如图1所示,其示出了本申请一个示例性实施例示出的安卓操作***的双核通信软件框架。该双核通信软件框架遵循“低耦合,高可靠,高复用”的设计原则,包括Kernel(内核)、HIDL(硬件抽象层接口描述语言)、Native Service(本地服务)、Framework Service(框架服务)、Framework API(框架接口)和APP(应用)部分的模块开发。
其中,APP模块包括Launcher(桌面启动器)、Setting(设置)和SystemUI(***用户界面)等功能模块,Framework API模块中包括MCUManager(MCU管理)、SensorManager(传感器管理)、LocationManager(位置管理)等管理模块,Framework Service模块中包括MCUManagerService(MCU管理服务)、SystemSensorManager(***传感器管理)、LocationManagerService(位置管理服务)等服务模块,Native Service模块包括dccservice(dcc服务)、Sensorservice(传感器服务)等服务模块,HIDL模块包括Sensor HAL(传感器硬件抽象层)、GPS HAL(全球定位***硬件抽象层)等模块。Kernel模块包括dcc_data、Mcu_sensor、Mcu_gps等DCC Transfer Driver(DCC传输驱动)。
传输层作为双核通信软件框架中衔接上下层的接口层,向应用层屏蔽***下层(数据链路层)通信的传输细节,为应用场景提供服务通道;应用层作为服务提供的主体,响应于人机交互并通过传输层对人机交互过程中产生的数据进行传输,以及对外部数据请求进行响应。
RTOS采用对等原则进行设计。以电子设备为智能手表为例,如图2所示,其示出了本申请一个示例 性实施例示出的RTOS的双核通信软件框架。
RTOS的双核通信软件框架分为应用层(Application Layer)、服务层(Service Layer)、框架层(Framework Layer)、硬件抽象层(Hardware abstraction layer)和平台层(Platform Layer)。
其中,应用层包括watch face(表盘)、Daily Tracker(日常追踪)、Message center(消息中心)、Voice around Apps(声音应用)、Health Apps(健康应用)、Settings(设置)等应用模块;服务层包括Sport&health task(运动健康任务)、System manager task(***管理任务)、AMS(活动管理服务)、AudioService(音频服务)、Log Service(日志服务)、OFTP Service(Odette文件传输协议服务)、BT Service(蓝牙服务)、Delegate Service(转交服务)、RPC Service(远程调用服务)、sensor Service(传感器服务)、storage Service(存储服务)等服务模块;框架层包括Message Pub(消息中心)、UI Framework(用户界面框架)、G2D Engine(G2D引擎)、Audio Middleware(音频中间件)、Preference(偏好)、File system(文件***)、Algorithms(算法)、AsycEvent(进程内异步事件)等框架模块;硬件抽象层包括Screen/TP(屏幕/触控屏)、sensors(传感器)等硬件抽象模块;平台层包括板级支持包(Board Support Package,BSP)以及低等级驱动(LOW level Driver),其中,BSP包括Screen/TP、Codec(编码译码器)、sensors、Flash(闪存)、PSRAM(伪静态随机存储器)等等,低等级驱动包括Uart(通用异步收发传输器)、ADC(模数转换器)、GPIO(通用输入输出)、SPI(串行外设接口)、I2C(集成电路总线)、IOS(输入输出***)、PCM(脉冲编码调制)、I2S(集成音频总线)、HWTimer(硬件定时器)。
需要说明的是,上述双核通信软件框架仅用于示意性说明,本领域技术人员还可以根据实际需求,对上述框架进行增加、删除或修改,本申请实施例并不对双核通信软件框架的具体结构构成限定。
请参考图3,其示出了本申请一个示例性实施例提供的应用启动方法的流程图,本实施例以该方法应用电子设备,且电子设备支持运行第一***和第二***为例进行说明,该方法可以包括如下步骤。
步骤301,响应于第一操作事件,第一***向第二***发送预操作消息。
其中,第一***的运行功耗低于第二***的运行功耗。
在一种可能的实施方式中,电子设备设置有第一处理器和第二处理器,其中,第一处理器的处理性能低于第二处理器的处理性能(第一处理器的处理能力和处理速度均低于第二处理器),且第一处理器的功耗低于第二处理器的功耗。相应的,第二***(由第二处理器运行)能够处理第一***(由第一处理器运行)所处理的事件,而第一***并不一定能够处理第二***所处理的事件。
在另一种可能的实施方式中,电子设备也可以设置单一处理器,第一***和第二***分别运行在处理器的不同核心上,其中,运行第二***的核心的处理性能高于运行第一***的核心的处理性能。
以电子设备为智能手表为例,第一处理器为MCU,第二处理器为CPU,第一***为RTOS,第二***为安卓***。相应的,第一***所能处理的事件包括表盘显示、表盘界面切换、通知消息显示等对处理性能要求较低的场景或弱交互场景;第二***所能处理的事件包括来电接听、启动应用、表盘编辑、功能设置等对处理性能要求较高的场景或强交互场景。
在一种可能的实施方式中,电子设备的工作模式包括性能模式、混动模式和低功耗模式,其中,性能模式下,第二处理器和第一处理器均保持唤醒状态(相应的,第一***和第二***均处于唤醒状态);低功耗模式下,仅第一处理器保持唤醒状态,而第二处理器保持关闭状态(即第一***处于唤醒状态,第二***处于关闭状态);混动模式下,在通过第一***处理事件时,第二处理器处于待机状态,可以在休眠和唤醒状态之间切换(即第一***处于唤醒状态时,第二***既可以处于唤醒状态,又可以处于休眠状态)。
可选的,唤醒状态下,***相关数据缓存在内存(RAM)中,以便于随时运行***相关数据,休眠状态下,处理器大部分硬件模块关闭,***相关数据存储在硬盘(ROM)中,并在切换为唤醒状态时由硬盘写入内存中。
不同于智能手机一类具有强交互属性的电子设备,可穿戴式设备作为一种辅助性的电子设备,在绝大多数使用场景下与用户之间仅存在弱交互。比如,用户在大部分场景下仅通过智能手表进行抬腕查看时间。因此,可穿戴式设备通过第一***对事件进行处理时,控制第二处理器处于休眠状态(第二***处于休眠状态),从而降低可穿戴式设备的整体功耗。为了方便表述,下述实施例中以可穿戴式设备为例进行说明。
可选的,第一***处于唤醒状态时,电子设备显示第一***的***界面,比如,可穿戴式设备显示表盘界面。在一种可能的应用场景下,当第一***处于唤醒状态时,第二***处于休眠状态;在另一种可能的应用场景下,当第一***处于唤醒状态时,第二***同样处于唤醒状态,且第一***处于前台运行状态,而第二***处于后台运行状态。
本申请实施例中,电子设备中安装的应用支持在第二***中运行,且支持从第一***中触发启动。可选的,支持从第一***中触发启动的应用为默认应用或者由用户自定义。
当用户想要从第一***启动第二***中的目标应用时,可以执行特定的应用启动操作。其中,该应用启动操作为具有持续性的操作,即应用启动操作从操作开始到操作结束持续一定时长。在一些实施例中, 该应用启动操作为点击操作、按键操作或滑动操作中的至少一种,本申请实施例并不对具体的应用启动操作构成限定。
可选的,唤醒状态下,第一***实时监听应用启动操作所触发的第一操作事件,当监听到第一操作事件时,即向第二***发送预操作消息,指示第二***执行预操作。其中,不同应用启动操作对应的第一操作事件可能相同,也可能不同。
可选的,该第一操作事件是在应用启动操作的操作开始阶段所触发的事件。
其中,第一***基于第二***所处的状态,确定向第二***发送预操作消息的方式,以及预操作消息的消息内容。在一种可能的实施方式中,第一***通过双核通信的方式,向第二***发送预操作消息,或者,第一***通过发送中断的方式,向第二***发送预操作消息。
步骤302,第二***执行预操作消息所指示的预操作。
对应的,第二***接收到预操作消息后,即执行预操作消息所指示的预操作。其中,该预操作为第二***显示应用前所需执行的操作。比如,该预操作为唤醒操作(第二***处于休眠状态时)或亮屏操作(第二***处于后台运行状态时)等等。
步骤303,响应于第二操作事件,第一***向第二***发送应用启动消息,第一操作事件和第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,应用启动操作指从第一***启动第二***中目标应用的操作。
在一种可能的实施方式中,监听到第一操作事件后,第一***继续监听第二操作事件,并在监听到第二操作事件时,确定接收到完整的应用启动操作,从而向第二***发送应用启动消息。其中,不同应用启动操作对应的第二操作事件可能相同,也可能不同。
可选的,第二操作事件是在应用启动操作的操作结束阶段所触发的事件,即第二操作事件在第一操作事件之后监听到。
需要说明的是,由于第一操作事件可能并非由应用启动操作触发,因此第一***在监听到第一操作事件时,并不会直接向第二***发送应用启动消息,而是在监听到第二操作事件时,向第二***发送应用启动消息,有助于降低应用误启动的概率。
在一种可能的实施方式中,第一***基于应用启动操作,确定第二***所需启动的目标应用,并基于目标应用向第二***发送应用启动消息。可选的,第一***通过双核通信的方式向第二***发送应用启动消息。
步骤304,第二***启动应用启动消息所指示的目标应用。
对应的,第二***接收到应用启动消息后,即启动应用启动消息所指示的目标应用。需要说明的是,若在接收到应用启动消息时预操作未执行完成,第二***首先执行完预操作,然后执行应用启动操作。
综上所述,本申请实施例中,对于支持双***的电子设备,在第一***处于唤醒状态的情况下,当接收到应用启动操作所触发的第一操作事件时,第一***向第二***发送预操作消息,指示第二***执行预操作,并在接收到应用启动操作所触发的第二操作事件时,第一***向第二***发送应用启动消息,指示第二***启动目标应用;第一***基于持续性应用启动操作过程中先触发的第一操作事件指示第二***执行应用显示前所需执行的预操作,加速第二***接收到应用启动消息后启动目标应用的速度,有助于降低从第一***启动第二***中目标应用的应用启动延迟。
可选的,响应于第一操作事件,第一***向第二***发送预操作消息,包括:
在第二***处于休眠状态的情况下,响应于第一操作事件,第一***向第二***发送预唤醒消息;
第二***执行预操作消息所指示的预操作,包括:
第二***执行预唤醒操作。
可选的,方法还包括:
第二***设置禁止休眠时长,其中,第二***在预唤醒后的禁止休眠时长内禁止进入休眠状态。
可选的,响应于第一操作事件,第一***向第二***发送预操作消息,包括:
在第二***处于唤醒状态的情况下,响应于第一操作事件,第一***向第二***发送预亮屏消息;
第二***执行预操作消息所指示的预操作,包括:
第二***执行预亮屏操作。
可选的,应用启动操作为点击操作;
响应于第一操作事件,第一***向第二***发送预操作消息,包括:
响应于触摸落下事件,第一***向第二***发送预操作消息;
响应于第二操作事件,第一***向第二***发送应用启动消息,包括:
响应于触摸抬起事件,第一***向第二***发送应用启动消息。
可选的,响应于触摸落下事件,第一***向第二***发送预操作消息,包括:
响应于触摸落下事件,且触摸落下事件对应的触摸区域与目标控件区域存在交集,第一***向第二***发送预操作消息,目标控件区域为第一***的***界面中目标控件的显示区域,目标控件用于启动第二***中的目标应用;
响应于触摸抬起事件,第一***向第二***发送应用启动消息,包括:
响应于触摸抬起事件,第一***向第二***发送应用启动消息,应用启动消息中包含目标应用的应用标识,且应用标识基于目标控件区域确定得到。
可选的,方法还包括:
在第二***处于唤醒状态的情况下,第二***向第一***发送控件更新消息,控件更新消息中包含目标控件的控件区域信息以及目标应用的应用标识;
第一***存储控件区域信息和应用标识。
可选的,在第二***处于唤醒状态的情况下,第二***向第一***发送控件更新消息,包括:
在第二***处于唤醒状态的情况下,响应于界面切换操作,第二***确定切换后***界面的控件布局信息,界面切换操作用于切换第一***的***界面;第二***基于控件布局信息,向第一***发送控件更新消息;或,
在第二***处于唤醒状态的情况下,响应于界面编辑操作,第二***确定编辑后***界面的控件布局信息,界面编辑操作用于编辑第一***的***界面;第二***基于控件布局信息,向第一***发送控件更新消息。
可选的,应用启动操作为按键操作;
响应于第一操作事件,第一***向第二***发送预操作消息,包括:
响应于按键按下事件,第一***向第二***发送预操作消息;
响应于第二操作事件,第一***向第二***发送应用启动消息,包括:
响应于按键抬起事件,第一***向第二***发送应用启动消息。
可选的,响应于按键抬起事件,第一***向第二***发送应用启动消息,包括:
响应于按键抬起事件,第一***基于按键操作的按压次数,向第二***发送应用启动消息,其中,不同按压次数对应不同应用。
可选的,应用启动操作为滑动操作;
响应于第一操作事件,第一***向第二***发送预操作消息,包括:
响应于触摸滑动事件,第一***向第二***发送预操作消息;
响应于第二操作事件,第一***向第二***发送应用启动消息,包括:
响应于触摸抬起事件,第一***向第二***发送应用启动消息。
可选的,响应于触摸滑动事件,第一***向第二***发送预操作消息,包括:
响应于触摸滑动事件,且滑动参数满足***切换条件,第一***向第二***发送预操作消息。
可选的,响应于触摸滑动事件,且滑动参数满足***切换条件,第一***向第二***发送预操作消息,包括:
响应于触摸滑动事件,且滑动方向为目标方向,且滑动距离大于距离阈值,第一***向第二***发送预操作消息;
响应于触摸抬起事件,第一***向第二***发送应用启动消息,包括:
响应于触摸抬起事件,且滑动距离大于距离阈值,第一***向第二***发送应用启动消息。
可选的,第一***的运行功耗低于第二***的运行功耗。
在一种可能的实施方式中,第一***基于第二***所处的***状态,确定第二***所需执行的预操作,并向第二***发送相应的预操作消息,可以包括如下两种情况:
1、第二***处于休眠状态
在第二***处于休眠状态的情况下,由于第二***启动应用前首先需要进行***唤醒,因此响应于第一操作事件,第一***向第二***发送预唤醒消息,指示第二***执行预唤醒操作。
在一种可能的实施方式中,第一处理器通过发送中断的方式指示第二处理器由休眠状态切换为唤醒状态。
由于第一***在应用启动操作的开始阶段即指示第二***进行预唤醒,因此第二***能够在应用启动操作的操作过程中提前由休眠状态切换为唤醒状态,相较于在应用启动操作完整后开始由休眠状态切换为唤醒状态,能够加速休眠状态下第二***中应用启动流程,降低应用启动延时。
由于应用启动操作从开始至结束需要经过一定时长,且唤醒状态下的第二***在一定时间内未接收到操作,会重新进入休眠状态,因此为了避免第二***在应用启动操作的执行过程中,重新切换回休眠状态,在一种可能的实施方式中,第二***执行预唤醒操作时,第二***设置禁止休眠时长,使第二***在预唤 醒后的禁止休眠时长内保持唤醒状态(即禁止进入休眠状态)。比如,第二***设置禁止休眠时长可以为1s,即第二***在预唤醒后的1s内无法再次进入休眠状态。
可选的,当接收到第一***发送的应用启动消息后,第二***取消禁止休眠时长,避免第二***长时间处于唤醒状态,以降低电子设备的功耗。
需要说明的是,第二***切换为唤醒状态后,还需要执行其他的操作,比如亮屏操作,本实施例在此不作赘述。
如图4所示,第一***处于唤醒状态,且第二***处于休眠状态,当第一***监听到第一操作事件时,向第二***发送预唤醒消息。第二***接收到预唤醒消息后,执行预唤醒操作,并设置禁止休眠时长。第一***后续监听到第二操作事件时,向第二***发送应用启动消息。第二***根据该应用启动消息启动目标应用。
2、第二***处于唤醒状态
在第一***处于前台运行状态,且第二***处于唤醒状态的情况下,图形用户界面(Graphical User Interface,GUI)的展示权限位于第一***(即当前显示第一***的***界面),第一***对应的屏幕状态为开启(on),而第二***对应的屏幕状态为关闭(off)。由于第二***启动应用前需要将屏幕状态设置为开启,而设置屏幕状态需要耗费一定时间,因此为了降低应用启动延迟,响应于第一操作事件,第一***向第二***发送预亮屏消息,指示第二***执行预亮屏操作,即将第二***的屏幕状态设置为开启。
在一种可能的实施方式中,第一***通过双核通信向第二***发送预亮屏消息。
由于第一***在应用启动操作的开始阶段即指示第二***进行预亮屏,因此第二***能够在应用启动操作的操作过程中提前执行亮屏操作,相较于在应用启动操作完成后执行亮屏操作,能够加速休眠状态下第二***中应用的启动流程,降低应用启动延时。其中,该亮屏操作是指软件层面的操作,包括框架层的亮屏启动操作、屏幕状态设置操作(将第二***对应的屏幕状态由off修改为on)等等,本实施例对此不作限定。
如图5所示,第一***处于唤醒状态,且第二***处于唤醒状态,当第一***监听到第一操作事件时,向第二***发送预亮屏消息。第二***接收到预亮屏消息后,执行预亮屏操作,将屏幕状态设置为on。第一***后续监听到第二操作事件时,向第二***发送应用启动消息。第二***根据该应用启动消息启动目标应用。
本实施例中,第一***在监听到第一操作事件时,通过发送预唤醒消息,指示第二***执行预唤醒操作,或者,通过发送预亮屏消息,指示第二***执行预亮屏操作,降低应用的启动延迟。并且,在第二***执行预唤醒操作的同时,设置禁止休眠时长,避免在应用切换操作过程中再次进入休眠状态,保证预唤醒操作的有效性。
在日常使用过程中,用户可以采用点击***界面上显示的控件、按压物理按键或手势操作等方式,从第一***启动第二***中的应用。针对不同的应用启动操作,第一***监听的操作事件也存在差异。下面采用示例性的实施例,分别对不同应用启动操作下的应用启动过程进行说明。
请参考图6,其示出了本申请另一个示例性实施例提供的应用启动方法的流程图,本实施例以应用启动操作为点击操作为例进行说明,该方法可以包括如下步骤。
步骤601,响应于触摸落下事件,第一***向第二***发送预操作消息。
在一些实施例中,第一***处于唤醒状态时,电子设备显示第一***的***界面,比如,智能手表显示表盘界面。为了方便用户快速启动第二***中的应用,第一***的***界面上设置有用于触发启动第二***中特定应用的控件(表盘界面中默认显示或者用户自定义),该控件可以为微件(widget)、状态栏、指示器等等。比如,表盘界面上显示有温度指示器,通过点击该温度指示器可以启动第二***中安装的天气应用;表盘界面上显示有运动微件,通过点击该运动微件可以启动第二***中安装的运动应用。
由于从开始点击到结束点击***界面中显示的控件需要经过一定时间,因此为了降低应用启动延迟,第一***在监听到点击操作开始阶段所触发的触摸落下事件(touch down)时,通过第一***向第二***发送预操作消息。
并且,由于并非***界面内的所有点击操作均用于触发启动应用,比如,智能手表开启常亮功能时,点击操作可能用于触发***界面动态显示,因此在监听到触摸落下事件时,第一***需要进一步检测触摸落下事件对应的触摸区域是否与目标控件区域存在交集。其中,该目标控件区域为第一***的***界面中目标控件的显示区域。
在一些实施例中,在第一***处于唤醒状态的情况下,响应于触摸落下事件,且触摸落下事件对应的触摸区域与目标控件区域存在交集,第一***向第二***发送预操作消息,目标控件区域为第一***的***界面中目标控件的显示区域,目标控件用于启动第二***中的目标应用。
在一种可能的实施方式中,第一***对应的存储区域存储有各个目标控件对应的控件区域信息,该控 件区域信息可以表示为(x,y,dx,dy),其中,(x,y)为目标控件的顶点坐标,dx和dy为目标控件的控件尺寸。监听到触摸落下事件时,第一***检测触摸区域与各个控件区域信息所指示的控件区域之间是否存在交集。
若触摸落下事件对应的触摸区域与目标控件区域存在交集,第一***向第二***发送预操作消息;若触摸落下事件对应的触摸区域与目标控件区域不存在交集,第一***不会向第二***发送预操作消息。
示意性的,如图7所示,RTOS的表盘界面71中显示有运动控件711。当安卓***处于休眠状态时,RTOS监听到touch down事件,且检测到触摸区域与运动控件711对应的控件显示区域存在交集,从而向安卓***发送预唤醒消息。
步骤602,第二***执行预操作消息所指示的预操作。
示意性的,如图7所示,安卓***接收到预唤醒消息后,即执行预唤醒操作。
步骤603,响应于触摸抬起事件,第一***向第二***发送应用启动消息。
当继续监听到触摸抬起事件(touch up)时,表明点击操作结束,此时第一***向第二***发送包含应用标识的应用启动消息,指示第二***启动目标应用。
其中,应用启动消息中包含目标应用的应用标识,且应用标识基于目标控件区域确定得到。
在一种可能的实施方式中,第一***存储有控件区域信息与应用标识之间的对应关系,确定出与触摸区域存在交集的目标控件区域后,第一***即基于上述对应关系确定目标应用的应用标识,并将应用标识添加至应用启动消息中。其中,该应用标识可以为目标应用的应用包名。
在一些实施例中,第一***监听到触摸落下事件后,若在预设时长内监听到触摸抬起事件,则向第二***发送应用启动消息;若在预设时长内未监听到触摸抬起事件,则不会发送应用启动消息(因此该操作并非点击操作,而是长按操作)。比如,该预设时长为500ms。
示意性的,如图7所示,RTOS监听到touch up事件时,向安卓***发送包含运动应用对应应用标识的应用启动消息。
步骤604,第二***启动应用启动消息所指示的目标应用。
示意性的,如图7所示,安卓***接收到应用启动消息后,启动运行应用。运动应用启动完成后,智能手表显示运动应用的应用面72。
如图8所示,第一***处于唤醒状态时,当第一***监听到触摸落下事件,且触摸区域与目标控件区域存在交集时,向第二***发送预操作消息。第二***接收到预操作消息后,执行预操作。第一***后续监听到触摸抬起事件时,向第二***发送应用启动消息。第二***根据该应用启动消息启动目标应用。
第一***对应***界面中目标控件的布局位置、类型可以由用户自定义,且***界面更换时,***界面中的目标控件也会发生变化,为了预操作消息的发送准确性,在一种可能的实施方式中,在第二***处于唤醒状态的情况下,第二***向第一***发送控件更新消息,并通过第一***存储控件区域信息和应用标识,其中,该控件更新消息中包含目标控件的控件区域信息以及目标应用的应用标识。
在一个示意性的例子中,控件区域信息与应用标识之间的对应关系如表一所示。
表一
应用标识 控件区域信息
xx运动 (10,10,40,40)
xx聊天 (300,10,40,40)
xx天气 (10,300,40,40)
在一种可能的应用场景中,在第二***处于唤醒状态的情况下,响应于界面切换操作,第二***确定切换后***界面的控件布局信息,从而基于控件布局信息,向第一***发送控件更新消息,其中,界面切换操作用于切换第一***的***界面。
由于不同***界面(比如表盘界面)中控件的布局位置不同,比如有的表盘界面中控件布局在四角,有的表盘界面中控件布局在中央,因此当用户切换第一***的***界面后,第二***需要将切换后***界面的控件布局信息同步至第一***,由第一***进行存储。后续监听到触摸落下事件时,即检测触摸区域与各个控件布局信息指示的控件之间是否存在交集。
在一些实施例中,当第一***设置有多个***界面时,比如多个表盘界面,第一***对应的存储空间同时存储多个***界面对应的控件布局信息。当第一***接收到界面切换操作时,第一***即获取当前***界面对应的控件布局信息。
在另一种可能的应用场景中,在第二***处于唤醒状态的情况下,响应于界面编辑操作,第二***确定编辑后***界面的控件布局信息,从而基于控件布局信息,向第一***发送控件更新消息,其中,界面编辑操作用于编辑第一***的***界面。
除了进行***界面切换外,用户可以对***界面中的控件布局以及控件类型进行自定义,因此当用户 通过第二***对***界面进行界面编辑后,第二***需要将编辑后用户***界面的控件布局信息同步至第一***,由第一***进行存储。后续监听到触摸落下事件时,即检测触摸区域与各个控件布局信息指示的控件之间是否存在交集。
本实施例中,当用户在第二***下对第一***的***界面进行切换或编辑时,第二***将切换或编辑后的控件布局信息同步至第一***,使第一***后续能够基于最新的控件布局信息确定是否想第二***发送预操作消息,提高预操作时机的准确性。
请参考图9,其示出了本申请另一个示例性实施例提供的应用启动方法的流程图,本实施例以应用启动操作为按键操作为例进行说明,该方法可以包括如下步骤。
步骤901,响应于按键按下事件,第一***向第二***发送预操作消息。
在一些实施例中,第一***处于唤醒状态时,电子设备显示第一***的***界面,比如,智能手表显示表盘界面。用户可以通过按压电子设备上设置的物理按键,快速启动第二***中的应用。比如,对于智能手表,用户可以通过按压表冠来快速启动应用,对于智能眼镜,用户可以通过按压镜腿上的按键来快速启动应用。
由于从开始按压到结束按压物理按键需要经过一定时间,因此为了降低应用启动延迟,第一***在监听到按键操作开始阶段所触发的按键按下时,第一***向第二***发送预操作消息。
示意性的,如图10所示,RTOS处于唤醒状态,安卓***处于休眠状态时,智能手表显示表盘界面1001。当用户按下表冠时,RTOS监听到按键按下事件,从而向安卓***发送预唤醒消息。
步骤902,第二***执行预操作消息所指示的预操作。
示意性的,如图10所示,安卓***接收到预唤醒消息后进行预唤醒。
步骤903,响应于按键抬起事件,第一***向第二***发送应用启动消息。
当继续监听到按键抬起事件时,表明按键操作结束,此时第一***向第二***发送应用启动消息,指示第二***启动目标应用。
在一种可能的实施方式中,由于对同一按键进行不同次数的按压可能用于启动不同应用,比如,按压一次智能手表的表冠用于触发启动列表应用(即显示第二***中的所有应用),按压两次智能手表的表冠用于触发启动计时器应用,因此,第一***监听到按键抬起事件,且在该按键抬起事件后的预设时长内未监听到按键按下事件时(即监听到最后一次按压抬起事件),基于按键操作的按压次数向第二***发送应用启动消息。其中,该预设时长为连续按压操作中相连两次按压操作之间的时间间隔,比如100ms。
可选的,第一***向第二***发送的应用启动消息中包含按压次数,第二***即根据该按压次数确定所需启动的目标应用(第一***中设置有按压次数与应用之间的对应关系)。
需要说明的是,在第二***处于唤醒状态的情况下,响应于快捷按键设置操作,第二***确定快捷按键设置信息,从而基于快捷按键设置信息,向第一***发送更新消息,其中,快捷按键设置信息中包含设置的按键按压次数和应用标识之间的对应关系。
可选的,第一***存储有按压次数与应用标识之间的对应关系,第一***即基于上述对应关系确定目标应用的应用标识,并将应用标识添加至应用启动消息中。其中,该应用标识可以为目标应用的应用包名。
示意性的,如图10所示,RTOS监听到按键抬起事件时,基于按压次数一次确定目标应用为列表应用,从而向安卓***发送包含应用标识的应用启动消息。
步骤904,第二***启动应用启动消息所指示的目标应用。
示意性的,如图10所示,安卓***接收到应用启动消息后启动列表应用,当列表应用启动完毕时,智能手表显示第二***的应用列表1002。
如图11所示,第一***处于唤醒状态时,当第一***监听到按键按下事件时,向第二***发送预操作消息。第二***接收到预操作消息后,执行预操作。第一***后续监听到按键抬起事件时,第一***基于按压次数确定目标应用,并向第二***发送应用启动消息。第二***根据该应用启动消息启动目标应用。
需要说明的是,上述实施例仅以电子设备设置有单一按键为例进行说明,在其他可能的实施方式中,当电子设备设置有多个按键时,也可以通过按压不同按键实现不同应用的快速启动,或者,通过同时按压多个按键实现应用的快速启动,本实施例对此不作限定。
请参考图12,其示出了本申请另一个示例性实施例提供的应用启动方法的流程图,本实施例以应用启动操作为滑动操作为例进行说明,该方法可以包括如下步骤。
步骤1201,响应于触摸滑动事件,第一***向第二***发送预操作消息。
在一些实施例中,第一***处于唤醒状态时,电子设备显示第一***的***界面,比如,智能手表显示表盘界面。用户可以通过在表盘界面上进行滑动操作(单指滑动或多指滑动),快速启动第二***中的应用。比如,对于智能手表,用户可以通过在表盘界面进行左滑操作快速启动第一应用,在表盘界面进行 右滑操作快速启动第二应用等等。
由于从开始滑动到结束滑动需要经过一定时间,因此为了降低应用启动延迟,第一***在监听到滑动操作开始阶段触发的触摸滑动事件(touch move)时,第一***向第二***发送预操作消息。
并且,由于并非***界面内的所有滑动操作均用于触发启动应用,比如,表盘界面内仅左滑操作用于触发启动应用,其他方向的滑动操作则用于触发其他功能(比如表盘切换、显示状态信息等等),因此在监听到触摸滑动事件时,第一***需要进一步确定滑动参数是否满足***切换条件。若满足,则发送预操作消息;若不满足,则不发送预操作消息。
在一种可能的实施方式中,该***切换条件包括滑动方向以及滑动距离。响应于触摸滑动事件所指示的滑动方向为目标方向,且滑动距离大于距离阈值,第一***确定满足***切换条件。响应于触摸滑动事件所指示的滑动方向不属于目标方向,或滑动距离小于距离阈值,第一***确定不满足***切换条件。其中,该距离阈值为目标方向上的距离。
示意性的,如图13所示,RTOS处于唤醒状态,安卓***处于休眠状态时,智能手表显示表盘界面1301。当目标方向为从右至左,且距离阈值为200px时,第一***监听到触摸滑动事件,且指示的滑动操作为左滑操作,且左滑距离大于200px时,第一***向第二***发送预唤醒消息。
步骤1202,第二***执行预操作消息所指示的预操作。
示意性的,如图13所示,安卓***接收到预唤醒消息后进行预唤醒。
步骤1203,响应于触摸抬起事件,第一***向第二***发送应用启动消息。
当继续监听到触摸抬起事件(touch up)时,表明滑动操作结束,此时第一***向第二***发送应用启动消息,指示第二***启动目标应用。
在一种可能的实施方式中,第一***存储有滑动方向与应用标识之间的对应关系,第一***即基于上述对应关系确定目标应用的应用标识,并将应用标识添加至应用启动消息中。其中,该应用标识可以为目标应用的应用包名。
在另一种可能的实施方式中,第一***将滑动操作的操作信息(比如滑动方向)添加至应用启动消息中,由第二***基于操作信息确定目标应用的应用标识(比如第二***存储有滑动方向与应用标识之间的对应关系)。
在一些可能的场景下,用户在***界面进行滑动操作可能并非用于启动应用(可能是擦除污渍),因此为了避免这种场景下应用的误启动,在一种可能的实施方式中,响应于触摸抬起事件,且滑动距离大于距离阈值,第一***向第二***发送应用启动消息。
若在监听到触摸抬起事件时,滑动距离小于距离阈值,第一***则不会向第二***发送应用启动消息。其中,该滑动距离可以根据滑动起点和滑动终点确定得到。
示意性的,如图13所示,RTOS监听到触摸抬起事件时,由于滑动距离大于200px,因此RTOS向安卓***发送包含运动应用对应应用标识的应用启动消息。
步骤1204,第二***启动应用启动消息所指示的目标应用。
示意性的,如图13所示,安卓***接收到应用启动消息后启动运动应用,当运动应用启动完毕时,智能手表显示运动应用的应用界面1302。
如图14所示,第一***处于唤醒状态时,当第一***监听到触摸滑动事件,且滑动方向为目标方向,滑动距离大于距离阈值时,向第二***发送预操作消息。第二***接收到预操作消息后,执行预操作。第一***后续监听到触摸抬起事件时,第一***基于滑动方向确定目标应用,并向第二***发送应用启动消息。第二***根据该应用启动消息启动目标应用。
请参考图15,其示出了本申请一个实施例提供的应用启动装置的结构框图。该装置可以通过软件、硬件或者两者的结合实现成为电子设备的全部或一部分。该装置包括:
第一***模块1501,用于响应于第一操作事件,向第二***模块1502发送预操作消息;
所述第二***模块1502,用于执行所述预操作消息所指示的预操作;
所述第一***模块1501,还用于响应于第二操作事件,向所述第二***模块1502发送应用启动消息,所述第一操作事件和所述第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,所述应用启动操作指从第一***模块1501启动第二***模块1502中目标应用的操作;
所述第二***模块1502,还用于启动所述应用启动消息所指示的所述目标应用。
可选的,所述第一***模块1501,用于:
在所述第二***模块1502处于休眠状态的情况下,响应于所述第一操作事件,向所述第二***模块1502发送预唤醒消息;
所述第二***模块1502,用于:
执行预唤醒操作。
可选的,所述第二***模块1502,还用于:
设置禁止休眠时长,其中,所述第二***模块1502在预唤醒后的所述禁止休眠时长内禁止进入休眠状态。
可选的,所述第一***模块1501,用于:
在所述第二***模块1502处于唤醒状态的情况下,响应于所述第一操作事件,向所述第二***模块1502发送预亮屏消息;
所述第二***模块1502,用于:
执行预亮屏操作。
可选的,所述应用启动操作为点击操作;
所述第一***模块1501,用于:
响应于触摸落下事件,向所述第二***模块1502发送所述预操作消息;
响应于触摸抬起事件,向所述第二***模块1502发送所述应用启动消息。
可选的,所述第一***模块1501,具体用于:
响应于所述触摸落下事件,且所述触摸落下事件对应的触摸区域与目标控件区域存在交集,向所述第二***模块1502发送所述预操作消息,所述目标控件区域为所述第一***模块1501的***界面中目标控件的显示区域,所述目标控件用于启动所述第二***模块1502中的所述目标应用;
响应于所述触摸抬起事件,向所述第二***模块1502发送所述应用启动消息,所述应用启动消息中包含所述目标应用的应用标识,且所述应用标识基于所述目标控件区域确定得到。
可选的,所述第二***模块1502,还用于:
在处于唤醒状态的情况下,向所述第一***模块1501发送控件更新消息,所述控件更新消息中包含所述目标控件的控件区域信息以及所述目标应用的应用标识;
所述第一***模块1501,用于存储所述控件区域信息和所述应用标识。
可选的,所述第二***模块1502,用于:
在处于唤醒状态的情况下,响应于界面切换操作,确定切换后***界面的控件布局信息,所述界面切换操作用于切换所述第一***模块1501的***界面;基于所述控件布局信息,向所述第一***模块1501发送所述控件更新消息;
在处于唤醒状态的情况下,响应于界面编辑操作,确定编辑后***界面的控件布局信息,所述界面编辑操作用于编辑所述第一***模块1501的***界面;基于所述控件布局信息,向所述第一***模块1501发送所述控件更新消息。
可选的,所述应用启动操作为按键操作;
所述第一***模块1501,用于:
响应于按键按下事件,向所述第二***模块1502发送所述预操作消息;
响应于按键抬起事件,向所述第二***模块1502发送所述应用启动消息,所述应用启动消息中包含所述目标应用的应用标识。
可选的,所述第一***模块1501,具体用于:
响应于所述按键抬起事件,基于所述按键操作的按压次数,向所述第二***模块1502发送所述应用启动消息,其中,不同按压次数对应不同应用。
可选的,所述应用启动操作为滑动操作;
所述第一***模块1501,用于:
响应于触摸滑动事件,向所述第二***模块1502发送所述预操作消息;
响应于触摸抬起事件,向所述第二***模块1502发送所述应用启动消息。
可选的,所述第一***模块1501,具体用于:
响应于所述触摸滑动事件,且滑动参数满足***切换条件,向所述第二***模块1502发送所述预操作消息。
可选的,所述第一***模块1501,具体用于:
响应于所述触摸滑动事件,且滑动方向为目标方向,且滑动距离大于距离阈值,向所述第二***模块1502发送所述预操作消息;
响应于所述触摸抬起事件,且所述滑动距离大于所述距离阈值,向所述第二***模块1502发送所述应用启动消息。
可选的,所述第一***模块1501的运行功耗低于所述第二***模块1502的运行功耗。
综上所述,本申请实施例中,对于支持双***的电子设备,在第一***处于唤醒状态的情况下,当接收到应用启动操作所触发的第一操作事件时,第一***向第二***发送预操作消息,指示第二***执行预 操作,并在接收到应用启动操作所触发的第二操作事件时,第一***向第二***发送应用启动消息,指示第二***启动目标应用;第一***基于持续性应用启动操作过程中先触发的第一操作事件指示第二***执行应用显示前所需执行的预操作,加速第二***接收到应用启动消息后启动目标应用的速度,有助于降低从第一***启动第二***中目标应用的应用启动延迟。
请参考图16,其示出了本申请一个示例性实施例提供的电子设备的结构方框图。本申请中的电子设备可以包括一个或多个如下部件:处理器1610和存储器1620。
可选的,处理器1610至少包括第一处理器1611和第二处理器1612,其中,第一处理器1611用于运行第一***,第二处理器1612用于运行第二***,且第一处理器1611的功耗低于第二处理器1612的功耗,第一处理器1611的性能低于第二处理器1612的性能。处理器1610利用各种接口和线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器1620内的指令、程序、代码集或指令集,以及调用存储在存储器1620内的数据,执行电子设备的各种功能和处理数据。可选地,处理器1610可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1610可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、神经网络处理器(Neural-network Processing Unit,NPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作***、用户界面和应用程序等;GPU用于负责触摸显示屏所需要显示的内容的渲染和绘制;NPU用于实现人工智能(Artificial Intelligence,AI)功能;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1610中,单独通过一块芯片进行实现。
存储器1620可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory,ROM)。可选地,该存储器1620包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1620可用于存储指令、程序、代码、代码集或指令集。存储器1620可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作***的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等;存储数据区可存储根据电子设备的使用所创建的数据(比如音频数据、电话本)等。
本申请实施例中的电子设备还包括通信组件1630和显示组件1640。其中,通信组件1630可以为蓝牙组件、无线局域网(Wireless Fidelity,Wi-Fi)组件、近场通信(Near Field Communication,NFC)组件等等,用于通过有线或无线网络与外部设备(服务器或其他终端设备)进行通信;显示组件1640用于进行图形用户界面展示,和/或,接收用户交互操作。
除此之外,本领域技术人员可以理解,上述附图所示出的电子设备的结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,电子设备中还包括射频电路、输入单元、传感器、音频电路、扬声器、麦克风、电源等部件,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,该存储介质存储有至少一段程序,至少一段程序用于被处理器执行以实现如上述实施例所述的应用启动方法。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中;电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述实施例提供的应用启动方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (20)

  1. 一种应用启动方法,所述方法用于电子设备,所述电子设备中支持运行第一***和第二***;
    所述方法包括:
    响应于第一操作事件,所述第一***向所述第二***发送预操作消息;
    所述第二***执行所述预操作消息所指示的预操作;
    响应于第二操作事件,所述第一***向所述第二***发送应用启动消息,所述第一操作事件和所述第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,所述应用启动操作指从所述第一***启动所述第二***中目标应用的操作;
    所述第二***启动所述应用启动消息所指示的所述目标应用。
  2. 根据权利要求1所述的方法,其中,所述响应于第一操作事件,所述第一***向所述第二***发送预操作消息,包括:
    在所述第二***处于休眠状态的情况下,响应于所述第一操作事件,所述第一***向所述第二***发送预唤醒消息;
    所述第二***执行所述预操作消息所指示的预操作,包括:
    所述第二***执行预唤醒操作。
  3. 根据权利要求2所述的方法,其中,所述方法还包括:
    所述第二***设置禁止休眠时长,其中,所述第二***在预唤醒后的所述禁止休眠时长内禁止进入休眠状态。
  4. 根据权利要求1所述的方法,其中,所述响应于第一操作事件,所述第一***向所述第二***发送预操作消息,包括:
    在所述第二***处于唤醒状态的情况下,响应于所述第一操作事件,所述第一***向所述第二***发送预亮屏消息;
    所述第二***执行所述预操作消息所指示的预操作,包括:
    所述第二***执行预亮屏操作。
  5. 根据权利要求1至4任一所述的方法,其中,所述应用启动操作为点击操作;
    所述响应于第一操作事件,所述第一***向所述第二***发送预操作消息,包括:
    响应于触摸落下事件,所述第一***向所述第二***发送所述预操作消息;
    所述响应于第二操作事件,所述第一***向所述第二***发送应用启动消息,包括:
    响应于触摸抬起事件,所述第一***向所述第二***发送所述应用启动消息。
  6. 根据权利要求5所述的方法,其中,
    所述响应于触摸落下事件,所述第一***向所述第二***发送所述预操作消息,包括:
    响应于所述触摸落下事件,且所述触摸落下事件对应的触摸区域与目标控件区域存在交集,所述第一***向所述第二***发送所述预操作消息,所述目标控件区域为所述第一***的***界面中目标控件的显示区域,所述目标控件用于启动所述第二***中的所述目标应用;
    所述响应于触摸抬起事件,所述第一***向所述第二***发送所述应用启动消息,包括:
    响应于所述触摸抬起事件,所述第一***向所述第二***发送所述应用启动消息,所述应用启动消息中包含所述目标应用的应用标识,且所述应用标识基于所述目标控件区域确定得到。
  7. 根据权利要求6所述的方法,其中,所述方法还包括:
    在所述第二***处于唤醒状态的情况下,所述第二***向所述第一***发送控件更新消息,所述控件更新消息中包含所述目标控件的控件区域信息以及所述目标应用的应用标识;
    所述第一***存储所述控件区域信息和所述应用标识。
  8. 根据权利要求7所述的方法,其中,所述在所述第二***处于唤醒状态的情况下,所述第二***向所述第一***发送控件更新消息,包括:
    在所述第二***处于唤醒状态的情况下,响应于界面切换操作,所述第二***确定切换后***界面的控件布局信息,所述界面切换操作用于切换所述第一***的***界面;所述第二***基于所述控件布局信息,向所述第一***发送所述控件更新消息;或,
    在所述第二***处于唤醒状态的情况下,响应于界面编辑操作,所述第二***确定编辑后***界面的控件布局信息,所述界面编辑操作用于编辑所述第一***的***界面;所述第二***基于所述控件布局信息,向所述第一***发送所述控件更新消息。
  9. 根据权利要求1至4任一所述的方法,其中,所述应用启动操作为按键操作;
    所述响应于第一操作事件,所述第一***向所述第二***发送预操作消息,包括:
    响应于按键按下事件,所述第一***向所述第二***发送所述预操作消息;
    所述响应于第二操作事件,所述第一***向所述第二***发送应用启动消息,包括:
    响应于按键抬起事件,所述第一***向所述第二***发送所述应用启动消息。
  10. 根据权利要求9所述的方法,其中,所述响应于按键抬起事件,所述第一***向所述第二***发送所述应用启动消息,包括:
    响应于所述按键抬起事件,所述第一***基于所述按键操作的按压次数,向所述第二***发送所述应用启动消息,其中,不同按压次数对应不同应用。
  11. 根据权利要求1至4任一所述的方法,其中,所述应用启动操作为滑动操作;
    所述响应于第一操作事件,所述第一***向所述第二***发送预操作消息,包括:
    响应于触摸滑动事件,所述第一***向所述第二***发送所述预操作消息;
    所述响应于第二操作事件,所述第一***向所述第二***发送应用启动消息,包括:
    响应于触摸抬起事件,所述第一***向所述第二***发送所述应用启动消息。
  12. 根据权利要求11所述的方法,其中,所述响应于触摸滑动事件,所述第一***向所述第二***发送所述预操作消息,包括:
    响应于所述触摸滑动事件,且滑动参数满足***切换条件,所述第一***向所述第二***发送所述预操作消息。
  13. 根据权利要求12所述的方法,其中,所述响应于所述触摸滑动事件,且滑动参数满足***切换条件,所述第一***向所述第二***发送所述预操作消息,包括:
    响应于所述触摸滑动事件,且滑动方向为目标方向,且滑动距离大于距离阈值,所述第一***向所述第二***发送所述预操作消息;
    所述响应于触摸抬起事件,所述第一***向所述第二***发送所述应用启动消息,包括:
    响应于所述触摸抬起事件,且所述滑动距离大于所述距离阈值,所述第一***向所述第二***发送所述应用启动消息。
  14. 根据权利要求1至4任一所述的方法,其中,所述第一***的运行功耗低于所述第二***的运行功耗。
  15. 一种应用启动装置,所述装置用于电子设备,所述电子设备中支持运行第一***和第二***;
    所述装置包括:
    第一***模块,用于响应于第一操作事件,向第二***模块发送预操作消息;
    所述第二***模块,用于执行所述预操作消息所指示的预操作;
    所述第一***模块,还用于响应于第二操作事件,向所述第二***模块发送应用启动消息,所述第一操作事件和所述第二操作事件为应用启动操作过程中不同操作阶段下先后触发的事件,所述应用启动操作指从第一***模块启动第二***模块中目标应用的操作;
    所述第二***模块,还用于启动所述应用启动消息所指示的所述目标应用。
  16. 根据权利要求15所述的装置,其中,所述第一***模块,用于:
    在所述第二***模块处于休眠状态的情况下,响应于所述第一操作事件,向所述第二***模块发送预唤醒消息;
    所述第二***模块,用于:
    执行预唤醒操作。
  17. 根据权利要求15所述的装置,其中,所述第二***模块,还用于:
    设置禁止休眠时长,其中,所述第二***模块在预唤醒后的所述禁止休眠时长内禁止进入休眠状态。
  18. 一种电子设备,所述电子设备包括处理器和存储器;所述存储器存储有至少一段程序,所述至少一段程序用于被所述处理器执行以实现如权利要求1至14任一所述的应用启动方法。
  19. 一种计算机可读存储介质,所述存储介质存储有至少一段程序,所述至少一段程序用于被处理器执行以实现如权利要求1至14任一所述的应用启动方法。
  20. 一种计算机程序产品,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中;电子设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令,使得所述电子设备实现如权利要求1至14任一所述的应用启动方法。
PCT/CN2022/129858 2021-12-21 2022-11-04 应用启动方法、装置、设备及存储介质 WO2023116236A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111573003.0 2021-12-21
CN202111573003.0A CN116302144A (zh) 2021-12-21 2021-12-21 应用启动方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
WO2023116236A1 true WO2023116236A1 (zh) 2023-06-29

Family

ID=86815418

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/129858 WO2023116236A1 (zh) 2021-12-21 2022-11-04 应用启动方法、装置、设备及存储介质

Country Status (2)

Country Link
CN (1) CN116302144A (zh)
WO (1) WO2023116236A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683977A (zh) * 2017-10-17 2019-04-26 腾讯科技(深圳)有限公司 目标应用的启动方法和装置
US20190369695A1 (en) * 2018-05-30 2019-12-05 Beijing Xiaomi Mobile Software Co., Ltd. Methods, electronic devices, and storage mediums for waking up an icon
CN112286667A (zh) * 2020-11-18 2021-01-29 安徽鸿程光电有限公司 应用程序控制方法、装置、电子设备及介质
CN112987986A (zh) * 2019-12-02 2021-06-18 Oppo广东移动通信有限公司 实现游戏应用的方法、装置、存储介质及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683977A (zh) * 2017-10-17 2019-04-26 腾讯科技(深圳)有限公司 目标应用的启动方法和装置
US20190369695A1 (en) * 2018-05-30 2019-12-05 Beijing Xiaomi Mobile Software Co., Ltd. Methods, electronic devices, and storage mediums for waking up an icon
CN112987986A (zh) * 2019-12-02 2021-06-18 Oppo广东移动通信有限公司 实现游戏应用的方法、装置、存储介质及电子设备
CN112286667A (zh) * 2020-11-18 2021-01-29 安徽鸿程光电有限公司 应用程序控制方法、装置、电子设备及介质

Also Published As

Publication number Publication date
CN116302144A (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
KR102148948B1 (ko) 전자 장치의 멀티 태스킹 방법 및 그 전자 장치
US11310646B2 (en) Bluetooth-based playback method and electronic device
WO2018219104A1 (zh) 省电控制方法及相关产品
CN106912089A (zh) 一种降低移动电子设备中的功耗的方法和装置
EP2759151A1 (en) Remote access to a mobile communication device over a wireless local area network (wlan)
WO2021109875A1 (zh) 实现游戏应用的方法、装置、存储介质及电子设备
WO2022262434A1 (zh) 一种功耗优化方法和电子设备
US20230324974A1 (en) Method for system switching, wearable device, and storage medium
CN114968375A (zh) ***切换方法和装置、电子设备、可读存储介质
WO2022218107A1 (zh) 数据传输方法、装置、设备及存储介质
US20240045702A1 (en) User interface display method and apparatus, device, and storage medium
CN110543333B (zh) 针对处理器的休眠处理方法、装置、移动终端和存储介质
US20230409355A1 (en) Method for displaying application interface, device, and storage medium
WO2023116236A1 (zh) 应用启动方法、装置、设备及存储介质
US10397390B2 (en) Communication event transfer method and apparatus, communication event processing method and apparatus, and terminal
WO2023116237A1 (zh) 界面显示方法、装置、设备、存储介质及程序产品
WO2023124554A1 (zh) 应用启动方法、装置、设备及存储介质
WO2024109290A1 (zh) 应用启动方法、装置、设备及存储介质
WO2023124622A1 (zh) 通信连接的维持方法、装置、设备、存储介质及程序产品
WO2023185152A1 (zh) 来电处理方法、装置、设备及存储介质
WO2024032140A1 (zh) 息屏显示方法、装置、设备及存储介质
WO2023236516A1 (zh) 语音识别方法、装置、设备及存储介质
WO2023138235A1 (zh) 主题切换方法、装置、设备、存储介质及程序产品
WO2022218106A1 (zh) 数据传输方法、装置、设备及存储介质
US20240214939A1 (en) Power consumption optimization method and electronic device

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: 22909553

Country of ref document: EP

Kind code of ref document: A1