CN116055611B - Execution method of drawing operation, electronic device and readable medium - Google Patents

Execution method of drawing operation, electronic device and readable medium Download PDF

Info

Publication number
CN116055611B
CN116055611B CN202210722559.XA CN202210722559A CN116055611B CN 116055611 B CN116055611 B CN 116055611B CN 202210722559 A CN202210722559 A CN 202210722559A CN 116055611 B CN116055611 B CN 116055611B
Authority
CN
China
Prior art keywords
application program
application
electronic device
electronic equipment
background
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202210722559.XA
Other languages
Chinese (zh)
Other versions
CN116055611A (en
Inventor
王洪烛
肖路
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202210722559.XA priority Critical patent/CN116055611B/en
Publication of CN116055611A publication Critical patent/CN116055611A/en
Application granted granted Critical
Publication of CN116055611B publication Critical patent/CN116055611B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

The embodiment of the application provides a method for executing drawing operation, electronic equipment and a computer-readable storage medium, wherein the method for executing the drawing operation comprises the following steps: the electronic device determines that the application program applies for requesting a vertical synchronization VSYNC signal; the electronic equipment judges that the application program is in a background state and performs invalid background drawing; the electronic device prohibits the application from requesting the VSYNC signal. It can be seen that: when the application program is in a background state and invalid background drawing is performed, the electronic equipment prohibits the application program from requesting a VSYNC signal, so that the application program is prevented from executing drawing operation to refresh the interface, system resources of the electronic equipment are wasted, and heat and power consumption of the electronic equipment are increased.

Description

Execution method of drawing operation, electronic device and readable medium
Technical Field
The present application relates to the field of electronic technology, and in particular, to a method for performing a drawing operation, an electronic device, a computer program product, and a computer readable storage medium.
Background
Applications configured on electronic devices such as mobile phones are increasing. But limited by the electronic device screen size, the electronic device can only present a display interface for one or a few applications for a period of time. Other applications that are started but the display interface is not shown on the screen of the electronic device are in a background state.
The application program is in a background state, and still occupies system resources of the electronic device, such as memory, CPU computing load and the like, to perform drawing operation. However, the application program in the background state does not provide a visual interface or view for the user, and the drawing operation performed by the application program is an invalid drawing operation, and the application program performs the invalid drawing operation, so that system resources of the electronic device are wasted, and heat and power consumption of the electronic device are increased.
Disclosure of Invention
The application provides a method for executing drawing operation, electronic equipment, a computer program product and a computer readable storage medium, and aims to realize that invalid drawing operation executed by an application program of the electronic equipment is avoided, system resources of the electronic equipment are wasted, and heat and power consumption of the electronic equipment are increased.
In order to achieve the above object, the present application provides the following technical solutions:
in a first aspect, the present application provides a method for executing a drawing operation, applied to an electronic device, where the electronic device is configured with an application program, where the method for executing a drawing operation provided by the present application includes: the electronic equipment determines that an application program requests a vertical synchronization VSYNC signal, and the VSYNC signal is used for triggering the application program to execute drawing operation; the electronic equipment judges that the application program is in a background state and performs invalid background drawing; the electronic device prohibits the application from requesting the VSYNC signal.
From the above, it can be seen that: the electronic device determines whether the application program should prohibit the application of the VSYNC signal by determining whether the application program is in a background state and determining whether the application program is performing invalid background drawing. When the application program is in a background state and invalid background drawing is performed, the electronic equipment prohibits the application program from requesting a VSYNC signal, so that the application program is prevented from executing drawing operation to refresh the interface, system resources of the electronic equipment are wasted, and heat and power consumption of the electronic equipment are increased.
In one possible implementation, before the electronic device prohibits the application from requesting the VSYNC signal, the method for performing the drawing operation further includes: the electronic device determines that the application is a third party application, which is not an application that is self-contained in the electronic device system.
In the above possible embodiments, the request VSYNC signal cannot be prohibited because the system application and the system service of the electronic device have a need for a display interface when they are in the background state. Therefore, before the electronic device prohibits the application from requesting the VSYNC signal, it is determined that the application that requests the VSYNC signal is the third application.
In one possible implementation, the manner in which the electronic device determines that the application is in the background state includes: the electronic equipment acquires a flag bit configured by an application program, wherein the flag bit configured by the application program is synchronous with the state of the application program; the electronic equipment determines whether the application program is in a background state or not by using a flag bit configured by the application program; the flag bit configured by the application program is a first value, and the electronic device determines that the application program is in a background state.
In the above possible embodiments, the flag bit configured by the electronic device for the application is synchronized with, i.e. follows, the state of the application. The application program is in a background state, the flag bit is a first value, such as false, the application program is in a foreground state, and the flag bit is a second value, such as true.
In one possible implementation, the manner in which the electronic device determines that the application is in the background state includes: the electronic equipment judges whether the application program is in a background state or not by utilizing parameters in a file system of the application program; the method comprises the steps that parameters in a file system of an application program are larger than a first numerical value, and the electronic equipment determines that the application program is in a background state; the electronic equipment judges whether the application program is in a background state or not according to the parameters of the application program by utilizing the system process of the electronic equipment; the system process of the electronic device determines that the application program is in a background state aiming at the fact that the parameter of the application program is larger than a second numerical value; or the electronic equipment judges whether the application program is in a background state or not by utilizing the variable in the application program process; the electronic device determines that the application program is in a background state.
In one possible implementation, the manner in which the electronic device determines that the application is in the background state includes: the method comprises the steps that the electronic equipment obtains a flag bit configured by an application program, parameters in a file system of the application program, at least one of parameters of a system process of the electronic equipment aiming at the application program and variables in the application program process, wherein the flag bit configured by the application program is synchronous with the state of the application program; the electronic equipment determines whether the application program is in a background state or not according to the flag bit configured by the application program, parameters in a file system of the application program and at least one of the parameters of the application program and variables in the application program process by a system process of the electronic equipment; the flag bit configured by the application program is a first value, the parameters in the file system of the application program and the system process of the electronic equipment are at least one of the parameters of the application program and the variables in the application program process, so that the requirement that the application program is in a background state is met, and the electronic equipment determines that the application program is in the background state.
In one possible implementation, the electronic device determining a manner in which the application program is rendering in the background that is invalid includes: the electronic equipment judges whether the number of times of drawing completed by the application program in a preset time period reaches a threshold value or not; and the electronic equipment judges that the number of times of drawing completion of the application program in a preset time period reaches a threshold value, and determines that the application program is carrying out invalid background drawing.
In one possible implementation, the electronic device determines that the application program further includes, before performing the invalid post-effect drawing: when the electronic device determines that the application program requests the VSYNC signal, the shielding interval is not opened, wherein the shielding interval is opened, and the electronic device prohibits the application program from requesting the VSYNC signal in a time period indicated by the shielding interval.
In one possible implementation, after the electronic device prohibits the application from requesting the VSYNC signal, further comprising: the electronic device opens the shielding interval.
In the possible implementation manner, the electronic device sets the shielding interval, and after the electronic device opens the shielding interval, the application program can request the VSYNC signal for multiple times in the shielding interval to perform background drawing, which can be all disabled.
In one possible implementation, after determining that the application applies to request the vertical synchronization VSYNC signal, the electronic device further includes: and if the electronic equipment judges that the application program is in a background state and the shielding interval is in an open state, the application program is forbidden to request the VSYNC signal.
In one possible implementation, before the electronic device prohibits the application from requesting the VSYNC signal, the method further includes: the electronic device determines when the application applies for the VSYNC signal, outside of the background delay interval.
In the above possible embodiments, when the application program is in the background state, the request VSYNC signal cannot be inhibited based on the occurrence of a window requirement for displaying the application program for a certain period of time, so the electronic device needs to determine the time when the application program requests the VSYNC signal before the application program is inhibited from requesting the VSYNC signal, and the time is outside the background delay interval.
In one possible implementation, after determining that the application applies to request the vertical synchronization VSYNC signal, the electronic device further includes: the electronic equipment judges that the application program is in a background state, determines that the application program is not out of a background delay interval when the application program applies for the VSYNC signal, cuts a preset time of the background delay interval, and allows the application program to request the VSYNC signal within the preset time of the background delay interval.
In one possible embodiment, the method further comprises: the electronic equipment determines that an application program applies for drawing; and if the electronic equipment judges that the application program is in the background state and the invalid background drawing is performed, the application program is forbidden to request the VSYNC signal.
In the above possible embodiments, the application program may refer to the application request VSYNC signal when executing a plurality of processes. If the application program is in a background state, and the application program application request VSYNC signal is a request drawing flow executed by the application program, a problem that SyncBArrier always exists will occur. The SyncBArrier problem can cause that when an application program is switched from a background state to a foreground state, a synchronous message in a drawing request flow is blocked and cannot be executed, and further the application program cannot apply a VSYNC signal, so that a screen of a picture displayed on a screen of the electronic equipment by the application program is fixed. Therefore, when the electronic device determines that the application program requests drawing, the electronic device also determines that the application program is in a background state and performs invalid background drawing, and the application program is prohibited from requesting the VSYNC signal.
In a second aspect, the present application provides an electronic device comprising: one or more processors, memory, and a display screen; a memory and a display screen coupled to the one or more processors, the memory for storing computer program code, the computer program code comprising computer instructions which, when executed by the one or more processors, cause the electronic device to perform the method of performing a drawing operation as claimed in any one of the first aspects.
In a third aspect, the present application provides a computer-readable storage medium storing a computer program, which when executed, is specifically adapted to carry out an execution method of performing a drawing operation according to any one of the first aspects.
In a fourth aspect, the present application provides a computer program product which, when run on a computer, causes the computer to perform the method of performing a drawing operation as claimed in any one of the first aspects.
Drawings
Fig. 1 is a display diagram of an application program configured by a mobile phone in a foreground state and a background state according to an embodiment of the present application;
fig. 2 is a hardware configuration diagram of an electronic device according to an embodiment of the present application;
fig. 3 is a software architecture diagram of an electronic device according to an embodiment of the present application;
FIG. 4 is a timing diagram illustrating the setting of the flag boolean isVisible when a third party application of the electronic device is switched to a foreground state;
FIG. 5 is a timing diagram illustrating the setting of the flag boolean isVisible when a third party application of the electronic device is switched to a background state;
FIG. 6 is a timing diagram of state switching and background drawing detection of an application according to an embodiment of the present application;
FIG. 7 is a flowchart of a method for performing a drawing operation according to an embodiment of the present application;
FIG. 8 is a flowchart of an electronic device detecting whether an application satisfies feature recognition for background rendering according to an embodiment of the present application;
FIG. 9 is a flowchart of a method for performing a rendering operation according to another embodiment of the present application;
FIG. 10 is a timing chart of background drawing detection provided by an embodiment of the present application;
fig. 11 is a flowchart of a method for performing a drawing operation according to another embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. The terminology used in the following examples is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in the specification of the application and the appended claims, the singular forms "a," "an," "the," and "the" are intended to include, for example, "one or more" such forms of expression, unless the context clearly indicates to the contrary. It should also be understood that in embodiments of the present application, "one or more" means one, two, or more than two; "and/or", describes an association relationship of the association object, indicating that three relationships may exist; for example, a and/or B may represent: a alone, a and B together, and B alone, wherein A, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship.
Reference in the specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," and the like in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise.
The plurality of the embodiments of the present application is greater than or equal to two. It should be noted that, in the description of the embodiments of the present application, the terms "first," "second," and the like are used for distinguishing between the descriptions and not necessarily for indicating or implying a relative importance, or alternatively, for indicating or implying a sequential order.
Currently, electronic devices such as mobile phones are configured with a plurality of application programs. The state of an application can be divided into a foreground state and a background state according to whether the application is directly interacted with a user. The application is in a foreground state with its interface visible to the user, who can enter operations on the interface of the application. The application is in a background state with its interface invisible to the user.
In general, if the application satisfies any one of the following three conditions, the state of the application is a foreground state, otherwise the state of the application is a background state. Wherein, three conditions are respectively: the application has visible Activity (Activity), to which the application has foreground services, and other foreground state applications are associated.
By way of example, fig. 1 shows a display of an application program of a mobile phone configuration in a foreground state and a background state.
Fig. 1 (a) shows an interface of a telephone application in a foreground state. The user can instruct the mobile phone to open the telephone application by clicking an icon of the telephone application on the screen of the mobile phone, pressing a specific physical key or key combination, inputting voice, a blank gesture and the like. After the telephone application is started, the telephone application is in a foreground state, and the interface of the telephone application can be displayed on the screen of the mobile phone.
After the application is started, if the user enters an operation on the mobile phone screen, the application is exited. However, if the process of the application is not released, the state of the application is switched to the background state. Of course, the user can also input operation on the mobile phone screen to search the application program in the background state in the mobile phone.
Illustratively, as shown in (a) of fig. 1, the user inputs a slide-up operation at the lower edge of the screen of the mobile phone, and the mobile phone displays the launched application on the screen in response to the slide-up operation input by the user. The application that is launched can be understood as: the mobile phone runs a process with an application program, and the process of the application program is not released. Thus, the launched application displayed on the screen will include: an application in a background state, and an application in a foreground state. Illustratively, (b) in fig. 1 illustrates a plurality of launched applications displayed on the mobile phone screen. The user can implement a sliding display of the interfaces of the plurality of launched applications by inputting a sliding operation on the presentation interface of the plurality of launched applications presented in (b) of fig. 1. The plurality of launched applications shown in fig. 1 (b) and (c) are in a foreground state for the telephony application, and in a background state for the information application and gallery application.
It should be noted that, the user may also input a click operation on the interface of the application program on the display interfaces of the plurality of started application programs shown in (b) in fig. 1, so as to control the mobile phone screen to display the interface of the application program in full screen. Of course, if the mobile phone screen displays the interface of the application program in the background state in full screen, the state of the application program is switched to the foreground state.
After each application is started, when the application needs to show a visual interface or view for the first time, at least one dancer (chord) belonging to the application is generated.
When an application needs to refresh an interface or view, the colorigraph will request a Vertical Synchronization (VSYNC) signal from the image synthesizer (Surface player). After receiving the VSYNC signal sent by the Surface player, the chord loader may start to perform the drawing operation.
Surface Flinger is typically provided in a system library of a software framework of an electronic device for generating a layer of an interface or view of an application when called by the application. In some embodiments, the Surface Flinger generates the software VSYNC model based on receiving a hardware VSYNC signal sent by the display driver. The software VSYNC model is used for generating a VSYNC signal according to a VSYNC period which is simulated by the software VSYNC model based on a hardware VSYNC signal when a request sent by an application program is received, wherein the VSYNC signal is used for controlling the rhythm of drawing and rendering of a display picture and layer composition, namely controlling the rhythm of the application program for executing drawing operation, and naturally triggering the application program to execute drawing operation.
The software VSYNC model receives a plurality of hardware VSYNC signals, and simulates a VSYNC period according to the frequency of the received hardware VSYNC signals.
After receiving the VSYNC signal, the chord graph can process event tasks of the application program through a doFrame callback method so as to complete drawing operation. Typically, the event tasks of an application may include four event tasks. The four event tasks are CALLBACK INPUT, CALLBACK ANIMATION, CALLBACK TRAVERSAL and CALLBACK COMMIT, respectively. The doFrame callback method comprises four doCallBacks callback methods which are respectively used for processing the four event tasks. Of course, after receiving the VSYNC signal, the chord callback method is not limited to processing the four event tasks.
The callback_input is an INPUT event task, wherein the INPUT event task is data for an application program to package and distribute an INPUT event to a chord. The input event may be a user interaction with the application program received by the application program, for example, the input event may be a user clicking a certain interactable control of the application program, or a user sliding (up-down sliding, left-right sliding, etc.) on an interface of the application program, or a voice input of the user, etc., which is not limited herein. After determining the input event, the application program performs preliminary processing on the input event, generates an input event task corresponding to the input event, and transmits the input event task to the chord.
CALLBACK _ ANIMATION is an ANIMATION event task that is data required by an application to calculate an ANIMATION (ANIMATION). Wherein, the animation may include: view Animation (View Animation), frame Animation (Drawable Animation), attribute Animation (Property Animation), and the like.
CALLBACK TRAVERSAL is a layout event task for participating in the drawing data of a cholographer's computational view or interface. Wherein the computationally determined rendering data may be submitted to other modules of the application program to determine the width, height, location, shape, etc. of the display content in the view.
The callback_commit is a task of submitting an event, and is used for marking that the chord graph completes a drawing operation corresponding to a certain vertical synchronization signal.
Electronic equipment such as a mobile phone and the like cannot judge whether an application program requesting the VSYNC signal really needs to carry out drawing operation or not, and any application program of the electronic equipment can distribute the VSYNC signal for the Surface Flinger after requesting the VSYNC signal from the Surface Flinger. And, when using the electronic device, the user may open a plurality of applications. However, limited by the size of the screen of the electronic device, at a certain moment, the user can only show one or a few interfaces of the application program on the screen, but the state of the application program which is started but has its interface not shown on the screen can be switched to the background state. For an application program in a background state, since the progress of the application program is not released, the application program still holds the chord, and when the application program performs certain operations in the background, the application program also triggers the chord to perform drawing operations.
Since the application in the background state has no view or interface available to be presented to the user, the result of the application in the background state performing the drawing operation is not perceived by the user. In addition, since the chord of the application in the background state is only distributed with the animation event task, the application in the background state actually only processes the animation event task when performing the drawing operation. Therefore, the drawing operation performed by the application in the background state can be regarded as an invalid drawing operation.
For a user, the electronic device displays an interface of an application program, which is necessary to perform a drawing operation to refresh the interface; and when the electronic equipment closes the display of the application program interface and before the electronic equipment displays the interface of the application program again, the application program executes drawing operation to refresh the interface, so that the system resources of the electronic equipment are wasted, and the heat and the power consumption of the electronic equipment are increased.
Based on this, the embodiment of the application provides a method for executing a drawing operation, so as to realize that when an application program requests a drawing or VSYNC signal, the application program is detected to be in a background state and belongs to a third party application program, and the application program is prohibited from requesting the VSYNC signal if the request drawing or VSYNC signal is a background drawing operation to be invalidated.
Wherein the third party application is distinct from the system application. The system application program refers to an application program pre-installed to the electronic equipment, and belongs to the application program of the electronic equipment system. The electronic equipment is started for the first time, and the desktop of the electronic equipment is provided with icons of system application programs. The third party application refers to an application that is produced by a third party and that requires a user to install on an electronic device.
The execution method of the drawing operation provided by the embodiment of the application can be applied to electronic devices such as mobile phones, tablet computers, notebook computers, ultra-mobile Personal Computer (UMPC), handheld computers, netbooks, personal digital assistants (Personal Digital Assistant, PDA), wearable electronic devices, intelligent watches and the like.
The following describes a hardware structure of an electronic device according to an embodiment of the present application, taking a mobile phone as an example.
Fig. 2 is a composition example of an electronic device according to an embodiment of the present application. As shown in fig. 2, the electronic device 200 may include a processor 210, an internal memory 220, a display 230, an antenna 1, an antenna 2, a mobile communication module 240, a wireless communication module 250, and the like.
It is to be understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic apparatus 200. In other embodiments, the electronic device 200 may include more or fewer components than shown, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
Processor 210 may include one or more processing units such as, for example: the processor 210 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, a smart sensor hub (sensor hub) and/or a neural network processor (neural-network processing unit, NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
A memory may also be provided in the processor 210 for storing instructions and data. In some embodiments, the memory in the processor 210 is a cache memory. The memory may hold instructions or data that the processor 210 has just used or recycled. If the processor 210 needs to reuse the instruction or data, it may be called directly from the memory. Repeated accesses are avoided and the latency of the processor 210 is reduced, thereby improving the efficiency of the system.
The internal memory 220 may be used to store computer executable program code that includes instructions. The processor 210 executes various functional applications of the electronic device 200 and data processing by executing instructions stored in the internal memory 220. The internal memory 220 may include a storage program area and a storage data area. The storage program area may store an application program (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system, etc. The storage data area may store data created during use of the electronic device 200 (e.g., audio data, phonebook, etc.), and so on. In addition, the internal memory 220 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like. The processor 210 performs various functional applications of the electronic device 200 and data processing by executing instructions stored in the internal memory 220 and/or instructions stored in a memory provided in the processor.
In some embodiments, the internal memory 220 stores instructions for performing the execution method of the drawing operation. Processor 210 may implement, by executing instructions stored in internal memory 220, that when an application requests a drawing or VSYNC signal, detecting that the application is in a background state, belonging to a third party application, and that the requesting drawing or VSYNC signal is a background drawing operation to be invalidated, the application is prohibited from requesting the VSYNC signal.
The electronic device implements display functions through the GPU, the display 230, and the application processor, etc. The GPU is a microprocessor for image processing, and is connected to the display 230 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 210 may include one or more GPUs that execute program instructions to generate or change display information.
The display 230 is used to display images, videos, and the like. The display 230 includes a display panel. The display panel may employ a liquid crystal display (liquid crystal display, LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED) or an active-matrix organic light-emitting diode (matrix organic light emitting diode), a flexible light-emitting diode (flex), a mini, a Micro-led, a quantum dot light-emitting diode (quantum dot light emitting diodes, QLED), or the like. In some embodiments, the electronic device may include 1 or N displays 230, N being a positive integer greater than 2.
The wireless communication function of the electronic device 200 can be implemented by the antenna 1, the antenna 2, the mobile communication module 240, the wireless communication module 250, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device 200 may be used to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 2 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 240 may provide a solution for wireless communication including 2G/3G/4G/5G, etc., applied on the electronic device 200. The mobile communication module 240 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA), etc. The mobile communication module 240 may receive electromagnetic waves from the antenna 1, perform processes such as filtering, amplifying, and the like on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 240 may amplify the signal modulated by the modem processor, and convert the signal into electromagnetic waves through the antenna 1 to radiate the electromagnetic waves. In some embodiments, at least some of the functional modules of the mobile communication module 240 may be disposed in the processor 210. In some embodiments, at least some of the functional modules of the mobile communication module 240 may be disposed in the same device as at least some of the modules of the processor 210.
The wireless communication module 250 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (wireless fidelity, wi-Fi) network), bluetooth (BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field wireless communication technology (near field communication, NFC), infrared technology (IR), etc., as applied on the electronic device 200. The wireless communication module 250 may be one or more devices that integrate at least one communication processing module. The wireless communication module 250 receives electromagnetic waves via the antenna 2, frequency-modulates and filters the electromagnetic wave signals, and transmits the processed signals to the processor 210. The wireless communication module 250 may also receive a signal to be transmitted from the processor 210, frequency modulate it, amplify it, and convert it to electromagnetic waves for radiation via the antenna 2.
In addition, above the above components, the foldable electronic device runs an operating system. Such as iOS operating systems, android operating systems, windows operating systems, etc. Running applications may be installed on the operating system.
Fig. 3 is a software architecture block diagram of a foldable electronic device according to an embodiment of the present application.
The layered architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into four layers, from top to bottom, an application layer, an application framework layer, an Zhuoyun row (Android run) and system libraries, and a kernel layer, respectively.
The application layer may include a series of application packages. As shown in FIG. 3, the application package may include applications such as gallery, map, calendar, talk, information, etc.
The application framework layer provides an application programming interface (application programming interface, API) and programming framework for application programs of the application layer. The application framework layer includes a number of predefined functions. As shown in fig. 3, the application framework layer may include a window manager, a content provider, a telephony manager, a resource manager, a notification manager, a view system, surface Flinger API, and the like.
The window manager is used for managing window programs. The window manager can acquire the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen and the like.
The content provider is used to store and retrieve data and make such data accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebooks, etc.
The telephony manager is for providing communication functions of the electronic device. Such as the management of call status (including on, hung-up, etc.).
The resource manager provides various resources for the application program, such as localization strings, icons, pictures, layout files, video files, and the like.
The notification manager allows the application to display notification information in a status bar, can be used to communicate notification type messages, can automatically disappear after a short dwell, and does not require user interaction. Such as notification manager is used to inform that the download is complete, message alerts, etc. The notification manager may also be a notification in the form of a chart or scroll bar text that appears on the system top status bar, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in a status bar, a prompt tone is emitted, the electronic device vibrates, and an indicator light blinks, etc.
The view system includes visual controls, such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, a display interface including a text message notification icon may include a view displaying text and a view displaying a picture.
Surface Flinger API is the interface to the image synthesizer (Surface scaler). The application of the application layer may call and control the Surface Flinger to run through Surface Flinger API.
Android run time includes a core library and virtual machines. Android run time is responsible for scheduling and management of the Android system. In some embodiments of the present application, an application cold start may run in an Android run time, and the Android run time obtains an optimized file state parameter of the application from the running start, and further the Android run time may determine whether an optimized file is outdated due to a system upgrade through the optimized file state parameter, and return a determination result to an application management and control module.
The core library consists of two parts: one part is a function which needs to be called by java language, and the other part is a core library of android.
The application layer and the application framework layer run in a virtual machine. The virtual machine executes java files of the application program layer and the application program framework layer as binary files. The virtual machine is used for executing the functions of object life cycle management, stack management, thread management, security and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: surface manager (Surface manager), three-dimensional graphics processing library (e.g., openGL ES), two-dimensional graphics engine (e.g., SGL), surface Flinger, etc.
The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
The three-dimensional graphic processing library is used for realizing three-dimensional graphic drawing, image rendering, synthesis, layer processing and the like.
The two-dimensional graphics engine is a drawing engine for 2D drawing.
The Surface Flinger is as previously described and will not be described in detail herein.
The kernel layer is a layer between hardware and software. The kernel layer at least contains display drivers and the like. In some embodiments, the display driver is used to control the display screen to display an image.
The hardware layer may include the aforementioned proposed foldable electronic device hardware components. By way of example, fig. 3 illustrates a display screen.
Although the Android system is taken as an example for explanation, the basic principle of the embodiment of the application is also applicable to electronic devices based on iOS, windows and other operating systems.
The following describes a procedure of a method for executing a drawing operation according to an embodiment of the present application with reference to fig. 4.
First, the third party applications in the electronic device are configured with flag bits boolean isVisible for describing the states of the applications of the electronic device. boolean isVisible =true, indicating that the application is in the foreground state; boolean isVisible =false, indicating that the application is in the background state.
Typically, the flag boolean isVisible configured by the third party application may be saved in an activitythread. Of course, the flag boolean isVisible configured by the third party application is not limited to being saved in an actighread.
In the running process of the third party application program in the electronic equipment, the state of the third party application program can be switched from the foreground state to the background state, and the state of the third party application program can also be switched from the background state to the foreground state. When the third party application cuts to the foreground state, the flag boolean isVisible configured by the third party application is set to true; and, when the third party application cuts to the background state, the flag boolean isVisible configured by the third party application is set to false.
The setting of the flag boolean isVisible is described below with reference to fig. 4 and 5 when a third party application of the electronic device switches states. FIG. 4 is a timing diagram illustrating the setting of the flag boolean isVisible when a third party application in the electronic device is switched to a foreground state; fig. 5 is a timing diagram illustrating the setting of the flag boolean isVisible when the third party application is switched to the background state.
The user initiates a third party application in the electronic device and controls the interface to be visible. The electronic device will implement the third party application to switch to the foreground state according to the call relationship between the functions as shown in fig. 4. Initially, the electronic device invokes the dispatchAppVisibility function in the iwindow_stub.java file in the electronic device using the onTransact function in the binder.java file. When the electronic equipment executes to handleAppVisibility, the electronic equipment sets a flag boolean isVisible in an activitythread.java file to true.
It should be noted that, because the third party application program cuts to the foreground state, after the electronic device executes to handleAppVisibility, the third party application program requests the VSYNC signal. Therefore, when the electronic device executes the handleAppVisibility, the electronic device sets the flag boolean isVisible in the activitythread.java file to true, so that the electronic device can avoid that the flag boolean isVisible maintains false, and the electronic device adopts the execution method of the drawing operation provided by the embodiment of the application, and erroneously determines that the third party application program is in a background state, so that the drawing operation of the third party application program is managed and controlled in a mode of prohibiting the request of the VSYNC signal.
The user input operation controls the third party application program to switch to the background state, and the electronic device realizes the third party application program to switch to the background state according to the calling relationship between the functions shown in fig. 5. When the electronic device executes to the updateProcessState, the electronic device sets a flag boolean isVisible in the activitythread. In some embodiments, when the electronic device executes to the updateProcessState, the flag boolean isVisible may be set to false after a delay. In some embodiments, the delay may be 1 second. In other embodiments, when the electronic device executes to the updateProcessState, the flag boolean isVisible is set to false, but the flag is set to false, and the electronic device is delayed for a period of time to be active. The period of time for the delay may also be 1 second.
It should be noted that, the electronic device delays for a period of time, and then sets flag boolean isVisible to false, or sets flag boolean isVisible to false, and delays for a period of time to play a role, so as to avoid UI actions near activityproof. The third party application program cuts to the background state, and the window needs to be displayed based on some reasons, such as the bullet of the input method type third party application program in the background state, the bullet of the third party application program in the background state needs to suspend the window, and the like. After the third party application program cuts to the background state, the flag bit boolean isVisible is set to false after a period of time is delayed, so that the situation that the third party application program is determined to be in the background state due to the fact that the flag bit boolean isVisible is set to false, and the drawing operation of the third party application program is controlled in a mode of prohibiting the request of the VSYNC signal, and the operation of displaying the window of the third party application program cannot be achieved can be avoided.
Of course, when the system application in the electronic device is switched to the foreground state, the electronic device also executes the call relationship between functions as shown in fig. 4, and when the system application is switched to the background state, the electronic device also executes the call relationship between functions as shown in fig. 5. In the embodiment of the application, the third party application program is taken as an example for introduction.
The reason for the third party application configuration flag boolean isVisible in the electronic device to flag the state of the third party application is described below.
A third party application in the electronic device is launched by the user and when the third party application needs to refresh the interface or view, the chord player requests the VSYNC signal from the Surface Flinger. After receiving the VSYNC signal sent by the Surface player, the chord player starts to execute drawing operation. For ease of illustration, the third party application in the electronic device that applies for the VSYNC signal is referred to hereinafter as the first application.
In order to avoid that the first application program performs a drawing operation (which may be simply referred to as background drawing) that is not perceived by the user when in the background state, after the first application program requests the VSYNC signal, it needs to determine whether the state in which the first application program is located is the background state.
In some embodiments, the electronic device may employ a read node to determine the state of the first application. Specifically, the electronic device may read a file system of the first application program, where the file system is provided by a Linux kernel, and includes: information of a process of the first application. The parameter oom _score_adj in the file system is used to indicate the priority of the memory resource of the Linux process, and may reflect the state of the first application program. oom _score_adj ranges from-1000 to +1000, with smaller values indicating a higher priority for the process memory resources of the first application. In some embodiments, the value of oom _score_adj is equal to or less than 0, which may indicate that the first application is in the foreground state, and the value of oom _score_adj is greater than 0, which may indicate that the first application is in the background state.
It should be noted that the electronic device may read oom _score_adj along the path/proc/self/oom _score_adj.
In other embodiments, the electronic device may read the system_server process to determine the state of the first application from the value of oom _adj for oom _adj of the first application. oom _adj is substantially equivalent to the parameter oom _score_adj in the file system, and may also reflect the state of the first application.
The oom _adj range of the system_server process is: -1 to 20. In some embodiments, the oom _adj of the system_server process has a value less than or equal to 6, which may indicate that the first application is in a foreground state; a value of oom _adj of the system_server process greater than 6 may indicate that the first application is in a background state.
In other embodiments, the electronic device may also read a variable in the first application process, commonly referred to as actigthrough thread. The variable remains completely synchronized with oom _adj of the system_server process, and has the same value in the range: -1 to 20. In some embodiments, the value of actigthrough, java #mlastprocessstate is less than or equal to 6, which may indicate that the first application is in a foreground state; an actighread.java#mlastprocessstate value greater than 6 may indicate that the first application is in a background state.
The electronic device determines the state of the first application program by using the variable actigthrough.
It should be noted that, the variable activitythread.java#mlastprocessstate of the first application program, the electronic device adopts the function updateprocessssstate () to maintain, i.e. implement operations such as modification of the variable value.
Therefore, the electronic device can determine whether the variable actigeatable thread.java#mLastProcessState of the first application program changes by calling the function updatProcessState (), and when the variable changes, the electronic device reads the value of the variable again so as to determine the state change of the first application program in real time through the read value of the variable. In addition, when determining that the state of the first application program changes, the electronic device may determine that the first application program is in a foreground state or a background state through the flow of fig. 4 and 5, and then read the variable of the first application program, and determine the state of the first application program through the value of the variable.
However, the electronic device adopts the methods provided in the foregoing three embodiments to determine that the first application program of the electronic device is in the background state, and then prohibits the first application program from requesting the VSYNC signal, which causes a problem that the third party application program cannot be started during actual execution.
The inventors found that: in the starting process of the electronic equipment, the third party application program is initialized and belongs to a background state. Of course, the parameters oom _score_adj, oom _adj and variables in the third party application process in the file system, which are set forth in the above three embodiments, all indicate that the third party application is in the background state. Therefore, when the electronic device prohibits the first application program from requesting the VSYNC signal, the third party application program is started by the user to switch from the background state to the foreground state, and the third party application program cannot complete the drawing operation, i.e., cannot normally start operation, because the VSYNC signal is prohibited from requesting.
Thus, the electronic device configures the flag boolean isVisible set forth above for the third party application, and the flag is initially set to true. In the initialization stage of the third party application program, the electronic device can read the flag bit boolean isVisible configured by the third party application program, and because the flag bit boolean isVisible is set to true, the electronic device recognizes that the third party application program is in a foreground state, and does not prohibit the request of the third party application program for the VSYNC signal, thereby avoiding the problem of incapability of normal starting.
Referring to fig. 6, in the initialization stage, the flag boolean isVisible is set to true, and the electronic device can identify that the third party application is in a foreground state according to the flag boolean isVisible set to true. Based on this, the electronic device will not detect the background drawing, i.e. the result of detecting the background drawing is false. When the third party application is initialized, the flag boolean isVisible will remain set to true when it is started in the foreground state, and because the flag boolean isVisible is true, the electronic device will not detect the background drawing, i.e. the result of detecting the background drawing is false.
It should be noted that, when the third party application program switches to the background state to perform background drawing, the electronic device delays setting the flag boolean isVisible to false for a period of time, for example, delay 1 second in fig. 6. Therefore, when the third party application has been switched to the background state, the flag boolean isVisible will also remain set to true, and the electronic device will not detect the background drawing, i.e. the detection result of the background drawing is false.
After the electronic device sets the flag bit background to false, the electronic device starts to detect background drawing, and after a period of time of detection of the background drawing, the background drawing can be detected, that is, a detection result of the background drawing is true.
Fig. 7 illustrates a method for executing a drawing operation according to an embodiment of the present application. As shown in fig. 7, the method for executing the drawing operation provided in this embodiment includes the following steps:
s701, a first application program of the electronic device applies for a request VSYNC signal.
The first application program is any one of a plurality of third party application programs configured for the electronic device. Of course, the first application may also be a system application configured by the electronic device. In this embodiment, the first application is taken as an example of a third party application.
The first party application is launched by the user and when the first application needs to refresh the interface or view, the chord player requests the VSYNC signal from the Surface player.
Therefore, the first application mentioned in this step requests the VSYNC signal, which can be understood that when the first application needs to refresh the interface or the view, the first application's chord requests the VSYNC signal from the Surface player, i.e., the electronic device needs to execute the chord #schedule vsynclocked () method.
S702, the electronic device judges whether the first application program is in a background state.
As previously described, the first application is configured with a flag boolean isVisible. The electronic device may read the flag bit boolean isVisible and determine whether the first application is in a background state via the flag bit boolean isVisible.
In some embodiments, the flag boolean isVisible is true, and the electronic device determines that the first application is in a foreground state, i.e., not in a background state; the flag boolean isVisible is false, and the electronic device determines that the first application is in the background state.
The electronic device may also read a file system of the first application program, and determine whether the first application program is in a background state according to a parameter oom _score_adj in the file system. In some embodiments, the value of oom _score_adj is equal to or less than 0, which may indicate that the first application is in the foreground state, i.e., not in the background state, and the value of oom _score_adj is greater than 0, which may indicate that the first application is in the background state.
The electronic device may also read the system_server process to determine the state of the first application from the value of oom _adj for oom _adj of the first application. In some embodiments, the oom _adj of the system_server process has a value of 6 or less, which indicates that the first application is in a foreground state, i.e., not in a background state; a value of oom _adj of the system_server process greater than 6 may indicate that the first application is in a background state.
The electronic device may also read an actigluthread.java#mlastprocessstate variable in the first application process, and determine whether the first application is in a background state by the actigluthread.java#mlastprocessstate variable. In some embodiments, the value of actigthrough.java#mlastprocessstate is less than or equal to 6, which may indicate that the first application is in a foreground state, i.e., not in a background state; an actighread.java#mlastprocessstate value greater than 6 may indicate that the first application is in a background state.
It should be noted that, the electronic device may also determine, in combination with the flag bit boolean isVisible, whether the first application is in the background state according to at least one of the parameters oom _score_adj and the system_server process in the file system, for the oom _adj of the first application and the actigthrough.
The electronic device determines that the flag bit boolean isVisible is false, and the parameter oom _score_adj and the system_server in the file system meet the requirement of the background state for at least one of oom _adj of the first application program and an actigthrough.java#mLastProcessState variable in the first application program, and then the electronic device determines that the first application program is in the background state. Otherwise, the electronic device determines that the first application program is in a foreground state.
Illustratively, the electronic device combines the flag boolean isVisible and the actigthrough.java#mlastprocessstate variable in the first application process to determine whether the first application is in a background state.
If the electronic device determines that the flag bit boolean isVisible is false, and the actigthrough. Java#mLastProcessState variable in the first application process is greater than 6, the electronic device determines that the first application is in a background state.
In the embodiment of the present application, if the electronic device determines that the first application is in the background state, the following step S703 is executed; if the electronic device determines that the first application is not in the background state, the following step S710 is executed.
S703, the electronic device judges whether the first application program is a third party application program.
In some embodiments, the electronic device may include a parameter in the process of the first application that is used to indicate that the first application is a third party application. If the process of the electronic equipment in the first application program comprises parameters, judging that the first application program is a third-party application program.
In other embodiments, the electronic device may also determine whether the first application is a third party application by determining that the first application is not a system services isSystem nor a system applications isSystem app. Of course, the electronic device may determine that the first application is a system service, or is a system application, and may determine that the first application is not a third party application.
It should be noted that, whether the electronic device may include a parameter in the process of the first application program, where the parameter may be flag: application info. FLAG_SYSTEM. If the process of the electronic device in the first application program includes a parameter flag: and judging that the first application program is a SYSTEM application program.
Parameter flag: the application info. FLAG_SYSTEM is a process which is assigned in the SYSTEM application program installation scanning stage and is packaged and transmitted to the SYSTEM application program in the bindApplication stage of the SYSTEM application program starting.
It should be further noted that the system service is also configured with a variable in advance, and the electronic device may determine whether the first application program is the system service by whether the first application program is configured with a variable for explaining that it is the system service.
In the embodiment of the present application, if the electronic device determines that the first application is a third party application, the following step S704 is executed; if the electronic device determines that the first application is not the third party application, the following step S710 is performed.
It should be noted that fig. 7 shows an execution sequence of step S702 and step S703. Of course, the execution order of step S702 and step S703 is not limited to that shown in fig. 7. In some embodiments, step S702 and step S703 may be performed in parallel, or the electronic device may perform step S703 before performing step S702.
S704, the electronic equipment judges whether the electronic equipment is in a shielding interval or not.
The electronic device is configured with a mask interval that requests that the VSYNC signal be disabled, which mask interval can be turned on and off. After the mask interval is opened, the request for the VSYNC signal by the third party application program that occurs in the mask interval is prohibited.
The mask interval may be understood as a period of time that prohibits a third party application from requesting the VSYNC signal. In some embodiments, the mask interval may be set to 2 seconds. Of course, it is not limited to being set to only 2 seconds.
The electronic device determines whether the first application program is in the shielding interval, and it can be understood that the first application program applies for the moment of requesting the VSYNC signal, and whether the electronic device opens the shielding interval.
Of course, the electronic device opening the shielding interval is conditionally required. In some embodiments, if the electronic device determines that the first application program satisfies the feature recognition of the background drawing, the shielding interval is opened. The manner in which the electronic device determines that the first application program satisfies the feature recognition of the background drawing may be referred to in step S707 below, which is not described here too much.
It should be noted that, after the electronic device sets the shielding interval and the electronic device opens the shielding interval, the request of the first application program for applying the VSYNC signal is all prohibited. Therefore, when the first application program is a third party application program and is in a background state, and the request VSYNC signal is used for background drawing, the first application program can realize that the first application program can request the VSYNC signal for a plurality of times in the shielding interval to carry out background drawing, and the first application program can be forbidden.
Typically, the first application requests the VSYNC signal for background rendering, which may occur multiple times. Basically, each UI component of the first application will request a VSYNC signal, and the first application may include multiple UI components. Thus, by setting the mask interval, it can be achieved that each UI component request VSYNC signal is disabled.
In the embodiment of the present application, if the electronic device determines that the electronic device is in the shielding interval, the following step S708 is executed; if the electronic device determines that the shielding section is not present, the following step S705 is executed.
Of course, step S704 may also be a step that is selectively executed, and in some embodiments, after the electronic device determines that the first application is a third party application, step S705 may be directly executed without executing step S704.
And S705, the electronic equipment judges whether the background delay interval is outside.
As previously described, the first application of the electronic device is configured with a flag bit boolean isVisible. When the first application program is switched to a background state, the electronic equipment delays a period of time to set a flag boolean isVisible as false; alternatively, the electronic device sets flag boolean isVisible to false, but flag boolean isVisible set to false is delayed for a certain period of time to be active. This period of delay may be referred to as a background delay interval.
The electronic device determines whether the first application program is out of the background delay interval, which can be understood as whether the electronic device determines that the time when the first application program requests the VSYNC signal is out of the background delay interval. For example, the background delay interval is set to 1 second, and the electronic device determines whether the time when the first application program requests the VSYNC signal is the time after the electronic device sets the flag boolean isVisible to false and after 1 second passes; or the time after the electronic device sets the flag boolean isVisible to false after a delay of 1 second.
In the embodiment of the present application, if the electronic device determines that the electronic device is outside the background delay interval, the following step S706 is executed; if the electronic device determines that the background delay interval is not exceeded, the following step S709 is executed.
Of course, step S705 may also be a step selectively executed, and in some embodiments, after the electronic device determines that the first application is a third party application and is not in the shielding interval, the electronic device may directly execute step S706 without executing step S705 and step S709 described below. In other embodiments, after determining that the first application is the third party application, the electronic device may directly execute step S706 without executing step S704, step S705, and step S709 described below.
S706, the electronic device judges whether the first application program meets the feature recognition of background drawing.
Background renderings by the first application may include invalid background renderings, which may be understood to be that the rendered interface is not visible to the user, and valid background renderings. And effectively drawing in the background, including a background popup window and the like, wherein the drawn interface can be visible to a user. Therefore, the electronic device determining whether the first application program satisfies the feature recognition of the background drawing refers to determining whether the first application program satisfies the feature recognition of the invalid background drawing.
If the first application program is in a background state and frames are continuously brushed for a certain time, the first application program can be determined to be in invalid background drawing, and the first application program is not in the valid background drawing such as background popup. Based on the result, the electronic device judges that the first application program achieves the threshold value in the number of times of drawing completion in a certain time period, and determines that the first application program meets the characteristic recognition of invalid background drawing. For example, the electronic device may set the number of times the drawing is completed for 3 seconds to 30 times (may also be referred to as refreshing 30 frames within 3 seconds) as a criterion for feature recognition of background drawing. Of course, other determination criteria may be set, for example, the number of times of drawing is completed within 3 seconds reaches 15 times, and the like, and is not particularly limited.
The electronic device may use the accumulated result of the function isVsyncFilter () being invoked over a period of time to detect whether the first application satisfies the feature identification of the background painting. It will be appreciated that the first application program refreshes the screen once and may then call the primary function isVsyncFilter (). And, the function isVsyncFilter () is called once, and the call result is added by 1. Based on this, the electronic device judges that the number of times of drawing completion in 3 seconds reaches 30, it can be understood that: it is determined whether the result of the accumulation called by the function isVsyncFilter () is accumulated for 30 seconds.
In the embodiment of the present application, if the electronic device determines that the first application program satisfies the feature recognition of the background drawing, the following step S707 is executed; if the electronic device determines that the first application program does not meet the feature recognition of the background drawing, the following step S710 is executed.
FIG. 8 illustrates a flow chart of an electronic device determining whether a first application satisfies feature recognition for background painting.
As shown in fig. 8, the electronic device determines that the time period is outside the background delay interval, and may execute step S801 to determine whether the time period is within the characteristic time period. The electronic device determines whether the first application program requests the VSYNC signal within a characteristic time, which is, for example, 3 seconds.
The electronic device determines that the characteristic time is within, and the electronic device executes step S802 to determine whether the characteristic frame number reaches a threshold. In some embodiments, it is understood that the electronic device determining whether the number of feature frames reaches a threshold value may be that the electronic device determines whether the number of times the first application program refreshes the screen reaches a threshold value, which is, for example, 30 times.
The electronic equipment judges that the characteristic frame number reaches a threshold value, and then the first application program executes the refreshing of the characteristic frame number in the characteristic time to reach the threshold value, and then the first application program executes invalid background drawing. Accordingly, the electronic device recognizes that the first application satisfies the feature recognition of the background drawing, and may execute step S707 in fig. 7.
The electronic device determines that the feature frame number is not within the feature time, and determines that the feature frame number does not reach the threshold, and the electronic device performs step S803, resets the feature frame number count, and counts the feature time. Of course, the electronic device may also recognize that the first application does not satisfy the feature recognition of the background painting, and may perform step S710 in fig. 7.
Resetting the feature frame count and the feature time count may be understood as the electronic device updating the feature frame count and the feature time count.
The electronic device updating the feature frame number count means: the electronic equipment performs the drawing action aiming at the VSYNC signal requested by the first application program, and performs the feature frame number counting and 1 adding, namely the number of times of refreshing the screen of the first application program reflected by the last feature frame number is added with 1.
The updating of the feature time timing by the electronic device means that: the electronic device delays the time interval between the time of the first application program applying the VSYNC signal and the time of the first application program applying the VSYNC signal last time on the basis of the characteristic time timing extension, namely the accumulated time of the first application program refreshing screen reflected by the last characteristic time.
The step S801 and the step S802 are not limited to the execution sequence shown in fig. 8, and may be executed in parallel, or the step S802 may be executed first and then the step S801 may be executed.
It should be noted that, the method for detecting whether the first application program is drawn in the background shown in fig. 8 may also be executed after the electronic device detects that the first application program is in the background state. Namely: the electronic device detects that the first application is in the background state, and then executes steps S801 to S803.
S707, the electronic device prohibits the first application request VSYNC signal, and opens the shielding interval for 2 seconds, wherein the first application request VSYNC signal in the shielding interval is prohibited.
If the electronic equipment judges that the first application program meets the feature recognition of the background drawing, the first application program is invalid and wastes the system resources of the electronic equipment when the background drawing is executed, and the background drawing of heating and power consumption of the electronic equipment is increased. Thus, the electronic device disables the first application from requesting the VSYNC signal and opens the mask interval for 2 seconds. Of course, as previously described, after the mask interval is opened, the behavior of the first application request VSYNC signal that occurs within the mask interval is disabled.
Also, the electronic device opening the shielding section for 2 seconds is an exemplary illustration, and the electronic device is not limited to only opening the shielding section for 2 seconds, but may be other time periods.
S708, the electronic device prohibits the first application from requesting the VSYNC signal.
Wherein the electronic device disabling the first application from requesting the VSYNC signal may be understood as: the electronic equipment prohibits the first application program from sending an instruction for requesting a VSYNC signal to the Surface Flinger; alternatively, the electronic device discards the first application generated instruction requesting the VSYNC signal.
S709, the electronic equipment cuts off a background delay interval for 1 second.
The electronic device determines that the first application is in the background state and that the first application is not outside the background delay interval, which means that the first application has just been switched to the background state, and therefore needs to be delayed for a period of time. The electronic device may switch the first application to the background state within 1 second of the background delay interval, and the electronic device recognizes that the first application is switched to the background state after delaying for 1 second.
It should be noted that, in the process of cutting the background delay interval for 1 second, the step S710 may be executed. Because the first application may normally request the VSYNC signal within 1 second of the acquired delay interval. In this way, as described above, it is possible to avoid that the electronic device recognizes the first application program as a background state due to the flag bit boolean isVisible being set to false, and manages the drawing operation of the first application program in such a way that the request VSYNC signal is prohibited, so that the operation of displaying the window of the first application program cannot be implemented.
The electronic device cuts the background delay interval for 1 second, and it is understood that this is an exemplary illustration, and the electronic device is not limited to cutting the background delay interval for 1 second, and may be other time periods.
S710, the electronic device controls the first application program to normally request the VSYNC signal.
The electronic device controls the first application program to normally request the VSYNC signal, which can be understood as: the electronic device controls the first application program to send an instruction for requesting a VSYNC signal to the Surface Flinger. Of course, surface Flinger will return the VSYNC signal to the first application at the screen refresh rate.
It should be further noted that, when the first application program requests the VSYNC signal to draw, an mframe schedule flag is used to ensure that the request of the VSYNC signal matches a doFrame, and one request of the VSYNC signal must correspond to one doFrame. Literally, mframeschedule is understood to be that a video frame has been requested, i.e., to indicate that the VSYNC signal has been requested, without repeating the request for the VSYNC signal.
When the first application is switched to the background and the electronic device determines that the first application meets the condition of feature recognition of the background drawing, which means that the first application has successfully applied for the VSYNC signal (because the requirement of feature recognition of the background drawing is that the first application continuously brushes frames in the background state), the mframeschedule flag is set to true.
The mFrameScheduled flag is set to true, and the electronic device recognizes that the first application has requested the VSYNC signal and may not apply for the VSYNC signal any more. Therefore, when the first application program is cut to the foreground state, if the mFrameScheduled flag is not set to false, the first application program is displayed on the screen of the electronic device after the first application program is cut to the foreground state.
Based on this, in the embodiment of the present application, after the electronic device performs step S709, the mFrameScheduled flag needs to be set to false. That is, the electronic device sets the mFrameScheduled flag, which can reflect that the first application program does not successfully apply for the VSYNC signal, so as to allow the first application program to apply for the VSYNC signal again.
It should be further noted that, when the first application program executes a plurality of processes, the application request VSYNC signal may be involved. If the first application is in a background state, and the first application applies for the VSYNC signal, which is derived from a scheduleTraversals process (scheduleTraversals process can be understood as a drawing request process) executed by the first application, a problem that exists in the SyncBArrier all the time will occur. When the syncbarier problem causes the first application to switch from the background state to the foreground state, the msg_disptch_app_visual synchronization message in the schedule transition flow is blocked and cannot be executed, and further the first application cannot apply the VSYNC signal, so that the screen of the first application displayed on the screen of the electronic device appears to be fixed.
SyncB carrier is understood to mean a Handler synchronization barrier, in which an electronic device blocks a queue of synchronous messages, processes asynchronous messages first, and does not wait for an asynchronous message to be processed. When the asynchronous message is processed, the electronic device continues to process the synchronous message.
Based on the above, the method for executing the drawing operation provided by the embodiment of the application can also be applied to the drawing process of executing the request for the three-party application program of the electronic equipment.
Fig. 9 illustrates a method for performing a drawing operation according to an embodiment of the present application. As shown in fig. 9, the method for executing the drawing operation provided in this embodiment includes the following steps:
s901, a first application program of the electronic equipment applies for drawing.
The first application program is any one of a plurality of third party application programs configured for the electronic device. Also, the present application is not limited to the third party application, and may be a system application.
The first party application is launched by the user, and when the first application needs to refresh the interface or view, the first application will request drawing, i.e. the first application will execute the viewraotpompl #schedule transitions () method.
S902, the electronic device judges whether the first application program is in a background state.
For the specific implementation of step S902, reference may be made to the content of step S702 in the foregoing embodiment, which is not described herein.
In the embodiment of the present application, if the electronic device determines that the first application is in the background state, the following step S903 is executed; if the electronic device determines that the first application is not in the background state, the following step S910 is executed.
S903, the electronic device judges whether the first application program is a third party application program.
For the specific implementation of step S903, reference may be made to the content of step S703 in the foregoing embodiment, which is not described herein.
In the embodiment of the present application, if the electronic device determines that the first application is a third party application, the following step S904 is executed; if the electronic device determines that the first application is not the third party application, the following step S910 is executed.
It should be noted that fig. 9 shows an execution sequence of step S902 and step S903. Of course, the execution order of step S902 and step S903 is not limited to that shown in fig. 9. In some embodiments, step S902 and step S903 may be performed in parallel, or the electronic device may perform step S903 before performing step S902.
S904, the electronic equipment judges whether the electronic equipment is in a shielding interval or not.
For the specific implementation of step S904, reference may be made to the content of step S704 in the foregoing embodiment, which is not described herein.
S905, the electronic device judges whether the background delay interval is outside.
For the specific implementation of step S905, reference may be made to the content of step S705 in the foregoing embodiments, which is not described herein.
S906, the electronic device judges whether the first application program meets feature recognition of background drawing.
For the specific implementation of step S906, reference may be made to the content of step S706 in the foregoing embodiment, which is not described herein.
It should be noted that, the electronic device may also determine whether the first application program satisfies the feature recognition of the background drawing by using the method for detecting whether the application program performs the background drawing shown in fig. 8.
S907, the electronic device prohibits the first application request VSYNC signal, and opens the shielding interval for 2 seconds, and the first application request VSYNC signal in the shielding interval is prohibited.
For the specific implementation of step S907, reference may be made to the content of step S707 in the foregoing embodiments, which is not described herein.
S908, the electronic device disables the first application from requesting the VSYNC signal.
For the specific implementation of step S908, reference may be made to the content of step S708 in the foregoing embodiment, which is not described herein.
S909, cutting a background delay interval by the electronic equipment for 1 second.
For the specific implementation of step S909, reference may be made to the content of step S709 in the foregoing embodiment, which is not described herein.
S910, the electronic device controls the first application program to normally request the VSYNC signal.
For the specific implementation of step S910, reference may be made to the content of step S610 in the foregoing embodiment, which is not described herein.
It should be noted that, as in the foregoing embodiment corresponding to fig. 7, after the electronic device executes step S908, the mFrameScheduled flag needs to be set to false to allow the first application to reapply the request VSYNC signal.
In combination with the foregoing embodiment content corresponding to fig. 7, and the embodiment content corresponding to fig. 9, it can be seen that: there are two entries for an execution method in which one application program of the electronic device executes a drawing operation.
Referring to fig. 10, when the application program executes the viewraotple #scheduletransals () method and executes the chord #schedulevvsynclofed () method, the electronic device may start the execution method of the drawing operation, that is, the isVsyncFilter shown in fig. 10.
The application program in the electronic device executes the chord#schedule vsynclocked () method or the viewrotoimpl#schedule conveversals () method, and applies for the action of requesting the VSYNC signal, and the electronic device needs to determine whether the application program satisfies the following three conditions. As shown in fig. 10: the electronic device determines that the application is not a system service, i.e.)! isSystem (); judging that the application program is not a system application program-! issystempp (); judging that the application is invisible, namely-! isVisible.
As shown in fig. 10, when all the above three conditions are met, the electronic device determines whether the application program is performing invalid background drawing through the background refresh feature detection.
With further reference to fig. 11, fig. 11 illustrates a flowchart of a method of performing a drawing operation by an electronic device. As can be seen from the principle of analyzing the execution method of the drawing operation performed by the electronic device, the execution method of the drawing operation performed by the electronic device is as shown in fig. 11, and may include the steps of:
s1101, an application of the electronic device applies for a VSYNC signal or applies for drawing.
The application of the electronic device requests the VSYNC signal, which can be understood that when the application needs to refresh the interface or the view, the chord player of the application requests the VSYNC signal from the Surface player, i.e. the electronic device needs to execute the chord player #schedule vsynclocked () method.
An application of the electronic device is launched by a user, and when the application needs to refresh an interface or view, the application requests drawing, i.e., the application is to execute the viewrootpompl #schedule transitions () method.
S1102, the electronic device judges whether the application program is in a background state.
For the specific implementation of step S1102, reference may be made to the content of step S702 in the foregoing embodiment, which is not described herein.
S1103, the electronic device determines whether the application program is a third party application program.
For the specific implementation of step S1103, reference may be made to the content of step S703 in the foregoing embodiment, which is not described herein.
In the embodiment of the present application, when the electronic device is to control the third party application program in the background state, the electronic device does not perform invalid background drawing, so that it is necessary to determine whether the application program is the third party application program.
Of course, the electronic device may control all the application programs of the electronic device not to perform invalid background drawing, and based on this, step S1103 may be a step that is selectively executed.
S1104, the electronic device judges whether the application program performs invalid background drawing.
The electronic device determining whether the application program performs invalid background drawing may refer to feature recognition that the electronic device determines whether the application program satisfies the background drawing. The implementation process may be as in step S706, and will not be described here again.
The electronic device determines that the application is in the background state in step S1102, determines that the application is a third party application in step S1103, and determines that the application is invalid in the background drawing in step S1104, and then the electronic device may execute step S1105. When the electronic device performs step S1102, step S1103, and step S1104, if the determination result of any one of the three determination conditions of step S1102, step S1103, and step S1104 is no, the electronic device may perform step S1106.
Fig. 11 shows one execution sequence of step S1102, step S1103, and step S1104, and of course, step S1102, step S1103, and step S1104 are not limited to the execution sequence shown in fig. 11. Step S1102, step S1103, and step S1104 may be performed in parallel, or in other execution order.
S1105, the electronic device prohibits the application from requesting the VSYNC signal.
For the specific implementation of step S1105, reference may be made to the content of step S708 in the foregoing embodiment, which is not described herein.
S1106, the electronic device control application requests the VSYNC signal normally.
For the specific implementation of step S1106, reference may be made to the content of step S710 in the foregoing embodiment, which is not described herein.
In the method for executing the drawing operation provided by the embodiment of the application, the electronic device determines whether an application program is in a background state or not when the application program is requesting to draw or requesting a VSYNC signal, and determines whether the application program should prohibit the application of the VSYNC signal or not by determining whether the application program is in an invalid background drawing mode or not. When the application program is in a background state and invalid background drawing is performed, the electronic equipment prohibits the application program from requesting a VSYNC signal, so that the application program is prevented from executing drawing operation to refresh the interface, system resources of the electronic equipment are wasted, and heat and power consumption of the electronic equipment are increased.
Another embodiment of the application also provides a computer-readable storage medium having instructions stored therein, which when run on a computer or processor, cause the computer or processor to perform one or more steps of any of the methods described above.
The computer readable storage medium may be a non-transitory computer readable storage medium, for example, a ROM, random Access Memory (RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
Another embodiment of the application also provides a computer program product containing instructions. The computer program product, when run on a computer or processor, causes the computer or processor to perform one or more steps of any of the methods described above.

Claims (12)

1. A method for performing a drawing operation, characterized by being applied to an electronic device configured with an application program, the method comprising:
the electronic equipment determines that an application program requests a vertical synchronization VSYNC signal, and the VSYNC signal is used for triggering the application program to execute drawing operation;
when the electronic equipment determines that the application program requests the VSYNC signal, a shielding interval is not started, wherein the shielding interval is started, and the electronic equipment prohibits the application program from requesting the VSYNC signal in a time period indicated by the shielding interval;
the electronic equipment judges that the application program is in a background state and judges that the number of times of drawing in a preset time period is up to a threshold value when the application program is in the background state;
the electronic device disables the application from requesting a VSYNC signal.
2. The method of claim 1, wherein the electronic device further comprises, before disabling the application from requesting a VSYNC signal:
The electronic device determines that the application program is a third party application program, and the third party application program does not belong to an application program of the electronic device system.
3. The method for performing a drawing operation according to claim 1 or 2, wherein the manner in which the electronic device determines that the application is in the background state includes:
the electronic equipment acquires the flag bit configured by the application program, wherein the flag bit configured by the application program is synchronous with the state of the application program;
the electronic equipment determines whether the application program is in a background state or not by using the zone bit configured by the application program; the flag bit configured by the application program is a first value, and the electronic device determines that the application program is in a background state.
4. The method for performing a drawing operation according to claim 1 or 2, wherein the manner in which the electronic device determines that the application is in the background state includes:
the electronic equipment judges whether the application program is in a background state or not by utilizing parameters in a file system of the application program; the method comprises the steps that a parameter in a file system of an application program is larger than a first numerical value, and the electronic equipment determines that the application program is in a background state;
The electronic equipment judges whether the application program is in a background state or not according to the parameters of the application program by utilizing the system process of the electronic equipment; the system process of the electronic equipment determines that the application program is in a background state aiming at the fact that the parameter of the application program is larger than a second value;
or the electronic equipment judges whether the application program is in a background state or not by utilizing the variable in the application program process; and the electronic equipment determines that the application program is in a background state.
5. The method for performing a drawing operation according to claim 1 or 2, wherein the manner in which the electronic device determines that the application is in the background state includes:
the electronic equipment acquires a flag bit configured by the application program, and at least one of parameters in a file system of the application program, parameters of a system process of the electronic equipment aiming at the application program and variables in the application program process, wherein the flag bit configured by the application program is synchronous with the state of the application program;
The electronic equipment determines whether the application program is in a background state or not according to the flag bit configured by the application program, parameters in a file system of the application program and at least one of the parameters of the application program and variables in the application program process by using a system process of the electronic equipment;
the flag bit configured by the application program is a first value, the parameter in the file system of the application program and at least one of the parameter of the application program and the variable in the application program process are aimed at by the system process of the electronic equipment, so that the requirement that the application program is in a background state is met, and the electronic equipment determines that the application program is in the background state.
6. The method of claim 1, wherein the electronic device, after prohibiting the application from requesting the VSYNC signal, further comprises: and the electronic equipment starts the shielding interval.
7. The method according to claim 1 or 2, wherein after the electronic device determines that the application program requests the vertical synchronization VSYNC signal, further comprising:
and if the electronic equipment judges that the application program is in a background state and the shielding interval is in an open state, the application program is forbidden to request a VSYNC signal.
8. The method of performing a drawing operation according to claim 1 or 2, wherein before the electronic device prohibits the application from requesting a VSYNC signal, further comprising:
and the electronic equipment determines that the moment when the application program applies for requesting the VSYNC signal is out of the background delay interval.
9. The method according to claim 1 or 2, wherein after the electronic device determines that the application program requests the vertical synchronization VSYNC signal, further comprising:
the electronic equipment judges that the application program is in a background state, determines that the moment when the application program applies for requesting the VSYNC signal is not outside a background delay interval, and cuts a preset time of the background delay interval, wherein the electronic equipment allows the application program to request the VSYNC signal within the preset time of the background delay interval.
10. The method of performing a drawing operation according to claim 1 or 2, further comprising:
the electronic equipment determines that an application program applies for drawing;
and if the electronic equipment judges that the application program is in a background state and invalid background drawing is performed, the application program is forbidden to request a VSYNC signal.
11. An electronic device, comprising:
one or more processors, memory, and a display screen;
the memory and the display screen being coupled to the one or more processors, the memory being for storing computer program code comprising computer instructions which, when executed by the one or more processors, cause the electronic device to perform the method of performing a drawing operation as claimed in any one of claims 1 to 10.
12. A computer-readable storage medium for storing a computer program, which, when executed, is adapted to carry out a method of performing a drawing operation according to any one of claims 1 to 10.
CN202210722559.XA 2022-06-24 2022-06-24 Execution method of drawing operation, electronic device and readable medium Active CN116055611B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210722559.XA CN116055611B (en) 2022-06-24 2022-06-24 Execution method of drawing operation, electronic device and readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210722559.XA CN116055611B (en) 2022-06-24 2022-06-24 Execution method of drawing operation, electronic device and readable medium

Publications (2)

Publication Number Publication Date
CN116055611A CN116055611A (en) 2023-05-02
CN116055611B true CN116055611B (en) 2023-11-03

Family

ID=86117005

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210722559.XA Active CN116055611B (en) 2022-06-24 2022-06-24 Execution method of drawing operation, electronic device and readable medium

Country Status (1)

Country Link
CN (1) CN116055611B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228358A (en) * 2017-12-06 2018-06-29 广东欧珀移动通信有限公司 Correct method, apparatus, mobile terminal and the storage medium of vertical synchronizing signal
CN112351326A (en) * 2019-08-09 2021-02-09 华为技术有限公司 Image processing method based on vertical synchronization signal and electronic equipment
CN113553130A (en) * 2021-03-24 2021-10-26 华为技术有限公司 Method for executing drawing operation by application and electronic equipment
WO2022021895A1 (en) * 2020-07-31 2022-02-03 荣耀终端有限公司 Image processing method and electronic device
CN114338952A (en) * 2020-09-30 2022-04-12 华为技术有限公司 Image processing method based on vertical synchronization signal and electronic equipment
WO2022083296A1 (en) * 2020-10-22 2022-04-28 华为技术有限公司 Display method and electronic device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020062052A1 (en) * 2018-09-28 2020-04-02 Qualcomm Incorporated Smart and dynamic janks reduction technology
US11579906B2 (en) * 2019-09-04 2023-02-14 Dell Products, L.P. Managing performance optimization of applications in an information handling system (IHS)

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228358A (en) * 2017-12-06 2018-06-29 广东欧珀移动通信有限公司 Correct method, apparatus, mobile terminal and the storage medium of vertical synchronizing signal
CN112351326A (en) * 2019-08-09 2021-02-09 华为技术有限公司 Image processing method based on vertical synchronization signal and electronic equipment
WO2022021895A1 (en) * 2020-07-31 2022-02-03 荣耀终端有限公司 Image processing method and electronic device
CN114338952A (en) * 2020-09-30 2022-04-12 华为技术有限公司 Image processing method based on vertical synchronization signal and electronic equipment
WO2022083296A1 (en) * 2020-10-22 2022-04-28 华为技术有限公司 Display method and electronic device
CN113553130A (en) * 2021-03-24 2021-10-26 华为技术有限公司 Method for executing drawing operation by application and electronic equipment

Also Published As

Publication number Publication date
CN116055611A (en) 2023-05-02

Similar Documents

Publication Publication Date Title
CN114648951B (en) Method for controlling dynamic change of screen refresh rate and electronic equipment
CN109656445B (en) Content processing method, device, terminal and storage medium
CN114020652B (en) Application program management method and electronic equipment
CN116048833B (en) Thread processing method, terminal equipment and chip system
CN112732434A (en) Application management method and device
CN114637451B (en) Display optimization method, device and storage medium during application switching
CN111078325B (en) Application program running method and device, electronic equipment and storage medium
WO2022166713A1 (en) Electronic device and display method for application thereof, and medium
CN115640083A (en) Screen refreshing method and equipment capable of improving dynamic performance
CN116055611B (en) Execution method of drawing operation, electronic device and readable medium
CN116048907A (en) Background drawing detection method, electronic equipment and computer readable storage medium
CN116028148A (en) Interface processing method and device and electronic equipment
CN116672707B (en) Method and electronic device for generating game prediction frame
CN116688494B (en) Method and electronic device for generating game prediction frame
CN116679864B (en) Touch interaction processing method and electronic equipment
CN115061758B (en) Application display method, terminal, electronic device and storage medium
CN116088970B (en) Method for controlling application call and related device
CN116680000B (en) Method for displaying bullet frame, electronic device and readable medium
CN117076088B (en) Interface display method, readable medium and electronic device
CN117492609B (en) Display method, readable storage medium, program product and electronic device
CN115421599B (en) Input method display control method and related device
WO2023061014A1 (en) Task management method and apparatus
CN116679999B (en) Method for displaying bullet frame, electronic device and readable medium
CN116051387A (en) Dynamic image blurring method, terminal device, and computer-readable storage medium
CN116737352A (en) Control method and terminal for garbage recycling GC

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant