Application state management method, device, equipment and storage medium

By comparing the display areas of applications in the vehicle system, determining their status and adjusting resource usage, the problem of resource waste in the Free Form application in the vehicle system is solved, and more efficient resource management is achieved.

CN117573314BActive Publication Date: 2025-10-03AVATR CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311551678.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-20
Publication Date
2025-10-03
Estimated Expiration
2043-11-20

AI Technical Summary

Technical Problem

Traditional Free Form applications in vehicle systems still consume CPU and memory resources even if they are invisible, resulting in resource waste.

Method used

By comparing the display areas of the first application and the second application, the state of the second application is determined, and the resource usage is adjusted according to the state, including stopping, pausing or continuing the state switching.

Benefits of technology

It effectively saves resources, reduces unnecessary CPU and memory consumption, and improves the resource utilization efficiency of the vehicle system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117573314B_ABST
    Figure CN117573314B_ABST
Patent Text Reader

Abstract

The present application discloses an application status management method, apparatus, device and storage medium; the method includes: in response to a startup instruction of a first application, obtaining a first display area of ​​at least one second application in a running state, wherein the first application and the second application are both free window applications; comparing the second display area of ​​the first application with the first display area of ​​each second application to obtain a comparison result corresponding to the second application; and determining the status of the at least one second application based on the comparison result of the at least one second application.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of screen display technology, and in particular to an application status management method, apparatus, device, and storage medium. Background Art

[0002] In related technologies, car computer systems have relatively large screens. In order to provide a richer operating experience for the car computer, multiple applications will be run simultaneously on the car computer system, or the screen will be divided into multiple areas, with each area running different programs. At this time, technologies such as Free Form or Split will be used.

[0003] However, the traditional Free Form application is divided according to the concept of screen area, which means that multiple Free Form applications of the same type will be displayed superimposed in the application display area. According to the system's definition of Free Form applications, Free Form applications are similar to desktop software and are always running. In this way, Free Form applications in the background, although invisible, are still running, causing invisible applications to still consume resources such as CPU and memory. Summary of the Invention

[0004] Based on the above problems, embodiments of the present application provide an application state management method, apparatus, device, and storage medium.

[0005] The technical solution provided by the embodiments of this application is as follows:

[0006] An embodiment of the present application first provides an application status management method, the method comprising: in response to a startup instruction of a first application, obtaining a first display area of ​​at least one second application in a running state, wherein the first application and the second application are both free window applications; comparing the second display area of ​​the first application with the first display area of ​​each second application to obtain a comparison result corresponding to the second application; and determining the status of the at least one second application based on the comparison result of the at least one second application.

[0007] An embodiment of the present application also provides an application status management device, which includes: an acquisition module for acquiring a first display area of ​​at least one second application in a running state in response to a startup instruction of a first application, wherein the first application and the second application are both free window applications; a comparison module for comparing the second display area of ​​the first application with the first display area of ​​each second application to obtain a comparison result corresponding to the second application; and a determination module for determining the status of the at least one second application based on the comparison result of the at least one second application.

[0008] An embodiment of the present application also provides an electronic device, which includes a memory and a processor, wherein the memory stores a computer program that can be run on the processor, and when the processor executes the program, the steps in the application state management method described in the embodiment of the present application are implemented.

[0009] An embodiment of the present application further provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps in the application state management method described in the embodiment of the present application are implemented.

[0010] In the embodiment of the present application, the status of the second application can be determined based on the comparison result of the display areas of the first application and the second application, so that the resource usage can be adjusted according to the status of the application to save resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figure 1 A flowchart of an application state management method according to an embodiment of the present application;

[0012] Figure 2 This is a flowchart of another application state management method according to an embodiment of the present application;

[0013] Figure 3 This is a flowchart of another application state management method according to an embodiment of the present application;

[0014] Figure 4a A schematic diagram of the relative position relationship of display areas used in an embodiment of the present application;

[0015] Figure 4b A schematic diagram of the relative position relationship of display areas in another application of an embodiment of the present application;

[0016] Figure 4c A schematic diagram of the relative position relationship of display areas in another application of an embodiment of the present application;

[0017] Figure 4d This is a schematic diagram of the relative position relationship of display areas in another application of an embodiment of the present application;

[0018] Figure 4e This is a schematic diagram of the relative position relationship of display areas in another application of an embodiment of the present application;

[0019] Figure 5a This is a schematic diagram of a rectangular cover segmentation method according to an embodiment of the present application;

[0020] Figure 5b This is a schematic diagram of another rectangular coverage segmentation method according to an embodiment of the present application;

[0021] Figure 5c This is a schematic diagram of another rectangular covering segmentation method according to an embodiment of the present application;

[0022] Figure 6 This is a flowchart of another application state management method according to an embodiment of the present application;

[0023] Figure 7 A flowchart of an application state management method according to an embodiment of the present application is provided;

[0024] Figure 8 A flowchart of an application state management method according to an embodiment of the present application is provided;

[0025] Figure 9 A flowchart of an application state management method according to an embodiment of the present application is provided;

[0026] Figure 10 A flowchart of an application state management method according to an embodiment of the present application is provided;

[0027] Figure 11 This is a schematic diagram of the structure of an application status management device according to an embodiment of the present application;

[0028] Figure 12 This is a structural diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0029] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application.

[0030] Figure 1 This is a flow chart of an application state management method according to an embodiment of the present application. Figure 1 As shown, the method includes the following steps:

[0031] Step 102: In response to a start instruction of a first application, obtaining a first display area of ​​at least one second application in a running state, where both the first application and the second application are free window applications;

[0032] Among them, the free window application can be an application that uses Free Form or Split technology and runs on the vehicle system in the form of a free window. Multiple free window applications can run simultaneously and display the application interface superimposed on the screen; the free window application can include a Free Form application.

[0033] The second application may be an already running free window application, and the first application is a newly started free window application. Since the free window application is similar to desktop software and is always running, the Free Form application in the background that is completely or partially covered, although invisible, is still in running state and still consumes CPU (Central Processing Unit) and memory, resulting in a waste of resources.

[0034] Step 104: Compare the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a comparison result corresponding to the second application;

[0035] Step 106: Determine the status of the at least one second application based on the comparison result of the at least one second application.

[0036] The amount of resources occupied by an application varies depending on its state, and the application occupies the most resources when it is in the running state.

[0037] In the embodiment of the present application, the status of the second application can be determined based on the comparison result of the display areas of the first application and the second application, so that the resource usage can be adjusted according to the status of the application to save resources.

[0038] In some embodiments, as Figure 2 As shown, step 106 “determining the state of the at least one second application based on the comparison result of the at least one second application” includes the following steps:

[0039] Step 1061: If the comparison result shows that the second application is completely covered, determine that the state of the corresponding second application is a stopped state;

[0040] The stop state can be represented as stop, and the running state can be represented as run.

[0041] Step 1062: If the comparison result shows that the second application is partially covered, determine that the state of the corresponding second application is a suspended state;

[0042] The pause state may be pause.

[0043] Step 1063: When the comparison result shows that the second application is not overwritten, determine that the state of the corresponding second application is a continuing execution state.

[0044] The resume state may be represented as resume. When the application is in a paused or stopped state and needs to be switched to a running state, the application may first be switched to the resume state and then to the running state to enable the application to run normally.

[0045] Among them, the application status includes running status, paused status, continued execution status, and stopped status. The application occupies different resources in different states. The application status can be arranged in the order of decreasing occupied resources as running status, continued execution status, paused status, and stopped status.

[0046] In an embodiment of the present application, when the second application is completely covered, the second application can be determined to be in a stopped state; when the second application is partially covered, the second application can be determined to be in a paused state; when the second application is not covered, the second application can be determined to be in a continued execution state, thereby determining the state of the application based on the coverage of the application and saving resources.

[0047] In some embodiments, as Figure 3 As shown, step 104, "comparing the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a comparison result corresponding to the second application," includes the following steps:

[0048] Step 1041: Compare the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a relative position relationship between the second display area and each of the first display areas;

[0049] Wherein, the first display area and the second display area are both rectangular, and the relative position relationship may include no intersection, corner intersection, edge intersection and overlap; Figure 4a As shown in the interface 211, the relative position relationship between the second display area 201 of the first application and the first display area 202 of the second application is non-intersection, that is, there is no intersection between the second display area and the first display area.

[0050] like Figure 4b As shown, the relative position relationship between the second display area 201 of the first application and the first display area 202 of the second application is an angle intersection, that is, there is an intersection at a corner between the second display area and the first display area. As shown in interfaces 212 to 215, the second display area covers the upper left corner, lower left corner, upper right corner and lower right corner of the first display area in sequence.

[0051] like Figure 4c As shown, the relative position relationship between the second display area 201 of the first application and the first display area 202 of the second application is an edge intersection, that is, there is an edge intersection between the second display area and the first display area, and the second display area completely covers an edge of the first display area. As shown in interfaces 216 to 219, the second display area covers the top, left, right and bottom of the first display area in sequence.

[0052] like Figure 4d As shown, the relative position relationship between the second display area 201 of the first application and the first display area 202 of the second application is an edge intersection, that is, there is an edge intersection between the second display area and the first display area, and the second display area partially covers an edge of the first display area. As shown in interfaces 220 to 223, the second display area covers the top, left, right and bottom of the first display area in sequence.

[0053] like Figure 4e As shown, the relative position relationship between the second display area 201 of the first application and the first display area 202 of the second application is covering. As shown in interface 224, the second display area completely covers the first display area. As shown in interface 225, the second display area partially covers the inner area of ​​the first display area. As shown in interface 226, the second display area horizontally covers the left and right sides of the first display area. As shown in interface 227, the second display area vertically covers the upper and lower sides of the first display area.

[0054] Step 1042: Based on each relative position relationship, performing a rectangular covering segmentation process on the corresponding first display area to obtain a segmentation result of the corresponding first display area, wherein the segmentation result includes no generated rectangle, multiple generated rectangles, and one generated rectangle;

[0055] The rectangle covering segmentation process may be to segment the uncovered portion of the first display area of ​​the second application into rectangles, determine the number of the segmented rectangles, and determine the comparison result of the second application based on the number.

[0056] Step 1043: Determine a comparison result corresponding to the second application based on the segmentation result of each first display area.

[0057] like Figure 5a As shown, taking the second display area covering the lower left corner of the first display area as an example, as shown in interface 213, the first display area can be divided into two rectangles: rectangle 2021 and rectangle 2022, or rectangle 2023 and rectangle 2024.

[0058] like Figure 5b As shown, taking the example of the second display area partially covering the upper edge of the first display area, as shown in interface 220, the first display area can be divided into three rectangles: rectangle 2021, rectangle 2022 and rectangle 2023, or rectangle 2024, rectangle 2025 and rectangle 2026, or rectangle 2027, rectangle 2028 and rectangle 2029, or rectangle 2030, rectangle 2031 and rectangle 2032.

[0059] like Figure 5c As shown, taking the second display area completely covering the left side of the first display area as an example for explanation, as shown in interface 217 , the first display area can be divided to generate a rectangle 2021 .

[0060] Thus, the comparison result of each second application can be determined to determine the status of each second application.

[0061] In an embodiment of the present application, the relative position relationship between the second display area of ​​the first application and the first display area of ​​the second application can be determined first, and then the first display area can be subjected to rectangular covering segmentation processing based on the relative position relationship to obtain the segmentation result of the first display area, and then the comparison result of the second application can be determined, so that the comparison result of the second application can be determined more accurately.

[0062] In some embodiments, as Figure 6 As shown, step 1043 "determining a comparison result corresponding to the second application based on the segmentation result of each first display area" includes the following steps:

[0063] Step 10431: If the segmentation result indicates that no rectangle is generated, determining that the comparison result corresponding to the second application indicates that the second application is completely covered;

[0064] like Figure 4e As shown in the interface 224 in FIG, the segmentation result is that no rectangle is generated and the second application is completely covered.

[0065] Step 10432: When the segmentation result generates multiple rectangles, determine that the comparison result corresponding to the second application is that the second application is partially covered;

[0066] like Figure 5a and Figure 5b As shown, the second application is partially covered.

