WO2022242356A1 - 界面显示方法和设备 - Google Patents

界面显示方法和设备 Download PDF

Info

Publication number
WO2022242356A1
WO2022242356A1 PCT/CN2022/085707 CN2022085707W WO2022242356A1 WO 2022242356 A1 WO2022242356 A1 WO 2022242356A1 CN 2022085707 W CN2022085707 W CN 2022085707W WO 2022242356 A1 WO2022242356 A1 WO 2022242356A1
Authority
WO
WIPO (PCT)
Prior art keywords
event
interface
channel
operating system
registration information
Prior art date
Application number
PCT/CN2022/085707
Other languages
English (en)
French (fr)
Inventor
张柏雄
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022242356A1 publication Critical patent/WO2022242356A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications

Definitions

  • the embodiments of the present application relate to the field of terminals, and in particular, to an interface display method and device.
  • Embodiments of the present application provide an interface display method and device, which are used to enhance the richness of interface interaction, thereby improving user experience.
  • the present application provides an interface display method applied to an electronic device, the method comprising: displaying a first interface, the first interface includes a first area, and the first process corresponding to the first area is displayed The first interface is running; detecting the user's first sliding operation; in response to the user's first sliding operation at the first position in the first area, starting a second process based on the first process, and displaying A second interface associated with the second process.
  • the method further includes: detecting a second sliding operation of the user, and displaying a process related to the first process in response to the second sliding operation of the user at a second position in the first area.
  • An associated third interface wherein the first location is located in a first subarea of the first area, and the second location is located in a second subarea of the first area.
  • the starting the second process based on the first process includes: after detecting the first sliding operation, the electronic device distributes an event corresponding to the first sliding operation to all The first process; the first process starts the second process according to the information of the first position; the electronic device distributes the event corresponding to the first sliding operation to the second process.
  • the first sub-area and the second sub-area correspond to different components
  • the starting the second process based on the first process includes: after detecting the first sliding operation , the electronic device distributes the event corresponding to the first sliding operation to the first process; the electronic device starts the second process based on the response of the component corresponding to the first sub-area, and sends the The event corresponding to the first sliding operation is distributed to the second process.
  • the starting the second process based on the first process includes: after detecting the first sliding operation, the electronic device distributes an event corresponding to the first sliding operation to all The first process; the first process starts the second process; the electronic device distributes an event corresponding to the first sliding operation to the second process.
  • the distributing the event corresponding to the first sliding operation to the second process includes: forwarding the event corresponding to the first sliding operation to the second process.
  • the distributing the event corresponding to the first sliding operation to the second process includes: judging whether the second process is an event receiving event according to an event channel list and an event forwarding list. process; if yes, distribute the event corresponding to the first sliding operation to the second process.
  • the judging whether the second process is an event-receiving process according to the event channel list and the event forwarding list includes: searching for the event corresponding to the first process in the event channel list channel; searching the registration information of the first process in the event forwarding list; judging whether the second process is the one receiving the event according to the search result in the event channel list and the search result in the event forwarding list process.
  • the judging whether the second process is an event-receiving process according to the search result in the event channel list and the search result in the event forwarding list includes: if in the If the registration information of the second process can be found in the event forwarding list, it is judged whether the event to be forwarded in the registration information is a touch screen event, and the event channel found in the event channel list and the registered event channel are judged.
  • the second process is the process that receives the event; if the registration information of the second process cannot be found in the event forwarding list, or the registration information of the second process can be found but the registration information is pending If the forwarded event is not a touch screen event, or the registration information of the second process can be found but the event channel found in the event channel list does not match the original event channel in the registration information, then it is determined that the second process The second process is not the process receiving the event.
  • the method further includes: after the first process receives the startup success message sent by the second process, register event forwarding with the operating system of the electronic device, so that the operation The system adds the registration information of the first process to the event forwarding list.
  • the registering event forwarding with the operating system of the electronic device includes: the first process sends a registration instruction to the operating system, and the registration instruction carries an event identifier to be forwarded, an original event channel identifier and the identifier of the second process; the operating system determines the event to be forwarded registered by the first process according to the identifier of the event to be forwarded; the operating system determines the event to be forwarded according to the original event channel identifier The original event channel registered by the first process; the operating system queries the event channel corresponding to the second process from the event channel list according to the identifier of the second process, and sends the event channel corresponding to the second process The channel serves as the target event channel registered by the first process.
  • the event corresponding to the first sliding operation includes a lift event
  • the method further includes: after the first process receives the lift event, sending A deregistration instruction; after receiving the deregistration instruction, the operating system deletes the registration information of the first process from the event forwarding list.
  • the first area is a desktop notification bar area
  • the first process is a process corresponding to the desktop notification bar area
  • the second interface is a page including multiple service components
  • the multiple service components can provide information of multiple different applications or multiple different services
  • the multiple service components are Components that the user can interact with.
  • the third interface is an interface for displaying a control panel, and/or, a control panel.
  • the present application provides an electronic device, including: a memory and a processor, the memory is used to store executable instructions, and when the executable instructions are executed by the processor, the electronic device implements the first aspect provided method.
  • the present application provides a readable storage medium, on which a computer program is stored; when the computer program is executed, the method provided in the first aspect above is implemented.
  • the interface display method and device provided in the embodiments of the present application display a first interface, the first interface includes a first area, and the first process corresponding to the first area runs when the first interface is displayed; in response to the user entering the first area
  • the first sliding operation of the first position of the first process starts the second process based on the first process, and displays the second interface associated with the second process.
  • FIG. 1 is a diagram of an application scenario provided by an embodiment of the present application
  • Fig. 2 is the interactive diagram 1 provided by the embodiment of the present application.
  • Fig. 3 is the interactive diagram 2 provided by the embodiment of the present application.
  • Fig. 4 is the event distribution flowchart 1 provided by the embodiment of the present application.
  • FIG. 5 is a first frame diagram of an electronic device provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of an event channel list provided by an embodiment of the present application.
  • FIG. 7 is a first schematic diagram of the input module provided by the embodiment of the present application.
  • Figure 8 is the second flow chart of event distribution provided by the embodiment of this application.
  • FIG. 9 is a schematic diagram of an event forwarding list provided by an embodiment of the present application.
  • FIG. 10 is the second frame diagram of the electronic device provided by the embodiment of the present application.
  • FIG. 11 is a second schematic diagram of the input module provided by the embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of an electronic device 100 provided by an embodiment of the present application.
  • FIG. 13 is a block diagram of the software structure of the electronic device 100 provided by the embodiment of the present application.
  • the display interface of the control center shown in FIG. 1 includes a wireless local area network (WLAN) Area Networks, WLAN), mobile data and bluetooth and other shortcut switches
  • WLAN wireless local area network
  • Figure 1 is just an example, in other embodiments, the display interface of the control center can be different from Figure 1, the embodiment of the present application is not limited to this.
  • this interaction method is relatively simple, and the user experience is not high.
  • the embodiment of the present application provides an interactive method, which further divides the window 10 at the top of the screen into: the left window 101 at the top of the screen and the window 102 at the top right of the screen.
  • FIG. 3 slide the finger down from the window 102 on the top right side of the screen, which improves the richness of interface interaction.
  • the window in the embodiment of the present application may also be referred to as an area, and the embodiment of the present application uses the window as an example for illustration.
  • the window 10 at the top of the screen can be the desktop notification bar area.
  • the display interface of the control center may be referred to as displaying a control panel, and/or an interface of the control panel.
  • FIG. 3 is the display interface of the service center.
  • other interfaces can be opened by sliding a finger down from the window 102 on the top right of the screen, which is not limited in this embodiment of the present application.
  • the display interface of the service center may be a page including multiple service components, the multiple service components may provide information of multiple different applications or multiple different services, and the multiple service components are user-interactable components.
  • the display interface of the service center shown in Figure 3 includes two services, "Recently Used" and "My Favorites". One service includes live broadcast, nearby food, etc.
  • the display interface of the service center shown in FIG. 3 is only an example. In other embodiments, the display interface of the service center may be different from that in FIG. 3 , which is not limited in this embodiment of the present application.
  • the interaction method can also be: slide the finger down from the window 101 on the top left of the screen to open the display interface of the service center, and slide down from the window 102 on the top right of the screen to open the display interface of the control center.
  • the window 20 at the bottom of the screen is further divided into: the left window 201 at the bottom of the screen and the right window 202 at the bottom of the screen. Swipe up to open the display interface of the service center; or slide your finger up from the left window 201 at the bottom of the screen to open the display interface of the service center, and slide up from the right window 202 at the bottom of the screen to open the display interface of the control center.
  • the interaction method may be: slide your finger from the window 301 on the left of the screen to the right to open the display interface of the control center, slide your finger from the window 302 on the right of the screen to the left to open the display interface of the service center; or slide your finger from the window 301 on the left of the screen to the Swipe right to open the display interface of the service center, and slide your finger from the window 302 on the right of the screen to the left to open the display interface of the control center.
  • the solution of the embodiment of the present application is described by taking the interaction mode shown in FIG. 2 and FIG. 3 as an example.
  • the user may perform the operations illustrated in FIG. 2 or FIG. 3 when the electronic device displays the first interface.
  • the first interface may be a desktop or an interface in any application program, and this embodiment of the present application does not limit the first interface.
  • the electronic device includes two processes, namely a notification bar process and a service center process, the notification bar process is associated with the display interface of the control center, and the service center process is associated with the display interface of the service center.
  • Window 10 at the top of the screen corresponds to a view component in the notification bar process.
  • the view component judges whether the user's finger slides down from the left window 101 at the top of the screen or from the window 102 at the top of the screen. If it slides down from the window 101 at the top of the screen, the control center The display interface is used to make the electronic device display the display interface of the control center. If you slide down from the right window 102 at the top of the screen, the service center process is started, so that the service center process draws the display interface of the service center, so that the electronic device displays the display interface of the service center.
  • the window 10 at the top of the screen is also called the first area
  • the window 10 at the top of the screen corresponds to the notification bar process
  • the notification bar process is also called the first process.
  • the notification bar process runs when the electronic device displays the first interface.
  • the service center process is also referred to as the second process.
  • the window 101 on the top left of the screen is also called the first sub-area of the first area
  • the display interface of the service center is also called the second interface
  • the display interface of the control center is also called the third interface.
  • the second implementation mode the electronic device includes two processes, respectively a notification bar process and a service center process, the notification bar process is associated with the display interface of the control center, and the service center process is associated with the display interface of the service center.
  • the left window 101 at the top of the screen corresponds to a view component of the notification bar process.
  • this view component is simply referred to as the first view component.
  • the window 102 on the top right of the screen corresponds to another view component of the notification bar process.
  • This view component is referred to as the second view component for short.
  • the first view component draws the display interface of the control center, so that the electronic device displays the display interface of the control center.
  • the second view component starts the service center process, so that the service center process draws the display interface of the service center, so that the electronic device displays the display interface of the service center.
  • the window 10 at the top of the screen is also called the first area
  • the window 10 at the top of the screen corresponds to the notification bar process
  • the notification bar process is also called the first process.
  • the notification bar process runs when the electronic device displays the first interface.
  • the service center process is also referred to as the second process.
  • the window 101 on the top left of the screen is also called the first sub-area of the first area
  • the window 102 on the top right of the screen is also called the second sub-area of the first area. Any position in the window 102 on the top right of the screen is also referred to as the first position. Any position in the top left window 101 of the screen is also referred to as the second position.
  • the display interface of the service center is also called the second interface
  • the display interface of the control center is also called the third interface.
  • the electronic device includes three processes, namely a notification bar process, a service center process and an intermediate process.
  • the process of the notification bar is associated with the display interface of the control center
  • the process of the service center is associated with the display interface of the service center.
  • the left window 101 at the top of the screen corresponds to a view component of the notification bar process.
  • this view component is referred to as the third view component for short.
  • the window 102 on the top right of the screen corresponds to a view component of the intermediate process.
  • the The view component is referred to as the fourth view component for short.
  • the third view component draws the display interface of the control center, so that the electronic device displays the display interface of the control center.
  • the fourth view component starts the service center process, so that the service center process draws the display interface of the service center, so that the electronic device displays the display interface of the service center.
  • the window 102 at the top right of the screen is also called the first area, and the window 102 at the top right of the screen corresponds to an intermediate process, and the intermediate process is also called the first process.
  • the intermediate process runs when the electronic device displays the first interface.
  • the service center process is also referred to as the second process.
  • Any position in the window 102 on the top right of the screen is also referred to as the first position.
  • Sliding the finger down from the top right window 102 of the screen is called the first sliding operation at the first position, and any position in the left window 101 at the top of the screen is also called the second position.
  • Sliding the finger down from the top left window 101 of the screen is referred to as the second sliding operation at the second position.
  • the fourth implementation mode the electronic device includes two processes, which are respectively the notification bar process and the service center process.
  • the left window 101 at the top of the screen corresponds to a view component of the notification bar process.
  • the view component is simply referred to as the fifth
  • the window 102 on the top right of the screen corresponds to a view component of the service center process.
  • this view component is referred to as the sixth view component.
  • the embodiment of the present application describes the first implementation manner in detail.
  • the notification bar process can be resident, that is, the notification bar process is automatically started after the electronic device is turned on.
  • the operation of pressing a finger on the screen in this embodiment of the application is referred to simply as a press operation.
  • the operating system After the electronic device receives the press operation, the operating system will generate a touch screen event corresponding to the press operation.
  • the touch screen event is referred to as a press event.
  • the operation of moving a finger on the screen is referred to as a move operation for short.
  • the operating system After the electronic device receives the move operation, the operating system will generate a touch screen event corresponding to the move operation.
  • the touch screen event is called for mobile events.
  • the operation of lifting the finger from the screen is referred to as the lift operation.
  • the operating system After the electronic device receives the lift operation, the operating system will generate a touch screen event corresponding to the lift operation.
  • the Touch events are called lift events.
  • FIG. 4 is the first flow chart of event distribution provided by the embodiment of the present application. Specifically include:
  • the operating system sends a press event to the first process.
  • the press event carries the coordinates of the press operation
  • the operating system can determine the window where the press operation is located according to the coordinates of the press operation, and send the press event to the process corresponding to the window.
  • the press event can be sent to the process corresponding to the window 10 at the top of the screen, that is, the first process.
  • the first process After the first process receives the press event, it sends the press event to the view component corresponding to the window 10 at the top of the screen, and the view component judges whether the press operation is in the left window 101 at the top of the screen or the window at the top right of the screen according to the coordinates of the press operation 102. If it is in the left window 101 at the top of the screen, draw the display interface of the control center according to the movement event and the lift event after receiving the move event and the lift event. If it is in the top right window 102 of the screen, execute S402.
  • the second process sends a startup success message to the first process.
  • the first process sends a service binding request to the second process.
  • the second process feeds back a binding success message to the first process.
  • the operating system sends the movement event to the first process.
  • the operating system Since the pressing operation, moving operation and lifting operation occur continuously, after the operating system sends the pressing event to a certain process, it will also send the moving event to the process. In the scenario shown in Figure 3, the operating system will press If the next event is sent to the first process, the move event is also sent to the first process directly.
  • each movement will trigger the operating system to generate a movement event, and each time the operating system generates a movement event, it will send the movement event to the first process.
  • the movement event will not be forwarded to the second process.
  • the second process feeds back a startup success message to the first process, and after the first process receives the movement event i-1, due to At this time, the start success message fed back by the second process has not been received, so the mobile event i-1 will not be forwarded to the second process, and after receiving the mobile event i, since the second process feedback has been received at this time The startup success message of , so the mobile event i will be forwarded to the second process.
  • the second process since the second process has not received the movement event i-1 and the movement events before the movement event i-1, the second process cannot respond to these movement events.
  • the movement event carries the coordinates after the finger moves, and after receiving the first movement event, the second process draws the first frame interface according to the coordinates carried by the first movement event; the second movement event received Finally, draw the second frame interface according to the coordinates carried by the second movement event; after receiving the nth movement event, draw the Nth frame interface according to the coordinates carried by the nth movement event, so as to realize follow-up Effect.
  • the operating system sends the lifting event to the first process.
  • the operating system sends the press event to a certain process, it will also send the lift event to the process.
  • the operating system sends the press event to the first process, and then directly A lift event is also sent to the first process.
  • the first process forwards the lifting event to the second process.
  • the first process will forward the lift event to the second process only after receiving the startup success message fed back by the second process.
  • the second process draws the entire interface or closes the second process according to the lifting event.
  • the lift event carries the coordinates of the lift operation
  • the second process can determine the moving distance of the finger according to the coordinates carried in the press event and the coordinates carried in the lift event. If the value is set, the entire interface is drawn, and if the preset value is not reached, the second process is closed.
  • the lift event may not carry coordinates, and the second process directly draws the entire interface after receiving the lift event.
  • the first process can judge that the press event is handled by the first view component according to the coordinates of the press operation The press event is still handled by the second view component. If it is judged that the press event is handled by the first view component, the press event is sent to the first view component. After receiving the move event and lift event , will also send the move event and lift event to the first view component, and the first view component draws the display interface of the control center according to the move event and lift event.
  • the press event is sent to the second view component, and the second view component executes S402 after receiving the press event, and the subsequent steps are all implemented as shown in Figure 4 Similar to the example, the embodiment of the present application will not be repeated here.
  • the first process after the first process receives the press event, it sends the press event to the fourth view component, and the fourth view component does not need to judge whether the press operation is in the left window 101 at the top of the screen or the window at the top right of the screen 102. Just execute S402 directly.
  • the operating system directly sends the press event, move event, and lift event to the second process, and the second process sends the press event, move event, and lift event to the sixth view component.
  • the six-view component draws the display interface of the service center according to the move event and lift event.
  • the time delay for the first process to start the second process is 200ms
  • the time delay for the first process to bind the service of the second process is 150ms
  • the time delay for the first process to forward the mobile event to the second process is 50ms
  • the delay of the first frame interface drawn by the second process is 100ms, that is, the end-to-end delay of the above embodiment is 500ms. If the delay is too long, it will cause the user to feel untimely, discontinuous and have a low sense of control. , the user experience is not high.
  • the event distribution method shown in FIG. 4 can be applied to the electronic device shown in FIG. 5 , and the electronic device includes: a hardware input device, an operating system, and an application process.
  • the hardware input device may include: a screen, a keyboard, a mouse and/or a game controller.
  • the operating system includes: device nodes and input modules.
  • the application process includes a first process and a second process.
  • Device nodes include nodes created by the operating system for each hardware input device.
  • device node 1 is used to represent the node created by the operating system for the screen
  • device node 2 is used to represent the node created by the operating system for the keyboard
  • device node 3 is used to represent the operation
  • the node created by the system is the mouse
  • the device node 4 is used to represent the node whose operating system is the gamepad.
  • the input module is used to monitor whether each node has readable data, and if so, read the data, analyze and process the data, and generate a touch screen event.
  • the user interacts with the electronic device through the screen as an example to illustrate the solution of the embodiment of the application.
  • the user can also interact with the electronic device through the keyboard, mouse and/or gamepad.
  • the event The distribution method is similar to the embodiment of the present application, and will not be repeated here in the embodiment of the present application.
  • the screen When the user performs a press operation, the screen will send a hardware interrupt to device node 1.
  • the hardware interrupt instructs the user to press the finger on the screen.
  • the hardware interrupt carries the coordinates of the press operation.
  • device node 1 After receiving the hardware interrupt, device node 1 will The hardware interrupt is processed into an original press event, and the original press event is written into device node 1.
  • the input module reads the original press event from device node 1, and parses and processes the original press event to generate a press event.
  • the input module is also used to determine the window where the press operation is located according to the coordinates of the press operation, and send the press event to the process corresponding to the window.
  • the press event may be sent to the process corresponding to the window at the top of the screen, that is, the first process.
  • the screen When the user performs a movement operation, similarly, the screen will send a hardware interrupt to device node 1, which indicates that the user's finger moves on the screen.
  • the hardware interrupt carries the moved coordinates.
  • the input module reads the original movement event from the device node 1, and analyzes and processes the original movement event to generate a movement event. It should be noted that the finger moves continuously, and each movement will trigger the screen to send a hardware interrupt to device node 1, causing the input module to generate a movement event.
  • the screen When the user performs a lifting operation, similarly, the screen will send a hardware interrupt to device node 1, which instructs the user to lift his finger from the screen.
  • the hardware interrupt can carry the coordinates of the lifting operation, and device node 1 receives the hardware interrupt.
  • the hardware interrupt is processed into an original lift event, and the original lift event is written into device node 1.
  • the input module reads the original lift event from device node 1, and analyzes and processes the original lift event to generate a lift event.
  • the event channel is a medium for the input module to distribute events to each process.
  • the input module stores an event channel list, and the event channel list includes the event channels registered with the input module when each process starts.
  • the input module determines to send the press event to the first process, it finds the event channel corresponding to the first process in the event channel list, and sends the press event to the first process through the event channel.
  • the move event is similar to the lift event, and will not be described in this embodiment of the present application.
  • FIG. 6 shows a possible form of the event channel list.
  • event channel 1 is used to represent the event channel registered with the operating system when the first process starts
  • event channel 2 is used to represent the event channel registered with the operating system when the second process starts.
  • the input module in Figure 5 can be the input management service (InputManagerService, IMS) in the system service (System Server) process.
  • the System Server process also includes the window management service (WindowManagerService, WMS).
  • WMS includes a window stack (Window Stack), and the information of all windows is recorded in the Window Stack, and the window information can include window coordinates.
  • IMS includes input dispatcher module (InputDispatcher), and InputDispatcher includes: input window handle (InputWindowHandle) and event channel list (InputChannel) for interacting with Window Stack.
  • the input module has the following function: according to the coordinates of the pressed operation, determine the window where the pressed operation is located. The following describes how to implement the above functions through the architecture shown in Figure 7:
  • InputWindowHandle queries which window the coordinates of the pressed operation fall in based on the coordinates of the pressed operation and the information of all windows recorded in the Window Stack, and uses the queried window as the window where the pressed operation is located. Combined with the scene shown in FIG. 3 , according to the coordinates of the press operation, it can be found that the window at the top of the screen is the window where the press operation is located.
  • FIG. 8 is the second flow chart of event distribution provided by the embodiment of the present application. Specifically include::
  • the operating system sends a press event to the first process.
  • the first process sends an activation instruction to the second process.
  • the second process sends a startup success message to the first process.
  • the first process may register event forwarding with the operating system in the following manner:
  • the first process sends a registration instruction to the operating system, and the registration instruction carries an identifier of the event to be forwarded, an identifier of the original event channel, and an identifier of the second process.
  • the operating system determines the event to be forwarded registered by the first process according to the event ID to be forwarded, determines the original event channel registered by the first process according to the original event channel ID, and queries from the event channel list according to the second process ID
  • the event channel corresponding to the second process uses the event channel corresponding to the second process as the target event channel registered by the first process.
  • the operating system further adds the registration information of the first process to the event forwarding list.
  • the second process identifier can be the package name of the second process, the ID of the second process, or other parameters that can uniquely identify the second process, which is not discussed in this embodiment of the present application. limited.
  • FIG. 9 shows a possible form of the event forwarding list.
  • the event to be forwarded registered by the first process is a touch screen event
  • the original event channel registered by the first process is event channel 1.
  • the target event channel registered by a process is event channel 2.
  • the event to be forwarded registered by process 2 is a touch screen event
  • the original event channel registered by process 2 is event channel 3
  • the target event channel registered by process 2 is event channel 4
  • the event to be forwarded registered by process 3 is a touch screen event
  • process 3 The registered original event channel is event channel 5, and the target event channel registered by process 2 is event channel 6.
  • the first process registers event forwarding with the operating system at an appropriate time.
  • the first process registers an event with the operating system only after receiving the startup success message fed back by the second process. Forward.
  • the first process will unregister the event forwarding with the operating system at an appropriate time, so that the operating system will delete the first process and the registration information of the first process in the event forwarding list, so that the event forwarding registration will not affect the first process in other scenarios.
  • the first process and the response of the second process In the embodiment of the present application, after receiving the lift event, the first process forwards the deregistration event to the operating system.
  • the operating system determines a process of receiving the mobile event according to the event channel list and the event forwarding list.
  • the receiving process of the mobile event may be determined in the following manner:
  • the operating system After the operating system generates a mobile event, it first searches the event channel corresponding to the first process from the event channel list, and then searches the registration information of the first process in the event forwarding list. If the registration information of the first process can be found, further judge the registration information Whether the event to be forwarded is a touch screen event, and judge whether the event channel found in the event channel list and the original event channel in the registration information can match, if the event to be forwarded is a touch screen event and the event found in the event channel list If the channel matches the original event channel in the registration information, it is determined that both the first process and the second process are receiving processes of the mobile event, and then S807 is executed.
  • the registration information of the first process cannot be found in the event forwarding list, or the registration information of the first process can be found but the event to be forwarded in the registration information is not a touch screen event, or the registration information of the first process can be found but the event If the event channel found in the channel list does not match the original event channel in the registration information, it is determined that the first process is the receiving process of the mobile event.
  • the operating system After the operating system generates the mobile event, it finds that the event channel corresponding to the first process is event channel 1 from the event channel list shown in Figure 6, and then searches for the registration information of the first process from the event forwarding list shown in Figure 9, because the first process If the event to be forwarded in the registration information of a process is a touch screen event, and the original event channel is also event channel 1, it can be determined that both the first process and the second process are receiving processes of mobile events.
  • the finger moves continuously, and each movement will trigger the operating system to generate a movement event. After each movement event is generated by the operating system, the above method can be used to determine whether to receive the movement event. The event receiving process.
  • the operating system sends the movement event to the first process and the second process.
  • the operating system can send the movement event to the first process through the original event channel, and send the movement event to the second process through the target event channel.
  • the first process does not perform any processing upon receiving the movement event.
  • the second process executes S808 after receiving the movement event.
  • the second process draws the interface at the finger position according to the movement event.
  • the movement event carries the coordinates after the finger moves, and after receiving the first movement event, the second process draws the first frame interface according to the coordinates carried by the first movement event; the second movement event received Finally, draw the second frame interface according to the coordinates carried by the second movement event; after receiving the nth movement event, draw the Nth frame interface according to the coordinates carried by the nth movement event, so as to realize follow-up Effect.
  • the operating system determines the receiving process of the lift event according to the event channel list and the event forwarding list.
  • the receiving process of the lift event can be determined as follows:
  • the operating system After the operating system generates a lift event, it first searches the event channel corresponding to the first process from the event channel list, and then searches the registration information of the first process in the event forwarding list. If the registration information of the first process can be found, further judge the registration Whether the event to be forwarded in the information is a touch screen event, and judge whether the event channel found in the event channel list and the original event channel in the registration information can match, if the event to be forwarded is a touch screen event and found in the event channel list If the event channel and the original event channel in the registration information can be matched, it is determined that both the first process and the second process are receiving processes of the lifting event, and then execute S8010.
  • the registration information of the first process cannot be found in the event forwarding list, or the registration information of the first process can be found but the event to be forwarded in the registration information is not a touch screen event, or the registration information of the first process can be found but the event If the event channel found in the channel list does not match the original event channel in the registration information, the first process is determined to be the receiving process of the raised event.
  • the operating system sends the lifting event to the first process and the second process.
  • the operating system can send the lift event to the first process through the original event channel, and send the lift event to the second process through the target event channel.
  • the first process forwards the deregistration event to the operating system.
  • the first process may deregister event forwarding with the operating system in the following manner:
  • the first process may send a deregistration instruction to the operating system, and the operating system deletes the first process and the registration information of the first process in the event forwarding list after receiving the deregistration instruction.
  • the lift event carries the coordinates of the lift operation
  • the second process can determine the moving distance of the finger according to the coordinates carried in the press event and the coordinates carried in the lift event. If the value is set, the entire interface is drawn, and if the preset value is not reached, the second process is closed.
  • the lift event may not carry coordinates, and the second process directly draws the entire interface after receiving the lift event.
  • the application process when it receives a press event, it will determine which view component of the interface to handle the press event.
  • the view component of the interface includes at least one of the following: View, ViewGroup or Activity; once After the view component is determined, subsequent move events and lift events are handed over to the view component for processing.
  • the second process has not received the press event before receiving the move event, so it does not know which view component should handle the move event and lift event.
  • the second process receives the move event and lift event, it directly converts the move event and lift event The event can be handed over to the view component for processing.
  • an interface for registering event receivers can be designed in the second process, and a view component can be specified through the interface to handle the move event and lift event received by the second process when the second process starts.
  • the operating system can also add a forwarding tag to the moving event and the pressing event.
  • the second process receives the event sent by the operating system, it checks whether the event is tagged with a forwarding tag. If the event is tagged with a forwarding tag , then hand it over to the specified view component for processing.
  • the event distribution method shown in FIG. 8 can be applied to the electronic device shown in FIG. 10 , and the electronic device includes: a hardware input device, an operating system, and an application process.
  • the hardware input device may include: a screen, a keyboard, a mouse and/or a game controller.
  • the operating system includes: device nodes and input modules.
  • the application process includes a first process and a second process. The functions of each module in FIG. 10 are similar to those in FIG. 5 , and will not be repeated in this embodiment of the present application.
  • the input module includes an event forwarding sub-module 1001 .
  • the second process includes an interface 1002 for registering event receivers.
  • the event forwarding sub-module 1001 is configured to receive the registration instruction sent by the first process, determine the registration information of the first process according to the registration instruction, and add the registration information of the first process to the event forwarding list.
  • the detailed process refer to the steps of the operating system in S805, which will not be repeated in this embodiment of the present application.
  • the input module is used to determine the receiving process of the mobile event according to the event channel list and the event forwarding list.
  • the mobile event is sent to the first process and the second process.
  • the steps of the operating system in S806-S807 which will not be repeated in this embodiment of the present application.
  • the second process is used to draw the interface at the position of the finger according to the movement event.
  • S808 For the detailed process, refer to the introduction of S808, which will not be repeated in this embodiment of the present application.
  • the input module is also used to determine the receiving process of the lifting event according to the event channel list and the event forwarding list.
  • the lifting event is sent to the first process and the second process. second process.
  • the detailed process refer to the steps of the operating system in S809-S8010, which will not be repeated in this embodiment of the present application.
  • the first process is configured to unregister and forward the event to the operating system after receiving the lift event.
  • S8011 For the detailed process, refer to the introduction of S8011, which will not be repeated here in this embodiment of the application.
  • the second process is also used to draw the entire interface or close the second process according to the lifting event.
  • S8012 which will not be repeated here in this embodiment of the application.
  • the interface 1002 for registering event receivers is used to designate a view component for processing events received by the second process when the second process starts.
  • the input module in FIG. 10 can be an input management service (InputManagerService, IMS) in a system service (System Server) process.
  • the System Server process also includes the window management service (WindowManagerService, WMS).
  • WMS includes a window stack (Window Stack), and the information of all windows is recorded in the Window Stack, and the window information can include window coordinates.
  • IMS includes an input dispatcher module (InputDispatcher), and InputDispatcher includes: an input window handle (InputWindowHandle) and an event channel list (InputChannel) for interacting with Window Stack.
  • the event forwarding sub-module 1001 is an input forwarding module (Input Forwarding).
  • WMS, Window Stack, and InputChannel are similar to the embodiment shown in FIG. 5 , and will not be repeated in this embodiment of the present application.
  • the Input Forwarding function is similar to the event forwarding sub-module 1001 in FIG. 10 , and will not be repeated in this embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of an electronic device 100 applicable to this application. As shown in FIG. . It can be understood that the structure shown in this embodiment does not constitute a specific limitation on the electronic device 100 . In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine certain components, or separate certain components, or arrange different components. The illustrated components can be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, display processing unit (display process unit, DPU), and/or neural network processor (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • the electronic device 100 may also include one or more processors 110 .
  • the controller may be the nerve center and command center of the electronic device 100 .
  • the controller can generate an operation control signal according to the instruction opcode and timing signal, and complete the control of fetching and executing the instruction.
  • a memory may also be provided in the processor 110 for storing instructions and data.
  • the memory in processor 110 is a cache memory.
  • the memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instruction or data again, it can be called directly from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the electronic device 100 system.
  • the electronic device 100 can implement a display function through the GPU, the display screen 130 , and the application processor.
  • the GPU is a microprocessor for image processing, and is connected to the display screen 130 and the application processor. GPUs are used to perform mathematical and geometric calculations for graphics rendering.
  • Processor 110 may include one or more GPUs that execute instructions to generate or alter display information.
  • the display screen 130 is used to display images, videos and the like.
  • the display screen 130 includes a display panel.
  • the display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active matrix organic light emitting diode or an active matrix organic light emitting diode (active-matrix organic light emitting diode, AMOLED), flexible light-emitting diode (flex light-emitting diode, FLED), Miniled, MicroLed, Micro-oLed, quantum dot light emitting diodes (quantum dot light emitting diodes, QLED), etc.
  • the electronic device 100 may include 1 or N display screens 130 , where N is a positive integer greater than 1.
  • the touch sensor 120 may also be called a touch panel or a touch-sensitive surface.
  • the touch sensor 120 may be disposed on the display screen 130, and the touch sensor 120 and the display screen 130 form a touch screen, also called a touch screen.
  • the touch sensor 120 is used to detect a touch operation on or near it.
  • the touch sensor 120 may transmit the detected touch operation to the application processor to determine the type of the touch event.
  • Visual output related to the touch operation can be provided through the display screen 130 .
  • the touch sensor 120 may also be disposed on the surface of the electronic device 100 , which is different from the position of the display screen 130 .
  • Keyboard 140, mouse 150, gamepad 160 and touch sensor 120 are used to send hardware interrupts to corresponding nodes.
  • the touch sensor 120 when the user performs a press operation on the touch screen, the touch sensor 120 is used to send a hardware interrupt to the corresponding node, the hardware interrupt instructs the user to press the finger on the touch screen, and the hardware interrupt carries the coordinates of the press operation .
  • the touch sensor 120 When the user performs a moving operation on the touch screen, the touch sensor 120 is used to send a hardware interrupt to the corresponding node, the hardware interrupt indicates that the user's finger moves on the touch screen, and the hardware interrupt carries the moved coordinates.
  • the touch sensor 120 When the user performs a lifting operation on the touch screen, the touch sensor 120 is used to send a hardware interrupt to the corresponding node, the hardware interrupt instructs the user to lift the finger from the touch screen, and the hardware interrupt may carry coordinates of the lifting operation.
  • FIG. 13 is a block diagram of the software structure of the electronic device 100 according to the embodiment of the present application.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate through software interfaces.
  • the Android system is divided into four layers, which are application program layer, application program framework layer, system library, and kernel layer from top to bottom.
  • the application layer can consist of a series of application packages. As shown in Figure 13, applications such as camera, gallery, calendar, call, map, navigation, bluetooth, music, video, and short message can be installed in the application layer.
  • the application layer includes a first process and a second process.
  • the first process is configured to receive a press event, and after receiving the press event, send a start instruction to the second process. It is further configured to send a service binding request to the second process after receiving the startup success message fed back by the second process, and forward the mobile event to the second process after receiving the startup success message fed back by the second process.
  • the second process is used to draw the interface at the position of the finger according to the movement event.
  • the first process is also used to forward the lift event to the second process.
  • the second process is also used to draw the entire interface or close the second process according to the lifting event.
  • the first process is configured to receive a press event, and after receiving the press event, send a start instruction to the second process. It is further configured to forward the registration event to the IMS after receiving the startup success message fed back by the second process. It is also used to forward the de-registration event to the IMS after receiving the lift event.
  • the second process is used to draw the interface at the finger position according to the movement event. Also used to draw the entire interface or close the second process based on the lift event.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer may include an input manager service (IMS).
  • IMS input manager service
  • the application framework layer can also include display policy service, power manager service (power manager service, PMS), display manager service (display manager service, DMS), activity manager, window manager, content provider, view system , a phone manager, a resource manager, a notification manager, etc., which are not limited in this embodiment of the present application.
  • the IMS in combination with the scene shown in FIG. 3 , since the press operation is on the top right window of the screen, the IMS sends the press event to the process corresponding to the top right window of the screen, that is, the first process. Since the pressing operation, moving operation and lifting operation occur continuously, after the IMS sends the pressing event to a certain process, it will also send the moving event to the process. In the scenario shown in Figure 3, the IMS will press the event If it is sent to the first process, then the move event and lift event are also sent directly to the first process. For the detailed process, refer to the above description, and the embodiment of the present application will not repeat it here.
  • the IMS determines the receiving process of the mobile event according to the event channel list and the event forwarding list, and if both the first process and the second process are receiving processes of the mobile event, the mobile event is sent to the first process and the second process. second process. Similarly, according to the event channel list and the event forwarding list, determine the receiving process for raising the event. If both the first process and the second process are receiving processes of the lift event, the lift event is sent to the first process and the second process. In this method, both the move event and the lift event are directly sent to the second process by the operating system, rather than being transmitted across processes through the first process. Reduced latency and improved user experience. For the detailed process, refer to the above description, and the embodiment of the present application will not repeat it here.
  • the Android Runtime includes core library and virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
  • the core library consists of two parts: one part is the function function that the java language needs to call, and the other part is the core library of Android.
  • the application layer and the application framework layer run in virtual machines.
  • the virtual machine executes the java files of the application program layer and the application program framework layer as binary files.
  • the virtual machine is used to perform functions such as object life cycle management, stack management, thread management, security and exception management, and garbage collection.
  • a system library can include multiple function modules. For example: state monitoring service, surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • the state monitoring service is used to determine the specific orientation of the mobile phone, the physical state of the flexible screen, etc. according to the monitoring data reported by the kernel layer.
  • the surface manager is used to manage the display subsystem and provides the fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of various commonly used audio and video formats, as well as still image files, etc.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing, etc.
  • 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer includes at least a display driver, a sensor driver, a TP driver, a camera driver, an audio driver, and a device node, etc., which are not limited in this embodiment of the present application.
  • Device nodes include nodes created by the operating system for each hardware input device, such as nodes created by the operating system for the screen, nodes created by the operating system for the keyboard, nodes created by the operating system for the mouse, nodes created by the operating system for the gamepad, and so on.
  • IMS is used to monitor whether each node has readable data, if so, read the data, analyze and process the data, and generate touch screen events.
  • the device node When the user performs a press operation, after receiving a hardware interrupt, the device node processes the hardware interrupt into an original press event, and writes the original press event into the device node.
  • the IMS reads the original press event from the device node, parses and processes the original press event, and generates a press event.
  • the device node When the user performs a move operation, after receiving a hardware interrupt, the device node processes the hardware interrupt into an original move event, and writes the original move event into the device node.
  • the IMS reads the original mobile event from the device node, parses and processes the original mobile event, and generates a mobile event.
  • the device node When the user performs a lift operation, after receiving a hardware interrupt, the device node processes the hardware interrupt into an original lift event, and writes the original lift event into the device node.
  • the IMS reads the original lift event from the device node, parses and processes the original lift event, and generates a lift event.

Abstract

本申请实施例提供一种界面显示方法和设备。该方法包括:显示第一界面,所述第一界面包括第一区域,所述第一区域对应的第一进程在显示所述第一界面时运行;检测用户的第一滑动操作;响应于用户在所述第一区域的第一位置的所述第一滑动操作,基于所述第一进程启动第二进程,并显示与所述第二进程关联的第二界面。使得用户可以打开更多界面,提升了界面交互丰富度。

Description

界面显示方法和设备
本申请要求于2021年05月20日提交中国专利局、申请号为202110552712.4、申请名称为“界面显示方法和设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及终端领域,尤其涉及一种界面显示方法和设备。
背景技术
当前,用户使用终端越来越普遍。用户可以通过手势或语言与终端实现交互。随着当前终端上的应用或服务越来越多,需要显示的页面也越来越多,对交互需求也越来越高。例如用户从屏幕顶部的通知栏区域向下滑动可以打开控制中心的显示界面,显示WiFi、蓝牙等的快捷开关,然而这种交互方式较单一,用户体验感不高。
发明内容
本申请实施例提供一种界面显示方法和设备,用于提升界面交互丰富度,从而提升用户体验。
第一方面,本申请提供一种界面显示方法,应用于电子设备,所述方法包括:显示第一界面,所述第一界面包括第一区域,所述第一区域对应的第一进程在显示所述第一界面时运行;检测用户的第一滑动操作;响应于用户在所述第一区域的第一位置的所述第一滑动操作,基于所述第一进程启动第二进程,并显示与所述第二进程关联的第二界面。
一种可能的实现方式中,所述方法还包括:检测用户的第二滑动操作,响应于用户在所述第一区域的第二位置的所述第二滑动操作,显示与所述第一进程关联的第三界面;其中,所述第一位置位于所述第一区域的第一子区域,所述第二位置位于所述第一区域的第二子区域。
一种可能的实现方式中,所述基于所述第一进程启动第二进程,包括:检测到所述第一滑动操作后,所述电子设备将所述第一滑动操作对应的事件分发给所述第一进程;所述第一进程根据所述第一位置的信息启动所述第二进程;所述电子设备将所述第一滑动操作对应的事件分发给所述第二进程。
一种可能的实现方式中,所述第一子区域和所述第二子区域对应不同的组件,所述基于所述第一进程启动第二进程,包括:检测到所述第一滑动操作后,所述电子设备将所述第一滑动操作对应的事件分发给所述第一进程;所述电子设备基于所述第一子区域对应的组件的响应,启动所述第二进程,并将所述第一滑动操作对应的事件分发给所述第二进程。
一种可能的实现方式中,所述基于所述第一进程启动第二进程,包括:检测到所述第一滑动操作后,所述电子设备将所述第一滑动操作对应的事件分发给所述第一进程;所述第一进程启动所述第二进程;所述电子设备将所述第一滑动操作对应的事件分发给所述第 二进程。
一种可能的实现方式中,所述将所述第一滑动操作对应的事件分发给所述第二进程,包括:通过所述第一进程将所述第一滑动操作对应的事件转发给所述第二进程。
一种可能的实现方式中,所述将所述第一滑动操作对应的事件分发给所述第二进程,包括:根据事件通道列表和事件转发列表,判断所述第二进程是否为接收事件的进程;若是,则将所述第一滑动操作对应的事件分发给所述第二进程。
一种可能的实现方式中,所述根据事件通道列表和事件转发列表,判断所述第二进程是否为接收事件的进程,包括:在所述事件通道列表中查找所述第一进程对应的事件通道;在所述事件转发列表查找所述第一进程的注册信息;根据在所述事件通道列表的查找结果和在所述事件转发列表的查找结果,判断所述第二进程是否为接收事件的进程。
一种可能的实现方式中,所述根据在所述事件通道列表的查找结果和在所述事件转发列表的查找结果,判断所述第二进程是否为接收事件的进程,包括:若在所述事件转发列表中能查到所述第二进程的注册信息,则判断所述注册信息中待转发事件是否为触屏事件,并且判断在所述事件通道列表中查到的事件通道和所述注册信息中原始事件通道是否能够匹配上,若所述注册信息中待转发事件为触屏事件且在所述事件通道列表中查到的事件通道和所述注册信息中原始事件通道能够匹配上,则确定所述第二进程是接收事件的进程;若在所述事件转发列表查不到所述第二进程的注册信息,或者能查到所述第二进程的注册信息但所述注册信息中待转发事件不是触屏事件,或者能查到所述第二进程的注册信息但在所述事件通道列表中查到的事件通道和所述注册信息中原始事件通道匹配不上,则确定所述第二进程不是接收事件的进程。
一种可能的实现方式中,所述方法还包括:所述第一进程接收到所述第二进程发送的启动成功消息后,向所述电子设备的操作系统注册事件转发,以使所述操作系统将所述第一进程的注册信息添加至所述事件转发列表中。
一种可能的实现方式中,所述向所述电子设备的操作系统注册事件转发,包括:所述第一进程向所述操作系统发送注册指令,所述注册指令携带待转发事件标识、原始事件通道标识以及所述第二进程的标识;所述操作系统根据所述待转发事件标识,确定所述第一进程注册的待转发事件;所述操作系统根据所述原始事件通道标识,确定所述第一进程注册的原始事件通道;所述操作系统根据所述第二进程的标识,从所述事件通道列表中查询所述第二进程对应的事件通道,并将所述第二进程对应的事件通道作为所述第一进程注册的目标事件通道。
一种可能的实现方式中,所述第一滑动操作对应的事件包括抬起事件,所述所述方法还包括:所述第一进程接收到所述抬起事件后,向所述操作系统发送解注册指令;所述操作系统接收到所述解注册指令后,将所述第一进程的注册信息从所述事件转发列表中删除。
一种可能的实现方式中,所述第一区域为桌面通知栏区域,所述第一进程为所述桌面通知栏区域对应的进程。
一种可能的实现方式中,所述第二界面为包括多个服务组件的页面,所述多个服务组件可以提供多个不同应用或多个不同服务的信息,且所述多个服务组件为用户可交互的组件。
一种可能的实现方式中,所述第三界面为显示控制面板,和/或,控制面板的界面。
第二方面,本申请提供一种电子设备,包括:存储器和处理器,所述存储器用于存储可执行指令,所述可执行指令被所述处理器执行时使得所述电子设备实现第一方面提供的方法。
第三方面,本申请提供一种可读存储介质,所述可读存储介质上存储有计算机程序;所述计算机程序在被执行时,实现上述第一方面提供的方法。
本申请实施例提供的界面显示方法和设备,显示第一界面,该第一界面包括第一区域,该第一区域对应的第一进程在显示第一界面时运行;响应于用户在第一区域的第一位置的第一滑动操作,基于第一进程启动第二进程,并显示与第二进程关联的第二界面。使得用户可以打开更多界面,提升了界面交互丰富度。
附图说明
图1为本申请实施例提供的应用场景图;
图2为本申请实施例提供的交互图一;
图3为本申请实施例提供的交互图二;
图4为本申请实施例提供的事件分发流程图一;
图5为本申请实施例提供的电子设备的框架图一;
图6为本申请实施例提供的事件通道列表的示意图;
图7为本申请实施例提供的输入模块的示意图一;
图8为本申请实施例提供的事件分发流程图二;
图9为本申请实施例提供的事件转发列表的示意图;
图10为本申请实施例提供的电子设备的框架图二;
图11为本申请实施例提供的输入模块的示意图二;
图12为本申请实施例提供的电子设备100的结构示意图;
图13为本申请实施例提供的电子设备100的软件结构框图。
具体实施方式
在一些实施例中,参见图1所示,用户想要打开控制中心的显示界面时,将手指从屏幕顶部窗口10向下滑即可,图1示意的控制中心的显示界面包括无线局域网(Wireless Local Area Networks,WLAN)、移动数据以及蓝牙等快捷开关,图1仅是一种示例,在其他实施例中,控制中心的显示界面可以和图1不同,本申请实施例对此不限定。然而这种交互方式较单一,用户体验感不高。本申请实施例提供一种交互方式,将屏幕顶部窗口10进一步分为:屏幕顶部左边窗口101和屏幕顶部右边窗口102,用户想要打开控制中心的显示界面时,参见图2所示,将手指从屏幕顶部左边窗口101向下滑。用户想要打开另一界面时,参见图3所示,将手指从屏幕顶部右边窗口102向下滑,提升了界面交互丰富度。本申请实施例中的窗口也可称为区域,本申请实施例以窗口为例进行说明。屏幕顶部窗口10可以为桌面通知栏区域。在其他实施例中,控制中心的显示界面可称为显示控制面板,和/或,控制面板的界面。
需要说明的是:图3示意的另一界面为服务中心的显示界面,在其他实施例中,手指从屏幕顶部右边窗口102向下滑可打开其他界面,本申请实施例对此不限定。服务中心的 显示界面可以为包括多个服务组件的页面,该多个服务组件可以提供多个不同应用或多个不同服务的信息,且该多个服务组件为用户可交互的组件。示例性的,图3所示服务中心的显示界面包括“最近使用”和“我的收藏”两个服务,“最近使用”这一服务包括支付码、音乐、闹钟等,“我的收藏”这一服务包括直播、附近美食等。图3所示服务中心的显示界面仅是一种示例,在其他实施例中,服务中心的显示界面可以和图3不同,本申请实施例对此不作限定。
需要说明的是:图2和图3中,手指从屏幕顶部左边窗口101向下滑打开控制中心的显示界面,从屏幕顶部右边窗口102向下滑打开服务中心的显示界面仅是一种示例,在其他实施例中,交互方式也可为:手指从屏幕顶部左边窗口101向下滑打开服务中心的显示界面,从屏幕顶部右边窗口102向下滑打开控制中心的显示界面。
或者,将屏幕底部窗口20进一步分为:屏幕底部左边窗口201和屏幕底部右边窗口202,交互方式可以为:手指从屏幕底部左边窗口201向上滑打开控制中心的显示界面,从屏幕底部右边窗口202向上滑打开服务中心的显示界面;或者手指从屏幕底部左边窗口201向上滑打开服务中心的显示界面,从屏幕底部右边窗口202向上滑打开控制中心的显示界面。
或者,交互方式可以为:手指从屏幕左部窗口301向右滑打开控制中心的显示界面,手指从屏幕右部窗口302向左滑打开服务中心的显示界面;或者手指从屏幕左部窗口301向右滑打开服务中心的显示界面,手指从屏幕右部窗口302向左滑打开控制中心的显示界面。
本申请实施例以图2和图3所示交互方式为例说明本申请实施例的方案。用户可以在电子设备显示第一界面时,执行图2或图3示意的操作。第一界面可以是桌面或者任一应用程序中的界面,本申请实施例对第一界面不限定。
以下四种实现方式均可实现图2和图3所示交互,这四种实现方式分别为:
第一种实现方式:电子设备包括两个进程,分别为通知栏进程和服务中心进程,通知栏进程和控制中心的显示界面关联,服务中心进程和服务中心的显示界面关联。屏幕顶部窗口10对应通知栏进程中的一个视图组件。用户手指从屏幕顶部窗口10向下滑时,该视图组件判断用户手指是从屏幕顶部左边窗口101向下滑还是屏幕顶部右边窗口102向下滑,若是从屏幕顶部左边窗口101向下滑,则绘制控制中心的显示界面,使得电子设备显示控制中心的显示界面。若是从屏幕顶部右边窗口102向下滑,则启动服务中心进程,使得服务中心进程绘制服务中心的显示界面,从而使电子设备显示服务中心的显示界面。
本申请实施例中,这种实现方式下,屏幕顶部窗口10也称为第一区域,屏幕顶部窗口10对应通知栏进程,通知栏进程也称为第一进程。通知栏进程在电子设备显示第一界面时运行。服务中心进程也称为第二进程。屏幕顶部左边窗口101也称为第一区域的第一子区域,屏幕顶部右边窗口102也称为第一区域的第二子区域。屏幕顶部左边窗口101内任一位置也称为第一位置。屏幕顶部右边窗口102内任一位置也称为第二位置。手指从屏幕顶部右边窗口102向下滑称为在第一位置的第一滑动操作,手指从屏幕顶部左边窗口101向下滑称为在第二位置的第二滑动操作。服务中心的显示界面也称为第二界面,控制中心的显示界面也称为第三界面。
第二种实现方式:电子设备包括两个进程,分别为通知栏进程和服务中心进程,通知 栏进程和控制中心的显示界面关联,服务中心进程和服务中心的显示界面关联。屏幕顶部左边窗口101对应通知栏进程的一个视图组件,本申请实施例中将该视图组件简称为第一视图组件,屏幕顶部右边窗口102对应通知栏进程的另一视图组件,本申请实施例中将该视图组件简称为第二视图组件,用户手指从屏幕顶部左边窗口101向下滑时,第一视图组件绘制控制中心的显示界面,使得电子设备显示控制中心的显示界面。用户手指从屏幕顶部右边窗口102向下滑时,第二视图组件启动服务中心进程,使得服务中心进程绘制服务中心的显示界面,从而使电子设备显示服务中心的显示界面。
本申请实施例中,这种实现方式下,同上述实现方式,屏幕顶部窗口10也称为第一区域,屏幕顶部窗口10对应通知栏进程,通知栏进程也称为第一进程。通知栏进程在电子设备显示第一界面时运行。服务中心进程也称为第二进程。屏幕顶部左边窗口101也称为第一区域的第一子区域,屏幕顶部右边窗口102也称为第一区域的第二子区域。屏幕顶部右边窗口102内任一位置也称为第一位置。屏幕顶部左边窗口101内任一位置也称为第二位置。手指从屏幕顶部右边窗口102向下滑称为在第一位置的第一滑动操作,手指从屏幕顶部左边窗口101向下滑称为在第二位置的第二滑动操作。服务中心的显示界面也称为第二界面,控制中心的显示界面也称为第三界面。
第三种实现方式:电子设备包括三个进程,分别为通知栏进程、服务中心进程以及中间进程。通知栏进程和控制中心的显示界面关联,服务中心进程和服务中心的显示界面关联。屏幕顶部左边窗口101对应通知栏进程的一个视图组件,本申请实施例中将该视图组件简称为第三视图组件,屏幕顶部右边窗口102对应中间进程的一个视图组件,本申请实施例中将该视图组件简称为第四视图组件,用户手指从屏幕顶部左边窗口101向下滑时,第三视图组件绘制控制中心的显示界面,使得电子设备显示控制中心的显示界面。用户手指从屏幕顶部右边窗口102向下滑时,第四视图组件启动服务中心进程,使得服务中心进程绘制服务中心的显示界面,从而使电子设备显示服务中心的显示界面。
本申请实施例中,这种实现方式下,屏幕顶部右边窗口102也称为第一区域,屏幕顶部右边窗口102对应中间进程,中间进程也称为第一进程。中间进程在电子设备显示第一界面时运行。服务中心进程也称为第二进程。屏幕顶部右边窗口102内任一位置也称为第一位置。手指从屏幕顶部右边窗口102向下滑称为在第一位置的第一滑动操作,屏幕顶部左边窗口101内任一位置也称为第二位置。手指从屏幕顶部左边窗口101向下滑称为在第二位置的第二滑动操作。
第四种实现方式:电子设备包括两个进程,分别为通知栏进程和服务中心进程,屏幕顶部左边窗口101对应通知栏进程的一个视图组件,本申请实施例中将该视图组件简称为第五视图组件,屏幕顶部右边窗口102对应服务中心进程的一个视图组件,本申请实施例中将该视图组件简称为第六视图组件,用户手指从屏幕顶部左边窗口101向下滑时,第五视图组件绘制控制中心的显示界面,用户手指从屏幕顶部右边窗口102向下滑时,第六视图组件绘制服务中心的显示界面。
本申请实施例对第一种实现方式进行详细说明。
为了使用户在屏幕顶部窗口10的触控操作随时得到响应,通知栏进程可以是常驻的,也就是说,电子设备开机后,通知栏进程便自动启动。
为方便说明,本申请实施例中将手指按在屏幕上这一操作简称为按下操作,电子设备 接收到按下操作后,操作系统会生成按下操作对应的触屏事件,本申请实施例中将该触屏事件称为按下事件。本申请实施例中将手指在屏幕上移动这一操作简称为移动操作,电子设备接收到移动操作后,操作系统会生成移动操作对应的触屏事件,本申请实施例中将该触屏事件称为移动事件。本申请实施例中将手指从屏幕上抬起这一操作简称为抬起操作,电子设备接收到抬起操作后,操作系统会生成抬起操作对应的触屏事件,本申请实施例中将该触屏事件称为抬起事件。
针对第一种实现方式,图4为本申请实施例提供的事件分发流程图一。具体包括:
S401、操作系统将按下事件发送给第一进程。
具体的,按下事件携带按下操作的坐标,操作系统可根据按下操作的坐标,确定按下操作所处的窗口,将按下事件发送给该窗口对应的进程。图3所示场景中,按下操作在屏幕顶部窗口10,则可将按下事件发送给屏幕顶部窗口10对应的进程,即第一进程。
第一进程接收到按下事件后,将按下事件发给屏幕顶部窗口10对应的视图组件,该视图组件根据按下操作的坐标判断按下操作处在屏幕顶部左边窗口101还是屏幕顶部右边窗口102,若处在屏幕顶部左边窗口101,后续接收到移动事件和抬起事件后,根据移动事件和抬起事件绘制控制中心的显示界面。若处在屏幕顶部右边窗口102,则执行S402。
S402、向第二进程发送启动指令。
S403、第二进程启动。
S404、第二进程向第一进程发送启动成功消息。
S405、第一进程向第二进程发送服务绑定请求。
S406、第二进程向第一进程反馈绑定成功消息。
S407、操作系统将移动事件发送给第一进程。
由于按下操作、移动操作和抬起操作是连续发生的,操作系统将按下事件发送给某个进程后,也会将移动事件发送给该进程,在图3所示场景下操作系统将按下事件发给了第一进程,则直接将移动事件也发送给第一进程。
需要说明的是:手指是连续移动的,每次移动都会触发操作系统生成一次移动事件,操作系统每次生成移动事件后,都会将移动事件发送给第一进程。
S408、第一进程接收到第二进程反馈的启动成功消息后,将移动事件转发给第二进程。
需要说明的是:第一进程接收到操作系统发送的某个移动事件后,若此时还未收到第二进程反馈的启动成功消息,则不会将该移动事件转发给第二进程。比如:在操作系统向第一进程发送移动事件i-1和移动事件i的间隔内,第二进程向第一进程反馈了启动成功消息,第一进程在接收到移动事件i-1后,由于此时还未收到第二进程反馈的启动成功消息,因此不会将该移动事件i-1转发给第二进程,而在接收到移动事件i后,由于此时已经接收到第二进程反馈的启动成功消息,因此会将该移动事件i转发给第二进程。需要说明的是:由于第二进程并没有接收到移动事件i-1以及移动事件i-1之前的移动事件,因此第二进程无法对这些移动事件作出响应。
S409、第二进程根据移动事件,绘制手指位置处的界面。
具体的,移动事件携带手指移动后的坐标,第二进程接收到的第一个移动事件后,根据第一个移动事件携带的坐标,绘制得到第一帧界面;接收到的第二个移动事件后,根据第二个移动事件携带的坐标,绘制得到第二帧界面;接收到的第n个移动事件后,根据第 n个移动事件携带的坐标,绘制得到第N帧界面,从而实现跟手效果。
S4010、操作系统将抬起事件发送给第一进程。
同移动事件,操作系统将按下事件发送给某个进程后,也会将抬起事件发送给该进程,在图3所示场景下操作系统将按下事件发给了第一进程,则直接将抬起事件也发送给第一进程。
S4011、第一进程将抬起事件转发给第二进程。
同移动事件,第一进程接收到第二进程反馈的启动成功消息后,才会将抬起事件转发给第二进程。
S4012、第二进程根据抬起事件,绘制整个界面或者关闭第二进程。
一种可能的实现方式中,抬起事件携带抬起操作的坐标,第二进程可根据按下事件携带的坐标和抬起事件携带的坐标,确定手指移动的距离,若手指移动的距离达到预设值,则绘制整个界面,若未达到预设值,则关闭第二进程。
一种可能的实现方式中,抬起事件也可不携带坐标,第二进程接收到抬起事件后,直接绘制整个界面。
需要说明的是:在第二种实现方式中,操作系统将按下事件发送给第一进程后,第一进程可根据按下操作的坐标,判断是由第一视图组件来处理该按下事件还是由第二视图组件来处理该按下事件,若判断得到由第一视图组件来处理该按下事件,则将按下事件发给第一视图组件,后续接收到移动事件和抬起事件后,也会将移动事件和抬起事件发给第一视图组件,第一视图组件根据移动事件和抬起事件绘制控制中心的显示界面。若判断得到由第二视图组件来处理该按下事件,则将按下事件发给第二视图组件,第二视图组件接收到按下事件后执行S402,之后的步骤均和图4所示实施例类似,本申请实施例在此不再赘述。
在第三种实现方式中,第一进程接收到按下事件后,将按下事件发给第四视图组件,第四视图组件无需判断按下操作处在屏幕顶部左边窗口101还是屏幕顶部右边窗口102,直接执行S402即可。
在第四种实现方式中,操作系统将按下事件、移动事件和抬起事件直接发送给第二进程,第二进程将按下事件、移动事件和抬起事件发给第六视图组件,第六视图组件根据移动事件和抬起事件绘制服务中心的显示界面。
图4所示实施例中,从用户输入按下操作到第一帧界面出现包含四部分时延,分别为第一进程启动第二进程(对应S402-S404)、第一进程绑定第二进程的服务(对应S405和S406),第一进程向第二进程转发移动事件(对应S408),第二进程绘制得到第一帧界面(对应S409)。在一些实施例中,第一进程启动第二进程的时延为200ms,第一进程绑定第二进程的服务的时延为150ms,第一进程向第二进程转发移动事件的时延为50ms,第二进程绘制得到第一帧界面的时延为100ms,即上述实施例端到端的时延为500ms,该时延过长,会导致用户有感受不及时、不连续以及控制感低的问题,用户体验不高。
图4所示事件分发方法可应用于图5所示电子设备,该电子设备包括:硬件输入设备、操作系统以及应用进程。其中,硬件输入设备可包括:屏幕、键盘、鼠标和/或游戏手柄。操作系统包括:设备节点和输入模块。应用进程包括第一进程和第二进程。
设备节点包括操作系统为每个硬件输入设备创建的节点,图5中使用设备节点1表示 操作系统为屏幕创建的节点,使用设备节点2表示操作系统为键盘创建的节点,使用设备节点3表示操作系统为鼠标创建的节点,使用设备节点4表示操作系统为游戏手柄的节点。输入模块用于监控各个节点是否有数据可读,若有,则将数据读取出来,并对数据进行解析和加工,生成触屏事件。
本申请实施例以用户通过屏幕和电子设备交互为例说明本申请实施例的方案,在其他实施例中,用户也可通过键盘、鼠标和/或游戏手柄和电子设备交互,这些情况下,事件分发方法和本申请实施例类似,本申请实施例在此不再赘述。
下面介绍用户执行按下操作时各个模块的功能:
用户执行按下操作时,屏幕会向设备节点1发送硬件中断,该硬件中断指示用户将手指按在屏幕上,该硬件中断携带按下操作的坐标,设备节点1接收到该硬件中断后,将该硬件中断加工为原始按下事件,并将原始按下事件写入设备节点1中。输入模块从设备节点1中读取该原始按下事件,并对该原始按下事件进行解析和加工,生成按下事件。
输入模块还用于根据按下操作的坐标,确定按下操作所处的窗口,将按下事件发送给该窗口对应的进程。图3所示场景中,按下操作在屏幕顶部窗口,则可将按下事件发送给屏幕顶部窗口对应的进程,即第一进程。
下面介绍用户执行移动操作时各个模块的功能:
用户执行移动操作时,同样的,屏幕会向设备节点1发送硬件中断,该硬件中断指示用户手指在屏幕上发生移动,该硬件中断携带移动后的坐标,设备节点1接收到该硬件中断后,将该硬件中断加工为原始移动事件,并将原始移动事件写入设备节点1中。输入模块从设备节点1中读取该原始移动事件,并对该原始移动事件进行解析和加工,生成移动事件。需要注意的是,手指是连续移动的,每次移动都会触发屏幕向设备节点1发送硬件中断,使输入模块生成一次移动事件。
下面介绍用户执行抬起操作时各个模块的功能:
用户执行抬起操作时,同样的,屏幕会向设备节点1发送硬件中断,该硬件中断指示用户手指从屏幕上抬起,该硬件中断可携带抬起操作的坐标,设备节点1接收到该硬件中断后,将该硬件中断加工为原始抬起事件,并将原始抬起事件写入设备节点1中。输入模块从设备节点1中读取该原始抬起事件,并对该原始抬起事件进行解析和加工,生成抬起事件。
事件通道是输入模块向各个进程分发事件的媒介,输入模块存储有事件通道列表,该事件通道列表包括各个进程启动时,向输入模块注册的事件通道。当输入模块确定将按下事件发送给第一进程时,在事件通道列表中找到第一进程对应的事件通道,通过该事件通道将按下事件发送给第一进程。移动事件和抬起事件类似,本申请实施例不再赘述。
示例性的,图6示出了事件通道列表的一种可能的形式,图6中使用事件通道1表示第一进程启动时向操作系统注册的事件通道,使用事件通道2表示第二进程启动时向操作系统注册的事件通道。
当图5所示电子设备为安卓系统时,参见图7所示,图5中的输入模块可以为系统服务(System Server)进程中的输入管理服务(InputManagerService,IMS)。System Server进程还包括窗口管理服务(WindowManagerService,WMS)。WMS包括窗口堆栈(Window Stack),Window Stack中记录所有窗口的信息,窗口信息可包括窗口坐标。IMS包括输入 调度模块(InputDispatcher),InputDispatcher包括:用于和Window Stack交互的输入窗口句柄(InputWindowHandle)以及事件通道列表(InputChannel)。如上文描述,输入模块有如下功能:根据按下操作的坐标,确定按下操作所处的窗口。下面介绍如何通过图7所示架构实现上述功能:
InputWindowHandle根据按下操作的坐标和Window Stack记录的所有窗口的信息,查询按下操作的坐标落在了哪个窗口内,将查询到的窗口作为按下操作所处的窗口。结合图3所示场景,根据按下操作的坐标可查询到屏幕顶部窗口为按下操作所处的窗口。
图8为本申请实施例提供的事件分发流程图二。具体包括::
S801、操作系统将按下事件发送给第一进程。
S802、第一进程向第二进程发送启动指令。
S803、第二进程启动。
S804、第二进程向第一进程发送启动成功消息。
S801-S804的实现过程可参见上述实施例中的S401-S404,本申请实施例在此不再赘述。
S805、第一进程接收到第二进程反馈的启动成功消息后,向操作系统注册事件转发。
一种可能的实现方式中,第一进程可通过如下方式向操作系统注册事件转发:
第一进程向操作系统发送注册指令,该注册指令中携带待转发事件标识、原始事件通道标识以及第二进程标识。操作系统接收到注册指令后,根据待转发事件标识确定第一进程注册的待转发事件,根据原始事件通道标识确定第一进程注册的原始事件通道,根据第二进程标识,从事件通道列表中查询第二进程对应的事件通道,将第二进程对应的事件通道作为第一进程注册的目标事件通道。操作系统进一步将第一进程的注册信息添加至事件转发列表中。
一种可能的实现方式中,第二进程标识可以为第二进程的包名、也可以为第二进程的ID,也可以为其他能够唯一标识第二进程的参数,本申请实施例对此不限定。
示例性的,图9示出了事件转发列表的一种可能的形式,图9中,第一进程注册的待转发事件为触屏事件,第一进程注册的原始事件通道为事件通道1,第一进程注册的目标事件通道为事件通道2。进程2注册的待转发事件为触屏事件,进程2注册的原始事件通道为事件通道3,进程2注册的目标事件通道为事件通道4;进程3注册的待转发事件为触屏事件,进程3注册的原始事件通道为事件通道5,进程2注册的目标事件通道为事件通道6。
需要说明的是:第一进程是在合适的时机才会向操作系统注册事件转发,本申请实施例中第一进程是在接收到第二进程反馈的启动成功消息后才会向操作系统注册事件转发。另外,第一进程会在合适的时机向操作系统解注册事件转发,以使操作系统将事件转发列表中第一进程和第一进程的注册信息删除,使得事件转发注册不会影响其他场景下第一进程和第二进程的响应。本申请实施例中第一进程在接收到抬起事件后,向操作系统解注册事件转发。
S806、操作系统根据事件通道列表和事件转发列表,确定移动事件的接收进程。
一种可能的实现方式中,可通过如下方式确定移动事件的接收进程:
操作系统生成移动事件后,先从事件通道列表中查找第一进程对应的事件通道,然后在事件转发列表查找第一进程的注册信息,若能查到第一进程的注册信息,进一步判断注 册信息中待转发事件是否为触屏事件,并且判断从事件通道列表中找到的事件通道和注册信息中原始事件通道是否能够匹配上,若待转发事件为触屏事件且从事件通道列表中找到的事件通道和注册信息中原始事件通道能够匹配上,则确定第一进程和第二进程均为移动事件的接收进程,接着执行S807。若在事件转发列表查不到第一进程的注册信息,或者能查到第一进程的注册信息但注册信息中待转发事件不是触屏事件,或者能查到第一进程的注册信息但从事件通道列表中找到的事件通道和注册信息中原始事件通道匹配不上,则确定第一进程为移动事件的接收进程。
下面结合图6所示事件通道列表和图9所示事件转发列表举例说明:
操作系统生成移动事件后,从图6所示事件通道列表中查到第一进程对应的事件通道为事件通道1,然后从图9所示事件转发列表中查找第一进程的注册信息,由于第一进程的注册信息中待转发事件为触屏事件,并且原始事件通道也是事件通道1,则可确定第一进程和第二进程均为移动事件的接收进程。
需要说明的是:如上文描述手指是连续移动的,每次移动都会触发操作系统生成一次移动事件,操作系统每次生成移动事件后,针对每个移动事件,均可使用上述方法确定接收该移动事件的接收进程。
S807、操作系统将移动事件发送给第一进程和第二进程。
操作系统可通过原始事件通道将移动事件发送给第一进程,通过目标事件通道将移动事件发送给第二进程。第一进程接收到移动事件都不作任何处理。第二进程接收到移动事件后执行S808。
S808、第二进程根据移动事件,绘制手指位置处的界面。
具体的,移动事件携带手指移动后的坐标,第二进程接收到的第一个移动事件后,根据第一个移动事件携带的坐标,绘制得到第一帧界面;接收到的第二个移动事件后,根据第二个移动事件携带的坐标,绘制得到第二帧界面;接收到的第n个移动事件后,根据第n个移动事件携带的坐标,绘制得到第N帧界面,从而实现跟手效果。
S809、操作系统根据事件通道列表和事件转发列表,确定抬起事件的接收进程。
和移动事件类似,可通过如下方式确定抬起事件的接收进程:
操作系统生成抬起事件后,先从事件通道列表中查找第一进程对应的事件通道,然后在事件转发列表查找第一进程的注册信息,若能查到第一进程的注册信息,进一步判断注册信息中待转发事件是否为触屏事件,并且判断从事件通道列表中找到的事件通道和注册信息中原始事件通道是否能够匹配上,若待转发事件为触屏事件且从事件通道列表中找到的事件通道和注册信息中原始事件通道能够匹配上,则确定第一进程和第二进程均为抬起事件的接收进程,接着执行S8010。若在事件转发列表查不到第一进程的注册信息,或者能查到第一进程的注册信息但注册信息中待转发事件不是触屏事件,或者能查到第一进程的注册信息但从事件通道列表中找到的事件通道和注册信息中原始事件通道匹配不上,则确定第一进程为抬起事件的接收进程。
S8010、操作系统将抬起事件发送给第一进程和第二进程。
操作系统可通过原始事件通道将抬起事件发送给第一进程,通过目标事件通道将抬起事件发送给第二进程。
S8011、第一进程向操作系统解注册事件转发。
一种可能的实现方式中,第一进程可通过如下方式向操作系统解注册事件转发:
第一进程可向操作系统发送解注册指令,操作系统接收到该解注册指令后,将事件转发列表中第一进程和第一进程的注册信息删除。
S8012、第二进程根据抬起事件,绘制整个界面或者关闭第二进程。
一种可能的实现方式中,抬起事件携带抬起操作的坐标,第二进程可根据按下事件携带的坐标和抬起事件携带的坐标,确定手指移动的距离,若手指移动的距离达到预设值,则绘制整个界面,若未达到预设值,则关闭第二进程。
一种可能的实现方式中,抬起事件也可不携带坐标,第二进程接收到抬起事件后,直接绘制整个界面。
需要说明的是:通常情况下,应用进程在接收到按下事件时会确定界面的哪一个视图组件来处理该按下事件,界面的视图组件包括以下至少一种:View、ViewGroup或Activity;一旦确定了视图组件,那么后续的移动事件以及抬起事件都是交给该视图组件来处理。但是本申请实施例中,第二进程接收到移动事件前没有接收过按下事件,所以并不知道移动事件以及抬起事件应该交给哪个视图组件来处理。为了解决这个问题,第二进程启动时可指定一个视图组件来处理第二进程接收到的移动事件和抬起事件,第二进程在接收到移动事件和抬起事件时,直接将移动事件和抬起事件交给该视图组件进行处理即可。
一种可能的实现方式中,可在第二进程设计一个注册事件接收者的接口,第二进程启动时通过该接口指定一个视图组件来处理第二进程接收到的移动事件和抬起事件。
一种可能的实现方式中,操作系统还可在移动事件和按下事件上打上转发标签,第二进程接收到操作系统发送的事件后,检查该事件是否被打上转发标签,若被打上转发标签,则交给指定的视图组件进行处理即可。
图8所示实施例中,不存在图4所示实施例中第一进程绑定第二进程的服务的过程,而且移动事件和抬起事件均是由操作系统直接发送给第二进程,而不是通过第一进程跨进程传递。图8所示实施例,从用户输入按下操作到第一帧界面出现包含两部分时延,分别为第一进程启动第二进程和第二进程绘制得到第一帧界面,第一进程启动第二进程的时延为200ms,第二进程绘制得到第一帧界面的时延为100ms,即上述实施例端到端的时延为300ms,和图4所示实施例相比,降低了时延,提升了用户体验。
图8所示事件分发方法可应用于图10所示电子设备,该电子设备包括:硬件输入设备、操作系统以及应用进程。其中,硬件输入设备可包括:屏幕、键盘、鼠标和/或游戏手柄。操作系统包括:设备节点和输入模块。应用进程包括第一进程和第二进程。图10中各个模块的功能和图5类似,本申请实施例在此不再赘述。和图5示意的电子设备不同的是,图10所示电子设备中,输入模块包括事件转发子模块1001。第二进程包括注册事件接收者的接口1002。
硬件输入设备和设备节点的功能介绍参见图5所示实施例,本申请实施例在此不再赘述。
事件转发子模块1001用于接收第一进程发送的注册指令,并根据该注册指令确定第一进程的注册信息,并将第一进程的注册信息添加至事件转发列表中。详细过程参见S805中操作系统的步骤,本申请实施例在此不再赘述。
输入模块用于根据事件通道列表和事件转发列表,确定移动事件的接收进程,当第一 进程和第二进程均为移动事件的接收进程时,将移动事件发送给第一进程和第二进程。详细过程参见S806-S807中操作系统的步骤,本申请实施例在此不再赘述。
第二进程用于根据移动事件,绘制手指位置处的界面,详细过程参见S808的介绍,本申请实施例在此不再赘述。
输入模块还用于根据事件通道列表和事件转发列表,确定抬起事件的接收进程,当第一进程和第二进程均为抬起事件的接收进程时,将抬起事件发送给第一进程和第二进程。详细过程参见S809-S8010中操作系统的步骤,本申请实施例在此不再赘述。
第一进程用于接收到抬起事件后,向操作系统解注册事件转发。详细过程参见S8011的介绍,本申请实施例在此不再赘述。
第二进程还用于根据抬起事件,绘制整个界面或者关闭第二进程。详细过程参见S8012的介绍,本申请实施例在此不再赘述。
注册事件接收者的接口1002用于第二进程启动时,指定用于处理第二进程接收到的事件的视图组件。
当电子设备为安卓系统时,参见图11所示,图10中的输入模块可以为系统服务(System Server)进程中的输入管理服务(InputManagerService,IMS)。System Server进程还包括窗口管理服务(WindowManagerService,WMS)。WMS包括窗口堆栈(Window Stack),Window Stack中记录所有窗口的信息,窗口信息可包括窗口坐标。IMS包括输入调度模块(InputDispatcher),InputDispatcher包括:用于和Window Stack交互的输入窗口句柄(InputWindowHandle)以及事件通道列表(InputChannel)。事件转发子模块1001为输入转发模块(Input Forwarding)。WMS、Window Stack以及InputChannel和图5所示实施例类似,本申请实施例在此不再赘述。Input Forwarding功能和图10中事件转发子模块1001类似,本申请实施例在此不再赘述。
图12为本申请适用的电子设备100的一种结构示意图,如图12所示,该电子设备100可以包括:处理器110,触摸传感器120,显示屏130,键盘140、鼠标150和游戏手柄160。可以理解的是,本实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件,或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,显示处理单元(display process unit,DPU),和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。在一些实施例中,电子设备100也可以包括一个或多个处理器110。其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。这就避 免了重复存取,减少了处理器110的等待时间,因而提高了电子设备100系统的效率。
电子设备100通过GPU,显示屏130,以及应用处理器等可以实现显示功能。GPU为图像处理的微处理器,连接显示屏130和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行指令以生成或改变显示信息。
显示屏130用于显示图像,视频等。显示屏130包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏130,N为大于1的正整数。
触摸传感器120也可称触控面板或触敏表面。触摸传感器120可以设置于显示屏130,由触摸传感器120与显示屏130组成触摸屏,也称触控屏。触摸传感器120用于检测作用于其上或附近的触摸操作。触摸传感器120可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏130提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器120也可以设置于电子设备100的表面,与显示屏130所处的位置不同。
键盘140、鼠标150、游戏手柄160以及触摸传感器120用于向对应节点发送硬件中断。一种可能的实现方式中,用户在触摸屏执行按下操作时,触摸传感器120用于向对应节点发送硬件中断,该硬件中断指示用户将手指按在触摸屏上,该硬件中断携带按下操作的坐标。用户在触摸屏执行移动操作时,触摸传感器120用于向对应节点发送硬件中断,该硬件中断指示用户手指在触摸屏上发生移动,该硬件中断携带移动后的坐标。用户在触摸屏执行抬起操作时,触摸传感器120用于向对应节点发送硬件中断,该硬件中断指示用户手指从触摸屏上抬起,该硬件中断可携带抬起操作的坐标。
图13是本申请实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图13所示,应用程序层内可以安装相机,图库,日历,通话,地图,导航,蓝牙,音乐,视频,短信息等应用程序。应用程序层包括第一进程和第二进程。
在一些实施例中,第一进程用于接收按下事件,并在接收到按下事件后,向第二进程发送启动指令。还用于接收到第二进程反馈的启动成功消息后,向第二进程发送服务绑定请求,并在接收到第二进程反馈的启动成功消息后,将移动事件转发给第二进程。第二进程用于根据移动事件,绘制手指位置处的界面。第一进程还用于将抬起事件转发给第二进程。第二进程还用于程根据抬起事件,绘制整个界面或者关闭第二进程。详细过程参见上文描述,本申请实施例在此不再赘述。
在另一些实施例中,第一进程用于接收按下事件,并在接收到按下事件后,向第二进程发送启动指令。还用于接收到第二进程反馈的启动成功消息后,向IMS注册事件转发。还用于接收到抬起事件后,向IMS解注册事件转发。第二进程用于根据移动事件,绘制手 指位置处的界面。还用于根据抬起事件,绘制整个界面或者关闭第二进程。详细过程参见上文描述,本申请实施例在此不再赘述。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层可以包括输入管理服务(input manager service,IMS)。当然,应用程序框架层中还可以包括显示策略服务、电源管理服务(power manager service,PMS)、显示管理服务(display manager service,DMS)、活动管理器、窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等,本申请实施例对此不作任何限制。
在一些实施例中,结合图3所示场景,由于按下操作在屏幕顶部右边窗口,IMS则将按下事件发送给屏幕顶部右边窗口对应的进程,即第一进程。由于按下操作、移动操作和抬起操作是连续发生的,IMS将按下事件发送给某个进程后,也会将移动事件发送给该进程,在图3所示场景下IMS将按下事件发给了第一进程,则直接将移动事件和抬起事件也发送给第一进程。详细过程参见上文描述,本申请实施例在此不再赘述。
在另一些实施例中,IMS根据事件通道列表和事件转发列表,确定移动事件的接收进程,若第一进程和第二进程均为移动事件的接收进程,则将移动事件发送给第一进程和第二进程。同样的,根据事件通道列表和事件转发列表,确定抬起事件的接收进程。若第一进程和第二进程均为抬起事件的接收进程,则将抬起事件发送给第一进程和第二进程。由于该方法中移动事件和抬起事件均是由操作系统直接发送给第二进程,而不是通过第一进程跨进程传递。降低了时延,提升了用户体验。详细过程参见上文描述,本申请实施例在此不再赘述。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:状态监测服务,表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。状态监测服务用于根据内核层上报的监测数据确定手机的具体朝向、柔性屏幕的物理状态等。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,传感器驱动,TP驱动,摄像头驱动,音频驱动以及设备节点等,本申请实施例对此不做任何限制。
设备节点包括操作系统为每个硬件输入设备创建的节点,比如操作系统为屏幕创建的节点,操作系统为键盘创建的节点,操作系统为鼠标创建的节点,操作系统为游戏手柄的节点等。IMS用于监控各个节点是否有数据可读,若有,则将数据读取出来,并对数据进 行解析和加工,生成触屏事件。
用户执行按下操作时,设备节点接收到硬件中断后,将该硬件中断加工为原始按下事件,并将原始按下事件写入该设备节点中。IMS从该设备节点中读取该原始按下事件,并对该原始按下事件进行解析和加工,生成按下事件。
用户执行移动操作时,设备节点接收到硬件中断后,将该硬件中断加工为原始移动事件,并将原始移动事件写入该设备节点中。IMS从该设备节点中读取该原始移动事件,并对该原始移动事件进行解析和加工,生成移动事件。
用户执行抬起操作时,设备节点接收到硬件中断后,将该硬件中断加工为原始抬起事件,并将原始抬起事件写入该设备节点中。IMS从该设备节点中读取该原始抬起事件,并对该原始抬起事件进行解析和加工,生成抬起事件。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (17)

  1. 一种界面显示方法,其特征在于,应用于电子设备,所述方法包括:
    显示第一界面,所述第一界面包括第一区域,所述第一区域对应的第一进程在显示所述第一界面时运行;
    检测用户的第一滑动操作;
    响应于用户在所述第一区域的第一位置的所述第一滑动操作,基于所述第一进程启动第二进程,并显示与所述第二进程关联的第二界面。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    检测用户的第二滑动操作,
    响应于用户在所述第一区域的第二位置的所述第二滑动操作,显示与所述第一进程关联的第三界面;其中,所述第一位置位于所述第一区域的第一子区域,所述第二位置位于所述第一区域的第二子区域。
  3. 根据权利要求2所述的方法,其特征在于,所述基于所述第一进程启动第二进程,包括:
    检测到所述第一滑动操作后,所述电子设备将所述第一滑动操作对应的事件分发给所述第一进程;所述第一进程根据所述第一位置的信息启动所述第二进程;所述电子设备将所述第一滑动操作对应的事件分发给所述第二进程。
  4. 根据权利要求2所述的方法,其特征在于,所述第一子区域和所述第二子区域对应不同的组件,所述基于所述第一进程启动第二进程,包括:
    检测到所述第一滑动操作后,所述电子设备将所述第一滑动操作对应的事件分发给所述第一进程;所述电子设备基于所述第一子区域对应的组件的响应,启动所述第二进程,并将所述第一滑动操作对应的事件分发给所述第二进程。
  5. 根据权利要求3或4所述的方法,其特征在于,所述将所述第一滑动操作对应的事件分发给所述第二进程,包括:
    通过所述第一进程将所述第一滑动操作对应的事件转发给所述第二进程。
  6. 根据权利要求3或4所述的方法,其特征在于,所述将所述第一滑动操作对应的事件分发给所述第二进程,包括:
    根据事件通道列表和事件转发列表,判断所述第二进程是否为接收事件的进程;
    若是,则将所述第一滑动操作对应的事件分发给所述第二进程。
  7. 根据权利要求6所述的方法,其特征在于,所述根据事件通道列表和事件转发列表,判断所述第二进程是否为接收事件的进程,包括:
    在所述事件通道列表中查找所述第一进程对应的事件通道;
    在所述事件转发列表查找所述第一进程的注册信息;
    根据在所述事件通道列表的查找结果和在所述事件转发列表的查找结果,判断所述第二进程是否为接收事件的进程。
  8. 根据权利要求7所述的方法,其特征在于,所述根据在所述事件通道列表的查找结果和在所述事件转发列表的查找结果,判断所述第二进程是否为接收事件的进程,包括:
    若在所述事件转发列表中能查到所述第二进程的注册信息,则判断所述注册信息中待转发事件是否为触屏事件,并且判断在所述事件通道列表中查到的事件通道和所述注册信 息中原始事件通道是否能够匹配上,若所述注册信息中待转发事件为触屏事件且在所述事件通道列表中查到的事件通道和所述注册信息中原始事件通道能够匹配上,则确定所述第二进程是接收事件的进程;
    若在所述事件转发列表查不到所述第二进程的注册信息,或者能查到所述第二进程的注册信息但所述注册信息中待转发事件不是触屏事件,或者能查到所述第二进程的注册信息但在所述事件通道列表中查到的事件通道和所述注册信息中原始事件通道匹配不上,则确定所述第二进程不是接收事件的进程。
  9. 根据权利要求6-8任一项所述的方法,其特征在于,所述方法还包括:
    所述第一进程接收到所述第二进程发送的启动成功消息后,向所述电子设备的操作系统注册事件转发,以使所述操作系统将所述第一进程的注册信息添加至所述事件转发列表中。
  10. 根据权利要求9所述的方法,其特征在于,所述向所述电子设备的操作系统注册事件转发,包括:
    所述第一进程向所述操作系统发送注册指令,所述注册指令携带待转发事件标识、原始事件通道标识以及所述第二进程的标识;
    所述操作系统根据所述待转发事件标识,确定所述第一进程注册的待转发事件;
    所述操作系统根据所述原始事件通道标识,确定所述第一进程注册的原始事件通道;
    所述操作系统根据所述第二进程的标识,从所述事件通道列表中查询所述第二进程对应的事件通道,并将所述第二进程对应的事件通道作为所述第一进程注册的目标事件通道。
  11. 根据权利要求9或10所述的方法,其特征在于,所述第一滑动操作对应的事件包括抬起事件,所述方法还包括:
    所述第一进程接收到所述抬起事件后,向所述操作系统发送解注册指令;
    所述操作系统接收到所述解注册指令后,将所述第一进程的注册信息从所述事件转发列表中删除。
  12. 根据权利要求1-11任一项所述的方法,其特征在于,所述第一区域为桌面通知栏区域,所述第一进程为所述桌面通知栏区域对应的进程。
  13. 根据权利要求1-12任一项所述的方法,其特征在于,所述第二界面为包括多个服务组件的页面,所述多个服务组件可以提供多个不同应用或多个不同服务的信息,且所述多个服务组件为用户可交互的组件。
  14. 根据权利要求2所述的方法,其特征在于,所述第三界面为显示控制面板,和/或,控制面板的界面。
  15. 一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储可执行指令,所述可执行指令被所述处理器执行时使得所述电子设备实现权利要求1-14任一项所述的方法。
  16. 一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序;所述计算机程序在被执行时,实现上述权利要求1-14任一项所述的方法。
  17. 一种程序产品,其特征在于,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,通信装置的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得通信装置实施如权利要求1-14任意 一项所述的方法。
PCT/CN2022/085707 2021-05-20 2022-04-08 界面显示方法和设备 WO2022242356A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110552712.4A CN115390952A (zh) 2021-05-20 2021-05-20 界面显示方法和设备
CN202110552712.4 2021-05-20

Publications (1)

Publication Number Publication Date
WO2022242356A1 true WO2022242356A1 (zh) 2022-11-24

Family

ID=84113630

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/085707 WO2022242356A1 (zh) 2021-05-20 2022-04-08 界面显示方法和设备

Country Status (2)

Country Link
CN (1) CN115390952A (zh)
WO (1) WO2022242356A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117892381B (zh) * 2024-03-14 2024-05-10 中国西安卫星测控中心 一种基于时间与事件的指挥显示大屏设计方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105955802A (zh) * 2016-04-21 2016-09-21 青岛海信移动通信技术股份有限公司 一种移动终端的应用运行方法及移动终端
US20160283102A1 (en) * 2015-03-27 2016-09-29 Fujitsu Limited Display control method, computer-readable recording medium, and display control apparatus
CN108255404A (zh) * 2018-01-19 2018-07-06 广东欧珀移动通信有限公司 用户界面显示方法、装置及终端
CN108845751A (zh) * 2018-06-21 2018-11-20 Oppo广东移动通信有限公司 触控信息的处理方法、装置、存储介质及电子设备
CN109117060A (zh) * 2018-08-01 2019-01-01 Oppo广东移动通信有限公司 下拉通知栏显示方法、装置、终端及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160283102A1 (en) * 2015-03-27 2016-09-29 Fujitsu Limited Display control method, computer-readable recording medium, and display control apparatus
CN105955802A (zh) * 2016-04-21 2016-09-21 青岛海信移动通信技术股份有限公司 一种移动终端的应用运行方法及移动终端
CN108255404A (zh) * 2018-01-19 2018-07-06 广东欧珀移动通信有限公司 用户界面显示方法、装置及终端
CN108845751A (zh) * 2018-06-21 2018-11-20 Oppo广东移动通信有限公司 触控信息的处理方法、装置、存储介质及电子设备
CN109117060A (zh) * 2018-08-01 2019-01-01 Oppo广东移动通信有限公司 下拉通知栏显示方法、装置、终端及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117892381B (zh) * 2024-03-14 2024-05-10 中国西安卫星测控中心 一种基于时间与事件的指挥显示大屏设计方法

Also Published As

Publication number Publication date
CN115390952A (zh) 2022-11-25

Similar Documents

Publication Publication Date Title
US10268658B2 (en) Page loading method and system, and computer-readable storage medium
US9542245B2 (en) Processing user input events in a web browser
WO2021057830A1 (zh) 一种信息处理方法及电子设备
WO2022100315A1 (zh) 应用界面的生成方法及相关装置
US10331769B1 (en) Interaction based prioritized retrieval of embedded resources
US20200169596A1 (en) File transfer display control method and apparatus, and corresponding terminal
WO2021184375A1 (zh) 执行手势指令的方法、装置、系统及存储介质
US20120256949A1 (en) Backing store memory management for rendering scrollable webpage subregions
US20120062576A1 (en) Method and apparatus for rendering content
KR20150047451A (ko) 메시지 표시방법, 장치, 단말기장치, 프로그램 및 기록매체
KR102080146B1 (ko) 휴대단말과 외부 표시장치 연결 운용 방법 및 이를 지원하는 장치
US10254950B2 (en) Display method of terminal device and terminal device
KR102343361B1 (ko) 전자 기기 및 이의 웹 페이지 디스플레이 방법
JP2020537794A (ja) アイコン表示方法、デバイス、およびシステム
US20230075464A1 (en) Touch Operation Method and Device
WO2023226455A1 (zh) 应用图标的显示方法、电子设备及可读存储介质
US20190155958A1 (en) Optimized search result placement based on gestures with intent
WO2019200588A1 (zh) 一种应用退出时的显示方法及终端
US20180196584A1 (en) Execution of multiple applications on a device
US20140351749A1 (en) Methods, apparatuses and computer program products for merging areas in views of user interfaces
US20140372903A1 (en) Independent Hit Testing for Touchpad Manipulations and Double-Tap Zooming
WO2022242356A1 (zh) 界面显示方法和设备
WO2023279980A1 (zh) 一种转屏控制方法、装置及电子设备
US20160014168A1 (en) Methods for sharing applications between apparatuses and systems using the same
WO2022252788A1 (zh) 一种控制方法及电子设备

Legal Events

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

Ref document number: 22803681

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE