CN114253687A - Multi-window leakage processing method and device and computer readable storage medium - Google Patents

Multi-window leakage processing method and device and computer readable storage medium Download PDF

Info

Publication number
CN114253687A
CN114253687A CN202111552638.2A CN202111552638A CN114253687A CN 114253687 A CN114253687 A CN 114253687A CN 202111552638 A CN202111552638 A CN 202111552638A CN 114253687 A CN114253687 A CN 114253687A
Authority
CN
China
Prior art keywords
window
application
data
preset value
processitem
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.)
Pending
Application number
CN202111552638.2A
Other languages
Chinese (zh)
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.)
Shenzhen Zte Mobile Software Co ltd
Original Assignee
Shenzhen Zte Mobile Software 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 Shenzhen Zte Mobile Software Co ltd filed Critical Shenzhen Zte Mobile Software Co ltd
Priority to CN202111552638.2A priority Critical patent/CN114253687A/en
Publication of CN114253687A publication Critical patent/CN114253687A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephone Function (AREA)

Abstract

The invention discloses a multi-window leakage processing method, equipment and a computer readable storage medium, wherein the method comprises the following steps: when an application applies for displaying a window, acquiring a process number of the application; acquiring application times corresponding to the application in preset scattered data according to the process number; judging whether the application times are greater than a preset value or not; if the application times are larger than the preset value, the process corresponding to the application is killed, and if the application times are smaller than the preset value, 1 is added to the application times in the scattered data. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.

Description

Multi-window leakage processing method and device and computer readable storage medium
Technical Field
The present invention relates to the field of mobile communications, and in particular, to a method and an apparatus for processing multi-window leakage, and a computer-readable storage medium.
Background
In the prior art, with the continuous development of intelligent terminal devices, although the operating memory of devices such as mobile phones is continuously increased, in the process of actually using the mobile phones, users still cause the mobile phones to be stuck due to more and more installed applications and more use scenes, and one important reason is that the memory of applications is leaked to cause the mobile phones to be stuck in the operating process. Due to the fact that the applications are different in stability and performance, the problem that the applications can leak windows again is caused, memory leakage is caused, and the mobile phone is more and more stuck due to the fact that the mobile phone draws a plurality of windows and lacks of the memory at the same time. The above scenario is an unpredictable problem and is difficult to solve from the source.
Disclosure of Invention
In order to solve the technical defects in the prior art, the invention provides a multi-window leakage processing method, which comprises the following steps:
and when the application applies to display a window, acquiring the process number of the application.
And acquiring the application times corresponding to the application in preset scattered data according to the process number.
And judging whether the application times are greater than a preset value.
If the application times are larger than the preset value, the process corresponding to the application is killed, and if the application times are smaller than the preset value, 1 is added to the application times in the scattered data.
Optionally, when the application applies for displaying a window, acquiring the process number of the application includes:
a hash map HashMap type data structure is created.
And recording the number of windows created by the application through a HashMap type data structure of the hash map.
Optionally, when the application applies for displaying a window, acquiring a process number of the application further includes:
and taking the applied process number PID as a value key of the HashMap type data structure of the hash map.
And setting the data type of the custom process item ProcessItem.
Optionally, when the application applies for displaying a window, acquiring a process number of the application further includes:
and in the data type of the process item ProcessItem, recording the application times by int type data of window number mWindowNum.
In the data type of the process item ProcessItem, the process package name of the application is recorded by String type data of the package name mPkg.
Optionally, the obtaining a process number of the application when the application applies for displaying a window includes:
and when the application applies for creating one or more of an Activity Activity Window, a Dialog interaction Window and a Window display Window, calling an addWindow increasing Window method of a WindowManagerService Window management service of the system.
And acquiring the process number PID of the application and the process packet name of the application through the WindowManagerService window management service.
Optionally, the obtaining, according to the process number, the application times corresponding to the application from preset hash data includes:
and judging whether the data type of the process item ProcessItem is empty or not in the data structure of the HashMap type of the hash map.
And if the data type of the process item ProcessItem is empty, assigning the package name mPkg as the process package name, and assigning the window number mWindowNum as 1.
Optionally, the determining whether the number of applications is greater than a preset value includes:
and if the data type of the process item ProcessItem is not empty, reading the window number mWindowNum of the data type of the process item ProcessItem, and adding 1 to the window number mWindowNum.
And judging whether the value of the window number mWindowNum added with 1 is larger than the preset value or not.
Optionally, if the number of applications is greater than the preset value, killing the process corresponding to the application, and if the number of applications is less than the preset value, adding 1 to the number of applications in the hash data, and then including:
and acquiring the process number of the application when the application applies for removing one window.
After performing window removal, subtracting 1 from the application times in the hash data.
The present invention also proposes a multi-window leakage processing device, which includes a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the steps of the multi-window leakage processing method according to any one of the above.
The present invention further provides a computer-readable storage medium, on which a multi-window leakage processing program is stored, and when being executed by a processor, the multi-window leakage processing program implements the steps of the multi-window leakage processing method according to any one of the above items.
By implementing the multi-window leakage processing method, the equipment and the computer readable storage medium, when an application applies for displaying a window, the process number of the application is acquired; acquiring application times corresponding to the application in preset scattered data according to the process number; judging whether the application times are greater than a preset value or not; if the application times are larger than the preset value, the process corresponding to the application is killed, and if the application times are smaller than the preset value, 1 is added to the application times in the scattered data. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
Drawings
The invention will be further described with reference to the accompanying drawings and examples, in which:
fig. 1 is a schematic diagram of a hardware structure of a mobile terminal according to the present invention;
fig. 2 is a communication network system architecture diagram provided by an embodiment of the present invention;
FIG. 3 is a flow chart of a first embodiment of a multi-window leak handling method of the present invention;
FIG. 4 is a flow chart of a second embodiment of a multi-window leak handling method of the present invention;
FIG. 5 is a flow chart of a third embodiment of a multi-window leak handling method of the present invention;
FIG. 6 is a flow chart of a fourth embodiment of a multi-window leak handling method of the present invention;
FIG. 7 is a flow chart of a fifth embodiment of a multi-window leak processing method of the present invention;
FIG. 8 is a flow chart of a sixth embodiment of a multi-window leak handling method of the present invention;
FIG. 9 is a flow chart of a seventh embodiment of a multi-window leak handling method of the present invention;
fig. 10 is a flowchart of an eighth embodiment of a multi-window leakage processing method of the present invention.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
In the following description, suffixes such as "module", "component", or "unit" used to denote elements are used only for facilitating the explanation of the present invention, and have no specific meaning in itself. Thus, "module", "component" or "unit" may be used mixedly.
The terminal may be implemented in various forms. For example, the terminal described in the present invention may include a mobile terminal such as a mobile phone, a tablet computer, a notebook computer, a palmtop computer, a Personal Digital Assistant (PDA), a Portable Media Player (PMP), a navigation device, a wearable device, a smart band, a pedometer, and the like, and a fixed terminal such as a Digital TV, a desktop computer, and the like.
The following description will be given by way of example of a mobile terminal, and it will be understood by those skilled in the art that the construction according to the embodiment of the present invention can be applied to a fixed type terminal, in addition to elements particularly used for mobile purposes.
Referring to fig. 1, which is a schematic diagram of a hardware structure of a mobile terminal for implementing various embodiments of the present invention, the mobile terminal 100 may include: RF (Radio Frequency) unit 101, WiFi module 102, audio output unit 103, a/V (audio/video) input unit 104, sensor 105, display unit 106, user input unit 107, interface unit 108, memory 109, processor 110, and power supply 111. Those skilled in the art will appreciate that the mobile terminal architecture shown in fig. 1 is not intended to be limiting of mobile terminals, which may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components.
The following describes each component of the mobile terminal in detail with reference to fig. 1:
the radio frequency unit 101 may be configured to receive and transmit signals during information transmission and reception or during a call, and specifically, receive downlink information of a base station and then process the downlink information to the processor 110; in addition, the uplink data is transmitted to the base station. Typically, radio frequency unit 101 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, and the like. In addition, the radio frequency unit 101 can also communicate with a network and other devices through wireless communication. The wireless communication may use any communication standard or protocol, including but not limited to GSM (Global System for Mobile communications), GPRS (General Packet Radio Service), CDMA2000(Code Division Multiple Access 2000), WCDMA (Wideband Code Division Multiple Access), TD-SCDMA (Time Division-Synchronous Code Division Multiple Access), FDD-LTE (Frequency Division duplex Long Term Evolution), and TDD-LTE (Time Division duplex Long Term Evolution).
WiFi belongs to short-distance wireless transmission technology, and the mobile terminal can help a user to receive and send e-mails, browse webpages, access streaming media and the like through the WiFi module 102, and provides wireless broadband internet access for the user. Although fig. 1 shows the WiFi module 102, it is understood that it does not belong to the essential constitution of the mobile terminal, and may be omitted entirely as needed within the scope not changing the essence of the invention.
The audio output unit 103 may convert audio data received by the radio frequency unit 101 or the WiFi module 102 or stored in the memory 109 into an audio signal and output as sound when the mobile terminal 100 is in a call signal reception mode, a call mode, a recording mode, a voice recognition mode, a broadcast reception mode, or the like. Also, the audio output unit 103 may also provide audio output related to a specific function performed by the mobile terminal 100 (e.g., a call signal reception sound, a message reception sound, etc.). The audio output unit 103 may include a speaker, a buzzer, and the like.
The a/V input unit 104 is used to receive audio or video signals. The a/V input Unit 104 may include a Graphics Processing Unit (GPU) 1041 and a microphone 1042, the Graphics processor 1041 Processing image data of still pictures or video obtained by an image capturing device (e.g., a camera) in a video capturing mode or an image capturing mode. The processed image frames may be displayed on the display unit 106. The image frames processed by the graphic processor 1041 may be stored in the memory 109 (or other storage medium) or transmitted via the radio frequency unit 101 or the WiFi module 102. The microphone 1042 may receive sounds (audio data) via the microphone 1042 in a phone call mode, a recording mode, a voice recognition mode, or the like, and may be capable of processing such sounds into audio data. The processed audio (voice) data may be converted into a format output transmittable to a mobile communication base station via the radio frequency unit 101 in case of a phone call mode. The microphone 1042 may implement various types of noise cancellation (or suppression) algorithms to cancel (or suppress) noise or interference generated in the course of receiving and transmitting audio signals.
The mobile terminal 100 also includes at least one sensor 105, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor includes an ambient light sensor that can adjust the brightness of the display panel 1061 according to the brightness of ambient light, and a proximity sensor that can turn off the display panel 1061 and/or a backlight when the mobile terminal 100 is moved to the ear. As one of the motion sensors, the accelerometer sensor can detect the magnitude of acceleration in each direction (generally, three axes), can detect the magnitude and direction of gravity when stationary, and can be used for applications of recognizing the posture of a mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer and tapping), and the like; as for other sensors such as a fingerprint sensor, a pressure sensor, an iris sensor, a molecular sensor, a gyroscope, a barometer, a hygrometer, a thermometer, and an infrared sensor, which can be configured on the mobile phone, further description is omitted here.
The display unit 106 is used to display information input by a user or information provided to the user. The Display unit 106 may include a Display panel 1061, and the Display panel 1061 may be configured in the form of a Liquid Crystal Display (LCD), an Organic Light-Emitting Diode (OLED), or the like.
The user input unit 107 may be used to receive input numeric or character information and generate key signal inputs related to user settings and function control of the mobile terminal. Specifically, the user input unit 107 may include a touch panel 1071 and other input devices 1072. The touch panel 1071, also referred to as a touch screen, may collect a touch operation performed by a user on or near the touch panel 1071 (e.g., an operation performed by the user on or near the touch panel 1071 using a finger, a stylus, or any other suitable object or accessory), and drive a corresponding connection device according to a predetermined program. The touch panel 1071 may include two parts of a touch detection device and a touch controller. The touch detection device detects the touch direction of a user, detects a signal brought by touch operation and transmits the signal to the touch controller; the touch controller receives touch information from the touch sensing device, converts the touch information into touch point coordinates, sends the touch point coordinates to the processor 110, and can receive and execute commands sent by the processor 110. In addition, the touch panel 1071 may be implemented in various types, such as a resistive type, a capacitive type, an infrared ray, and a surface acoustic wave. In addition to the touch panel 1071, the user input unit 107 may include other input devices 1072. In particular, other input devices 1072 may include, but are not limited to, one or more of a physical keyboard, function keys (e.g., volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like, and are not limited to these specific examples.
Further, the touch panel 1071 may cover the display panel 1061, and when the touch panel 1071 detects a touch operation thereon or nearby, the touch panel 1071 transmits the touch operation to the processor 110 to determine the type of the touch event, and then the processor 110 provides a corresponding visual output on the display panel 1061 according to the type of the touch event. Although the touch panel 1071 and the display panel 1061 are shown in fig. 1 as two separate components to implement the input and output functions of the mobile terminal, in some embodiments, the touch panel 1071 and the display panel 1061 may be integrated to implement the input and output functions of the mobile terminal, and is not limited herein.
The interface unit 108 serves as an interface through which at least one external device is connected to the mobile terminal 100. For example, the external device may include a wired or wireless headset port, an external power supply (or battery charger) port, a wired or wireless data port, a memory card port, a port for connecting a device having an identification module, an audio input/output (I/O) port, a video I/O port, an earphone port, and the like. The interface unit 108 may be used to receive input (e.g., data information, power, etc.) from external devices and transmit the received input to one or more elements within the mobile terminal 100 or may be used to transmit data between the mobile terminal 100 and external devices.
The memory 109 may be used to store software programs as well as various data. The memory 109 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required by at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may store data (such as audio data, a phonebook, etc.) created according to the use of the cellular phone, and the like. Further, the memory 109 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
The processor 110 is a control center of the mobile terminal, connects various parts of the entire mobile terminal using various interfaces and lines, and performs various functions of the mobile terminal and processes data by operating or executing software programs and/or modules stored in the memory 109 and calling data stored in the memory 109, thereby performing overall monitoring of the mobile terminal. Processor 110 may include one or more processing units; preferably, the processor 110 may integrate an application processor, which mainly handles operating systems, user interfaces, application programs, etc., and a modem processor, which mainly handles wireless communications. It will be appreciated that the modem processor described above may not be integrated into the processor 110.
The mobile terminal 100 may further include a power supply 111 (e.g., a battery) for supplying power to various components, and preferably, the power supply 111 may be logically connected to the processor 110 via a power management system, so as to manage charging, discharging, and power consumption management functions via the power management system.
Although not shown in fig. 1, the mobile terminal 100 may further include a bluetooth module or the like, which is not described in detail herein.
In order to facilitate understanding of the embodiments of the present invention, a communication network system on which the mobile terminal of the present invention is based is described below.
Referring to fig. 2, fig. 2 is an architecture diagram of a communication Network system according to an embodiment of the present invention, where the communication Network system is an LTE system of a universal mobile telecommunications technology, and the LTE system includes a UE (User Equipment) 201, an E-UTRAN (Evolved UMTS Terrestrial Radio Access Network) 202, an EPC (Evolved Packet Core) 203, and an IP service 204 of an operator, which are in communication connection in sequence.
Specifically, the UE201 may be the terminal 100 described above, and is not described herein again.
The E-UTRAN202 includes eNodeB2021 and other eNodeBs 2022, among others. Among them, the eNodeB2021 may be connected with other eNodeB2022 through backhaul (e.g., X2 interface), the eNodeB2021 is connected to the EPC203, and the eNodeB2021 may provide the UE201 access to the EPC 203.
The EPC203 may include an MME (Mobility Management Entity) 2031, an HSS (Home Subscriber Server) 2032, other MMEs 2033, an SGW (Serving gateway) 2034, a PGW (PDN gateway) 2035, and a PCRF (Policy and Charging Rules Function) 2036, and the like. The MME2031 is a control node that handles signaling between the UE201 and the EPC203, and provides bearer and connection management. HSS2032 is used to provide registers to manage functions such as home location register (not shown) and holds subscriber specific information about service characteristics, data rates, etc. All user data may be sent through SGW2034, PGW2035 may provide IP address assignment for UE201 and other functions, and PCRF2036 is a policy and charging control policy decision point for traffic data flow and IP bearer resources, which selects and provides available policy and charging control decisions for a policy and charging enforcement function (not shown).
The IP services 204 may include the internet, intranets, IMS (IP Multimedia Subsystem), or other IP services, among others.
Although the LTE system is described as an example, it should be understood by those skilled in the art that the present invention is not limited to the LTE system, but may also be applied to other wireless communication systems, such as GSM, CDMA2000, WCDMA, TD-SCDMA, and future new network systems.
Based on the above mobile terminal hardware structure and communication network system, the present invention provides various embodiments of the method.
Example one
Fig. 3 is a flowchart of a first embodiment of a multi-window leakage processing method of the present invention. A method for multi-window leakage handling, the method comprising:
s1, when the application applies to display a window, acquiring the process number of the application.
And S2, acquiring the application times corresponding to the application in preset scattered data according to the process number.
And S3, judging whether the application times are greater than a preset value.
S4, if the application times are larger than the preset value, the process corresponding to the application is killed, and if the application times are smaller than the preset value, the application times in the scattered data are added by 1.
In this embodiment, the technical idea is that when it is monitored that the window leaks in the application in the system, for example, when the window leaks by more than 50 times, the system automatically kills the process of the application at the background to release the memory to the system, so that the phenomenon that the system is stuck due to the fact that a large amount of memory is occupied and the system drawing pressure is high because a window leaks in a certain application is avoided, thereby improving the smoothness of system operation and enhancing user experience.
Optionally, in this embodiment, specifically, the system creates a HashMap type data structure. The HashMap type data of this embodiment is a data structure for recording the number of windows created by each application. The key of each data of the HashMap is a PID of an application process, value defines a self-defined ProcessItem data type, and the ProcessItem data type of the embodiment consists of data mWindowNum of an int type and corresponding mPkg of a String type. Wherein mWindowNum is the application times, and mPkg is the package name of the application. Specifically, the data type of the HashMap type is shown in the following table:
Figure BDA0003417596590000111
Figure BDA0003417596590000121
optionally, in this embodiment, when the application applies for creating a Window (for example, Activity, Dialog, Window) each time, the addWindow method of the windowmanager service of the system is called, and an action is required to be added in this embodiment: and acquiring the process number PID and the packet name of the current requested application.
In this embodiment, a method for acquiring a process PID by WindowManagerService includes: binder. getcallingpid ().
In this embodiment, a method for acquiring a process package name by WindowManagerService includes: windowstate.
Optionally, in this embodiment, a corresponding Value is obtained from a HashMap type data structure according to the PID, and whether the Value is null is determined. If the application is empty, the application is the first application creation window, a ProcessItem needs to be newly created, the acquired package name is assigned to mPkg correspondingly, and meanwhile, mWindowNum is assigned to 1. And saving the newly created ProcessItem object in the HashMap. In this embodiment, if Value is not empty, it indicates that there is a previous application record, and then mwindownnum data of the ProcessItem is read and automatically +1, and it is determined whether the new Value of mwindownnum is greater than the maximum Value MAX predetermined in advance in this embodiment, for example, the preset threshold MAX of this embodiment is 20. And if the new mWindowNum value is larger than MAX, the system actively kills the application corresponding to the PID. In this embodiment, if the new mwindownnum value is not greater than MAX, the new ProcessItem value is updated to HashMap.
In this embodiment, the method for actively killing the process by the system is as follows:
ActivityManagerNative.getDefault().forceStopPackage(pkg,userId)。
in the embodiment, similarly, if the application is to remove a window, the corresponding ProcessItem data needs to be found from the HashMap according to the corresponding PID, and mwindownnum-1 is used.
The method has the advantages that the process number of the application is acquired when the application applies for displaying a window; acquiring application times corresponding to the application in preset scattered data according to the process number; judging whether the application times are greater than a preset value or not; if the application times are larger than the preset value, the process corresponding to the application is killed, and if the application times are smaller than the preset value, 1 is added to the application times in the scattered data. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
Example two
Fig. 4 is a flowchart of a second embodiment of a multi-window leakage processing method according to the present invention, where based on the above embodiments, the acquiring a process number of an application when the application applies for displaying a window includes:
s01, creating a hash map HashMap type data structure.
S02, recording the window number created by the application through the HashMap type data structure of the hash map.
The method has the advantages that the HashMap type data structure of the hash map is created; and recording the number of windows created by the application through a HashMap type data structure of the hash map. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
EXAMPLE III
Fig. 5 is a flowchart of a third embodiment of a multi-window leakage processing method according to the present invention, where based on the above embodiments, when an application applies for displaying a window, the method for acquiring a process number of the application further includes:
s03, taking the applied process number PID as the value key of the HashMap type data structure of the hash map.
S04, setting the data type of the custom process item ProcessItem.
The method has the advantages that the process number PID of the application is used as the value key of the HashMap type data structure of the hash map; and setting the data type of the custom process item ProcessItem. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
Example four
Fig. 6 is a flowchart of a fourth embodiment of the method for processing multi-window leakage according to the present invention, where based on the above embodiments, when an application applies for displaying a window, the method for processing multi-window leakage further includes:
s05, recording the application times by int type data of window number mWindowNum in the data type of the process item ProcessItem.
S06, in the data type of the process item ProcessItem, the String type data of the package name mPkg records the process package name of the application.
The beneficial effect of this embodiment is that, in the data type of the process item ProcessItem, the application times are recorded by int type data of window number mwndownnum; in the data type of the process item ProcessItem, the process package name of the application is recorded by String type data of the package name mPkg. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
EXAMPLE five
Fig. 7 is a flowchart of a fifth embodiment of a multi-window leakage processing method according to the present invention, where based on the above embodiments, the acquiring a process number of an application when the application applies for displaying a window includes:
s11, when the application applies for creating one or more of an Activity Activity Window, a Dialog interaction Window and a Window display Window, invoking an addWindow increasing Window method of a Windows manager service Window management service of the system.
S12, acquiring the process number PID of the application and the process packet name of the application through the WindowManagerService window management service.
The method has the advantages that when one or more of an Activity Window, a Dialog interaction Window and a Window display Window are created by the application, an addWindow add Window method of a Windows manager service Window management service of the system is called; and acquiring the process number PID of the application and the process packet name of the application through the WindowManagerService window management service. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
EXAMPLE six
Fig. 8 is a flowchart of a sixth embodiment of the multi-window leakage processing method according to the present invention, where based on the above embodiments, the obtaining, according to the process number, the application times corresponding to the application from the preset hash data includes:
s21, in the hash map HashMap type data structure, judging whether the data type of the process item ProcessItem is empty.
S22, if the data type of the process item ProcessItem is empty, assigning the package name mPkg as the process package name, and assigning the window number mWindowNum as 1.
The method has the advantages that whether the data type of the process item ProcessItem is empty or not is judged in the HashMap type data structure of the hash map; and if the data type of the process item ProcessItem is empty, assigning the package name mPkg as the process package name, and assigning the window number mWindowNum as 1. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
EXAMPLE seven
Fig. 9 is a flowchart of a seventh embodiment of the multi-window leakage processing method according to the present invention, where the determining whether the number of applications is greater than a preset value includes:
s31, if the data type of the process item ProcessItem is not empty, reading the window number mWindowNum of the data type of the process item ProcessItem, and adding 1 to the window number mWindowNum.
S32, judging whether the value of the window number mWindowNum added with 1 is larger than the preset value.
The method has the advantages that if the data type of the process item ProcessItem is not empty, the window number mWindowNum of the data type of the process item ProcessItem is read through judgment, and 1 is added to the window number mWindowNum; and judging whether the value of the window number mWindowNum added with 1 is larger than the preset value or not. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
Example eight
Fig. 10 is a flowchart of an eighth embodiment of the method for processing multi-window leakage according to the present invention, where based on the above embodiments, if the number of applications is greater than the preset value, the process corresponding to the application is killed, and if the number of applications is less than the preset value, the method adds 1 to the number of applications in the hash data, and then includes:
s51, when the application applies to remove a window, acquiring the process number of the application.
S52, after removing the execution window, subtracting 1 from the application times in the scattered data.
The method has the advantages that the process number of the application is acquired when the application applies for removing a window; after performing window removal, subtracting 1 from the application times in the hash data. The method realizes an efficient application multi-window memory leakage processing scheme, effectively controls window creation through clear and concise logic condition judgment, avoids the pause phenomenon, improves the smoothness of the system, and enhances the use experience of users.
Example nine
Based on the foregoing embodiment, the present invention further provides a multi-window leakage processing device, which includes a memory, a processor, and a computer program stored on the memory and executable on the processor, and when executed by the processor, the computer program implements the steps of the multi-window leakage processing method according to any one of the foregoing embodiments.
It should be noted that the device embodiment and the method embodiment belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment, and technical features in the method embodiment are correspondingly applicable in the device embodiment, which is not described herein again.
Example ten
Based on the foregoing embodiment, the present invention further provides a computer-readable storage medium, where a multi-window leakage processing program is stored, and when executed by a processor, the multi-window leakage processing program implements the steps of the multi-window leakage processing method according to any one of the foregoing embodiments.
It should be noted that the media embodiment and the method embodiment belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment, and technical features in the method embodiment are correspondingly applicable in the media embodiment, which is not described herein again.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which is stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal (such as a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
While the present invention has been described with reference to the embodiments shown in the drawings, the present invention is not limited to the embodiments, which are illustrative and not restrictive, and it will be apparent to those skilled in the art that various changes and modifications can be made therein without departing from the spirit and scope of the invention as defined in the appended claims.

Claims (10)

1. A method for multi-window leakage handling, the method comprising:
when an application applies for displaying a window, acquiring a process number of the application;
acquiring application times corresponding to the application in preset scattered data according to the process number;
judging whether the application times are greater than a preset value or not;
if the application times are larger than the preset value, the process corresponding to the application is killed, and if the application times are smaller than the preset value, 1 is added to the application times in the scattered data.
2. The method for processing multi-window leakage according to claim 1, wherein the obtaining of the process number of the application when the application applies for displaying a window comprises:
creating a hash map HashMap type data structure;
and recording the number of windows created by the application through a HashMap type data structure of the hash map.
3. The method for processing multi-window leakage according to claim 2, wherein the obtaining of the process number of the application when the application applies for displaying a window further comprises:
taking the process number PID of the application as a value key of a hash map HashMap type data structure;
and setting the data type of the custom process item ProcessItem.
4. The method according to claim 3, wherein the obtaining of the process number of the application when the application requests to display a window further comprises:
in the data type of the process item ProcessItem, the application times are recorded by int type data of window number mWindowNum;
in the data type of the process item ProcessItem, the process package name of the application is recorded by String type data of the package name mPkg.
5. The method according to claim 4, wherein the obtaining the process number of the application when the application requests to display a window comprises:
when the application applies for creating one or more of an Activity Activity Window, a Dialog interaction Window and a Window display Window, calling an addWindow increasing Window method of a WindowManagerService Window management service of the system;
and acquiring the process number PID of the application and the process packet name of the application through the WindowManagerService window management service.
6. The method for processing multi-window leakage according to claim 5, wherein the obtaining of the number of applications corresponding to the application from preset hash data according to the process number includes:
judging whether the data type of the process item ProcessItem is empty or not in the hash map HashMap type data structure;
and if the data type of the process item ProcessItem is empty, assigning the package name mPkg as the process package name, and assigning the window number mWindowNum as 1.
7. The multi-window leakage processing method according to claim 6, wherein the determining whether the number of applications is greater than a preset value comprises:
if the data type of the process item ProcessItem is not empty, reading the window number mWindowNum of the data type of the process item ProcessItem, and adding 1 to the window number mWindowNum;
and judging whether the value of the window number mWindowNum added with 1 is larger than the preset value or not.
8. The method according to claim 7, wherein if the number of applications is greater than the preset value, the process corresponding to the application is killed, and if the number of applications is less than the preset value, the method adds 1 to the number of applications in the hash data, and then comprises:
when the application applies for removing a window, acquiring the process number of the application;
after performing window removal, subtracting 1 from the application times in the hash data.
9. A multi-window leakage handling device, characterized in that the device comprises a memory, a processor and a computer program stored on the memory and executable on the processor, which computer program, when executed by the processor, implements the steps of the multi-window leakage handling method according to any of claims 1 to 8.
10. A computer-readable storage medium, having stored thereon a multi-window leak processing program which, when executed by a processor, implements the steps of the multi-window leak processing method of any one of claims 1 to 8.
CN202111552638.2A 2021-12-17 2021-12-17 Multi-window leakage processing method and device and computer readable storage medium Pending CN114253687A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111552638.2A CN114253687A (en) 2021-12-17 2021-12-17 Multi-window leakage processing method and device and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111552638.2A CN114253687A (en) 2021-12-17 2021-12-17 Multi-window leakage processing method and device and computer readable storage medium

Publications (1)

Publication Number Publication Date
CN114253687A true CN114253687A (en) 2022-03-29

Family

ID=80795722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111552638.2A Pending CN114253687A (en) 2021-12-17 2021-12-17 Multi-window leakage processing method and device and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN114253687A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116048679A (en) * 2022-06-21 2023-05-02 荣耀终端有限公司 Layer processing method, electronic equipment and readable storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116048679A (en) * 2022-06-21 2023-05-02 荣耀终端有限公司 Layer processing method, electronic equipment and readable storage medium
CN116048679B (en) * 2022-06-21 2023-10-20 荣耀终端有限公司 Layer processing method, electronic equipment and readable storage medium

Similar Documents

Publication Publication Date Title
CN107562705B (en) Data export method, server and computer readable storage medium
CN107220132B (en) Method, equipment and storage medium for monitoring file creation information
CN108052280B (en) Method for deleting cache data, terminal and computer readable storage medium
CN112394896A (en) Method and device for controlling reverse screen projection frame rate and computer readable storage medium
CN110278481B (en) Picture-in-picture implementation method, terminal and computer readable storage medium
CN108377292B (en) Method, terminal, server and computer storage medium for solving memory leakage
CN112102780B (en) Display frame rate regulation and control method, device and computer readable storage medium
CN108040116B (en) Message pushing method, router and computer readable storage medium
CN112346824B (en) Screen projection application control method and device and computer readable storage medium
CN112712815A (en) Software-based pop sound suppression method, terminal and computer readable medium
CN109683796B (en) Interaction control method, equipment and computer readable storage medium
CN111970738A (en) Network switching control method, equipment and computer readable storage medium
CN114253687A (en) Multi-window leakage processing method and device and computer readable storage medium
CN109062688B (en) Memory allocation method, server and mobile terminal
CN110955397A (en) Method for setting frame rate of game terminal, game terminal and storage medium
CN108183833B (en) Response processing method and device and computer readable storage medium
CN107404568B (en) Control switch management method and mobile terminal
CN109379719B (en) Application program broadcast processing method and device and computer readable storage medium
CN113485667A (en) Method for screen projection display of terminal, terminal and storage medium
CN109327604B (en) Status bar information display method and equipment and computer readable storage medium
CN112860207A (en) Screen projection method, system, device for initiating screen projection and storage medium
CN112887776A (en) Method and equipment for reducing audio delay and computer-readable storage medium
CN113381924A (en) Processing method, mobile terminal and storage medium
CN108304302B (en) Interface merging method, equipment and computer readable storage medium
CN111970668A (en) Bluetooth audio control method, equipment and computer readable storage medium

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