[0067] Step 10433: When the segmentation result is to generate a rectangle, if the rectangle is smaller than the size of the first display area, the comparison result corresponding to the second application is determined to be that the second application is partially covered; if the rectangle is equal to the size of the first display area, the comparison result corresponding to the second application is determined to be that the second application is not covered.

[0068] like Figure 5c As shown, the rectangle 2021 is smaller than the size of the first display area, and the second application is partially covered, as shown in FIG. Figure 4a As shown, the rectangle 202 is equal to the size of the first display area, and the second application is not covered.

[0069] In the embodiment of the present application, whether the second application is covered can be determined by the number of rectangles in the segmentation result, which can improve the accuracy and convenience of the judgment result.

[0070] In some embodiments, as Figure 7 As shown, the method further includes:

[0071] Step 101: In response to a start instruction of at least one second application, storing a first display area of ​​each second application into an area list;

[0072] Step 102 "obtaining the first display area of ​​at least one second application in running state in response to the startup instruction of the first application" includes: obtaining the first display area of ​​at least one second application in running state from the area list in response to the startup instruction of the first application.

[0073] Among them, after receiving the startup instruction of the second application, the first display area of ​​the second application can be stored in the area list. After receiving the startup execution of the first application, the first display area of ​​the second application is taken from the area list in turn, and the second display area of ​​the first application is compared with each second application to determine the status of the second application.

[0074] In an embodiment of the present application, by storing the display area of ​​the second application in the area list, when starting the first application, the display area of ​​the first application can be more conveniently compared with the display area of ​​the second application in the area list in sequence, thereby improving the accuracy of the comparison results.

[0075] In some embodiments, as Figure 8 As shown, the method further includes:

[0076] Step 107: If it is determined that the state of the second application is the suspended state, refuse to respond to the user's triggering operation on the first display area;

[0077] When the second application is in a paused state, the user triggers the first display area, but the second application does not respond.

[0078] Step 108: In response to the user's unblocking operation on the first target application in the second application, switching the first target application to a continued execution state;

[0079] Step 109: In response to the user closing the second target application in the second application, the first target application is switched to a continued execution state, where the second target application is all applications that fully or partially cover the first target application.

[0080] In an embodiment of the present application, the first target application can be switched to the continue execution state after receiving the user's unblocking operation for the first target application, and the first target application can be switched to the continue execution state after closing all other second applications that cover the first target application, so that the second application can be resumed in a more flexible manner.

[0081] In some embodiments, as Figure 9 As shown, the method further includes:

[0082] Step 110: When it is determined that the state of the second application is stopped, all resources occupied by the second application are released;

[0083] Step 111: When it is determined that the state of the second application is a paused state, partially release the resources occupied by the second application to retain the display function of the first display area to display the current screen and disable the trigger function of the first display area.

[0084] In an embodiment of the present application, when the second application is in a stopped state, all resources are released, and when the second application is in a paused state, some resources are released, so that resource occupancy can be adjusted in time according to different application states, thereby saving resources.

[0085] In an embodiment of the present application, life cycle management for Free Form applications is proposed. A rectangular coverage algorithm is used to perform rectangular coverage calculation on applications in Free Form to determine whether the calculated application is fully covered or partially covered. If it is fully covered, the Free form application needs to be set to the stop state. If it is partially covered, the Free form application needs to be set to the pause state.

[0086] In the embodiment of the present application, when there are multiple applications in the free from state, when a new free from type application is started, all free form applications under the current free from and the first full-screen application will be recalculated. The calculation algorithm is as follows:

[0087] Step S301: Obtain the display areas of all applications above the current free from or first full-screen application and store them in an area list;

[0088] Step S302: taking out the first display area in the area list;

[0089] Step S303: Comparing the retrieved region with the current region, the region comparison may result in various relative position relationships;

[0090] Step S304: for each relative position relationship, performing rectangular segmentation on the determined rectangular area, dividing the uncovered area into several small rectangles;

[0091] Step S305: If the entire area is not covered, the rectangular area remains unchanged; if the area is completely covered, the visible rectangular area is deleted and the determination is exited.

[0092] After the above steps S303 to S305, a rectangle determination is completed. After the determination is completed, a new group of rectangles is generated, and the next comparison area is obtained. The new rectangle group is compared with the comparison area one by one and the determination of steps S303 to S305 is performed until all comparison areas are compared or no new rectangles are generated.

[0093] After completing the above steps, check the remaining rectangular areas and perform the following operations on the specified application: If the remaining rectangular area is empty, it indicates full coverage and the application is set to stop; if there are multiple remaining areas, it indicates partial coverage and the application is set to pause; if there is only one remaining rectangular area but the area size is different from the original area, the application is set to pause; if there is only one remaining rectangular area and the area size is the same as the native area, it is considered not covered and the application is set to resume.

[0094] Figure 10 This embodiment of the present application also provides a flow chart of an application state management method, such as Figure 10 As shown, the method includes the following steps:

[0095] Step 301: Obtain the display area of ​​the determined application;

[0096] The determined application is the second application to be determined, and the display area of ​​the determined application is the first display area;

[0097] Step 302: Add the display area to the determination area list;

[0098] The first display area of ​​the determination application may be added to the determination area list (i.e., area list);

[0099] Step 303: Obtain a list of opaque application display areas above the determination area as a comparison area;

[0100] The comparison area may be a second display area of ​​the first application;

[0101] Step 304: traverse all comparison areas;

[0102] Step 305: Take a display area from the determination area list;

[0103] Step 306: performing rectangular covering segmentation processing on the determination area and the comparison area;

[0104] Step 307: Determine whether a new rectangle is generated, if not, execute step 308, if yes, execute step 309;

[0105] Step 308: No rectangle is generated;

[0106] Step 309: generating more than one rectangle;

[0107] Step 310: Take the next judgment area from the judgment area list;

[0108] Step 311: Determine whether a region has been taken out. If so, execute step 306; if not, execute step 312.

[0109] Step 312: Determine whether a new determination area list is generated. If so, execute step 313; if not, execute step 317.

[0110] Step 313: Add all generated rectangular areas to the determination area list;

[0111] Step 314: Determine whether to take out the next comparison area;

[0112] If a new comparison area is obtained, step 305 is executed; if no new comparison area is obtained, step 315 is executed;

[0113] Step 315: Get the determination area list;

[0114] Step 316: Analyze and determine the area list;

[0115] If there is no area to be determined, execute step 317; if there are multiple areas to be determined, execute step 318; if there is one area to be determined, execute step 319;

[0116] Step 317: Fully covered, stop application;

[0117] Step 318: Partially covered, pause application;

[0118] Step 319: Determine whether the current determination area is the same as the original application. If not, execute step 318; if the same, execute step 320.

[0119] Step 320: If not covered by anything, resume the application.

[0120] When multiple freeform applications appear in the system, the embodiment of the present application can effectively manage and control the covered applications, making the applications inactive, and effectively reducing the burden of page refresh and system resource consumption.

[0121] It should be noted that in the embodiments of the present application, if the above-mentioned application state management method is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the relevant technology can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling an electronic device (which can be a mobile phone, tablet computer, desktop computer, personal digital assistant, navigator, digital phone, video phone, television, sensor device, etc.) to execute all or part of the methods described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a U disk, a mobile hard disk, a read-only memory (ROM), a magnetic disk or an optical disk. In this way, the embodiments of the present application are not limited to any specific combination of hardware and software.

[0122] Figure 11 This is a schematic diagram of the structure of an application state management device according to an embodiment of the present application. Figure 11 As shown, the apparatus 400 includes: an acquisition module 401, a comparison module 402 and a determination module 403, wherein:

[0123] An acquisition module 401 is configured to acquire, in response to a startup instruction of a first application, a first display area of ​​at least one second application in a running state, wherein both the first application and the second application are free window applications;

[0124] a comparison module 402 for comparing the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a comparison result corresponding to the second application;

[0125] The determination module 403 is configured to determine the status of the at least one second application based on the comparison result of the at least one second application.

[0126] In some embodiments, the determination module 403 includes: a first determination submodule, used to determine that the state of the corresponding second application is a stopped state when the comparison result is that the second application is completely covered; a second determination submodule, used to determine that the state of the corresponding second application is a paused state when the comparison result is that the second application is partially covered; and a third determination submodule, used to determine that the state of the corresponding second application is a continued execution state when the comparison result is that the second application is not covered.

[0127] In some embodiments, the comparison module 402 includes: a comparison submodule, used to compare the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain the relative position relationship between the second display area and each of the first display areas; a segmentation submodule, used to perform rectangular covering segmentation processing on the corresponding first display area based on each of the relative position relationships to obtain the segmentation result of the corresponding first display area, the segmentation result including no rectangle generated, multiple rectangles generated, and one rectangle generated; a fourth determination submodule, used to determine the comparison result of the corresponding second application based on the segmentation result of each of the first display areas.

[0128] In some embodiments, the fourth determination submodule includes: a first determination unit, used to determine that the comparison result corresponding to the second application is that the second application is completely covered when the segmentation result is that no rectangle is generated; a second determination unit, used to determine that the comparison result corresponding to the second application is that the second application is partially covered when the segmentation result is that multiple rectangles are generated; a third determination unit, used to determine that the comparison result corresponding to the second application is that the second application is partially covered when the segmentation result is that a rectangle is generated, if the rectangle is smaller than the size of the first display area, and if the rectangle is equal to the size of the first display area, determine that the comparison result corresponding to the second application is that the second application is not covered.

[0129] In some embodiments, the device further includes: a storage module for storing the first display area of ​​each second application in an area list in response to a startup instruction of the at least one second application; the acquisition module 401 includes: acquiring the first display area of ​​at least one second application in running state from the area list in response to a startup instruction of the first application.

[0130] In some embodiments, the apparatus further comprises:

[0131] a rejection module, configured to refuse to respond to a user's triggering operation on the first display area when determining that the state of the second application is the suspended state;

[0132] a first switching module, configured to switch the first target application to a continued execution state in response to a user's unblocking operation on the first target application in the second application;

[0133] The second switching module is configured to switch the first target application to a continued execution state in response to a closing operation of the second target application in the second application by the user, wherein the second target application is all applications that fully or partially cover the first target application.

[0134] In some embodiments, the device also includes: a first release module, used to release all resources occupied by the second application when it is determined that the state of the second application is a stopped state; a second release module, used to partially release the resources occupied by the second application when it is determined that the state of the second application is a paused state, so as to retain the display function of the first display area to display the current screen and disable the trigger function of the first display area.

[0135] The description of the above device embodiment is similar to the description of the above method embodiment and has similar beneficial effects as the method embodiment. For technical details not disclosed in the device embodiment of this application, please refer to the description of the method embodiment of this application for understanding.

[0136] Based on the above embodiments, the present application also provides an electronic device, Figure 12 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present application. Figure 12 As shown, the hardware entity of the device 500 includes: a memory 501 and a processor 502, the memory 501 stores a computer program that can be run on the processor 502, and the processor 502 implements the steps of the application status management method in the above embodiment when executing the program.

[0137] The memory 501 is configured to store instructions and applications executable by the processor 502, and can also cache data to be processed or processed by the processor 502 and various modules in the device 500 (for example, image data, audio data, voice communication data and video communication data), which can be implemented through flash memory (FLASH) or random access memory (RAM).

[0138] Based on the foregoing embodiments, an embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor of an electronic device, it can implement the application state management method provided in any of the previous embodiments.

[0139] The above description of the various embodiments tends to emphasize the differences between the various embodiments. The same or similar aspects can be referenced with each other and will not be repeated herein for the sake of brevity.

[0140] The methods disclosed in the various method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.

[0141] The features disclosed in the various product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.

[0142] The features disclosed in the various method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments or device embodiments.

[0143] It should be noted that the above-mentioned computer-readable storage medium can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a magnetic random access memory (FRAM), a flash memory (Flash Memory), a magnetic surface storage, an optical disc, or a compact disc read-only memory (CD-ROM); it can also be various electronic devices that include one or any combination of the above-mentioned memories, such as mobile phones, computers, tablet devices, personal digital assistants, etc.

[0144] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.

[0145] The serial numbers of the above embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0146] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus necessary general hardware nodes, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), including a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0147] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0148] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0149] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0150] The above are only preferred embodiments of the present application and do not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. A method for application state management, characterized in that: The method comprises: In response to a start instruction of a first application, acquiring a first display area of ​​at least one second application in a running state, where the first application and the second application are both free window applications; comparing the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a comparison result corresponding to the second application; If the comparison result shows that the second application is completely covered, determining that the state of the corresponding second application is a stopped state; in the case of the stopped state, releasing all resources occupied by the second application; If the comparison result shows that the second application is partially covered, determining that the state of the corresponding second application is a suspended state; in the case of the suspended state, partially releasing the resources occupied by the second application to retain the display function of the first display area to display the second application screen; If the comparison result shows that the second application is not overwritten, the state of the corresponding second application is determined to be a continuing execution state.

2. The method according to claim 1, characterized in that The comparing the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a comparison result corresponding to the second application includes: comparing the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a relative positional relationship between the second display area and each of the first display areas; Based on each of the relative positional relationships, performing a rectangular covering segmentation process on the corresponding first display area to obtain a segmentation result of the corresponding first display area, wherein the segmentation result includes no generated rectangle, multiple generated rectangles, and one generated rectangle; Based on the segmentation result of each first display area, a comparison result corresponding to the second application is determined.

3. The method according to claim 2, characterized in that The determining, based on the segmentation result of each display area, a comparison result corresponding to the second application includes: If the segmentation result indicates that no rectangle is generated, determining that the comparison result corresponding to the second application is that the second application is completely covered; When the segmentation result is to generate multiple rectangles, determining that the comparison result corresponding to the second application is that the second application is partially covered; When the segmentation result is to generate a rectangle, if the rectangle is smaller than the size of the first display area, the comparison result corresponding to the second application is determined to be that the second application is partially covered; if the rectangle is equal to the size of the first display area, the comparison result corresponding to the second application is determined to be that the second application is not covered.

4. The method according to any one of claims 1 to 3, characterized in that The method further comprises: In response to a start-up instruction of the at least one second application, storing the first display area of ​​each second application in an area list; The acquiring, in response to the start instruction of the first application, a first display area of ​​at least one second application in a running state includes: In response to a start instruction of the first application, a first display area of ​​at least one second application in a running state is acquired from the area list.

5. The method according to any one of claims 1 to 3, characterized in that The method further comprises: If it is determined that the state of the second application is the suspended state, refusing to respond to the user's triggering operation on the first display area; In response to the user performing an unblocking operation on the first target application in the second application, switching the first target application to a continued execution state; In response to the user closing the second target application in the second application, the first target application is switched to a continued execution state, and the second target application is all applications that fully or partially cover the first target application.

6. The method according to any one of claims 1 to 3, characterized in that The method further comprises: When determining that the state of the second application is the stopped state, releasing all resources occupied by the second application; When it is determined that the state of the second application is the paused state, the resources occupied by the second application are partially released to retain the display function of the first display area to display the current screen and disable the trigger function of the first display area.

7. An application status management device, characterized in that: The device comprises: an acquisition module, configured to acquire, in response to a startup instruction of a first application, a first display area of ​​at least one second application in a running state, wherein the first application and the second application are both free window applications; a comparison module, configured to compare the second display area of ​​the first application with the first display area of ​​each of the second applications to obtain a comparison result corresponding to the second application; a determining module, configured to determine a status of the at least one second application based on a comparison result of the at least one second application; Wherein, the determining module includes: a first determining submodule configured to determine, if the comparison result shows that the second application is completely covered, that the state of the corresponding second application is a stopped state; a second determining submodule configured to determine, if the comparison result shows that the second application is partially covered, that the state of the corresponding second application is a paused state; and a third determining submodule configured to determine, if the comparison result shows that the second application is not covered, that the state of the corresponding second application is a continued execution state; The device further comprises: a first releasing module, configured to release all resources occupied by the second application when determining that the state of the second application is a stopped state; The second releasing module is configured to partially release the resources occupied by the second application when it is determined that the state of the second application is a suspended state, so as to retain the display function of the first display area to display the second application screen.

8. An electronic device comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, characterized in that: When the processor executes the program, the steps of the application state management method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the application state management method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Window lamination method and device, equipment and medium

    CN112306588A

  • Interface display method and device and storage medium

    CN113805748A