Background management method and device, electronic equipment and storage medium
By obtaining the application's historical usage records and conducting back-end management based on priority, the application's excessive consumption of hardware resources is solved, and the system fluency and user experience of electronic devices are improved.
Patent Information
- Application Number
- CN202311206313.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-18
- Publication Date
- 2025-03-18
AI Technical Summary
The excessive consumption of hardware resources by applications in existing electronic devices leads to poor user experience, and it is difficult for background management strategies to effectively optimize hardware performance.
By obtaining the historical usage records of each application, determining its priorities, and conducting back-end management based on priorities, including process management, memory management and priority management, to make rational use of memory space and hardware performance.
It improves the residency capability of the application, shortens the time-consuming application startup, reduces the lag during user use, and improves the system fluency and user experience of electronic devices.
Smart Images

Figure CN119645581A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, and in particular to a background management method, device, electronic device and storage medium. Background Art
[0002] With the increasing popularity of electronic devices, in order to meet the growing needs of users, the number of applications in electronic devices has increased, and they have become more and more complex and bloated. According to the "Andy Bill Theorem" in the field of computer technology, the performance improvement of electronic device hardware will be quickly consumed by software applications. Therefore, by improving the hardware performance of electronic devices such as memory and processors, it is difficult for users to feel the smooth experience brought by the hardware performance improvement when using electronic devices. Therefore, electronic devices need to continuously optimize their background management strategies such as process management and memory management to curb the excessive consumption of hardware resources by applications, thereby ensuring a smooth experience for users when using electronic devices. Summary of the invention
[0003] In order to overcome the problems existing in the related art, the present disclosure provides a background management method, device, electronic device and storage medium.
[0004] According to a first aspect of an embodiment of the present disclosure, a background management method is provided, the method comprising:
[0005] Acquire a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters;
[0006] Based on the historical usage records, determining a priority of each of the applications, the priority representing a probability of the application running in the foreground under current scenario parameters;
[0007] Based on the priority, the application is managed in the background.
[0008] In an exemplary embodiment, the background management includes at least one of process management, memory management, and priority management.
[0009] In an exemplary embodiment, determining the priority of each of the applications based on the historical usage records includes:
[0010] Based on the historical usage records, a priority is determined for each application category.
[0011] In an exemplary embodiment, the background management of the application includes:
[0012] Performing background management on each of the applications in each of the application categories; or
[0013] The preset applications in each of the application categories are managed in the background.
[0014] In an exemplary embodiment, determining the priority of each of the applications based on the historical usage records includes:
[0015] Based on the historical usage records, training a first model to obtain a trained first model, wherein the first model is a multivariate time series prediction model;
[0016] Based on the current scene parameters and the trained first model, a priority of each of the applications is obtained.
[0017] In an exemplary embodiment, obtaining the priority of each of the applications based on the current scene parameters and the trained first model includes:
[0018] The current scene parameters are input into the trained first model to obtain the priority of each of the applications.
[0019] In an exemplary embodiment, obtaining the priority of each of the applications based on the current scene parameters and the trained first model includes:
[0020] Updating the first model parameters of the trained first model to second model parameters to obtain an updated first model, wherein the second model parameters are obtained by clustering and fusing the first model parameters of each electronic device in a plurality of electronic devices;
[0021] The current scene parameters are input into the updated first model to obtain the priority of each of the applications.
[0022] In an exemplary embodiment, the method further comprises:
[0023] Sending the first model parameters to a cloud server;
[0024] Receive the second model parameter sent by the cloud server.
[0025] According to a second aspect of an embodiment of the present disclosure, a background management device is provided, the device comprising:
[0026] An acquisition module is configured to acquire a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters;
[0027] A decision module, configured to determine a priority of each of the applications based on the historical usage records, wherein the priority represents a probability of the application running in the foreground under current scenario parameters;
[0028] The processing module is configured to perform background management on the application based on the priority.
[0029] In an exemplary embodiment, the background management includes at least one of process management, memory management, and priority management.
[0030] In an exemplary embodiment, the decision module is further configured to:
[0031] Based on the historical usage records, a priority is determined for each application category.
[0032] In an exemplary embodiment, the processing module is further configured to:
[0033] Performing background management on each of the applications in each of the application categories; or
[0034] The preset applications in each of the application categories are managed in the background.
[0035] In an exemplary embodiment, the decision module is further configured to:
[0036] Based on the historical usage records, training a first model to obtain a trained first model, wherein the first model is a multivariate time series prediction model;
[0037] Based on the current scene parameters and the trained first model, a priority of each of the applications is obtained.
[0038] In an exemplary embodiment, the decision module is further configured to:
[0039] The current scene parameters are input into the trained first model to obtain the priority of each of the applications.
[0040] In an exemplary embodiment, the decision module is further configured to:
[0041] Updating the first model parameters of the trained first model to second model parameters to obtain an updated first model, wherein the second model parameters are obtained by clustering and fusing the first model parameters of each electronic device in a plurality of electronic devices;
[0042] The current scene parameters are input into the updated first model to obtain the priority of each of the applications.
[0043] In an exemplary embodiment, the device further includes a transceiver module configured to:
[0044] Sending the first model parameters to a cloud server;
[0045] Receive the second model parameter sent by the cloud server.
[0046] According to a third aspect of an embodiment of the present disclosure, there is provided an electronic device, including:
[0047] processor;
[0048] a memory for storing processor-executable instructions;
[0049] The processor is configured to execute the method as described in the first aspect of the embodiment of the present disclosure.
[0050] According to a fourth aspect of an embodiment of the present disclosure, a non-temporary computer-readable storage medium is provided. When instructions in the storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the method described in the first aspect of the embodiment of the present disclosure.
[0051] The above method disclosed in the present invention has the following beneficial effects: it can more reasonably utilize the memory space and hardware performance in the electronic device, improve the resident capability of the application, shorten the time taken to start the application, avoid a long waiting time when the application is started again, thereby reducing the lag during user use, improving the system fluency of the electronic device, and improving the user experience.
[0052] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0054] Figure 1 is a flow chart of a background management method according to an exemplary embodiment;
[0055] Figure 2 is a flow chart of a background management method according to an exemplary embodiment;
[0056] Figure 3 is a schematic diagram of a federated learning model according to an exemplary embodiment;
[0057] Figure 4 is a flow chart of a background management method according to an exemplary embodiment;
[0058] Figure 5 is a schematic diagram of a background management system according to an exemplary embodiment;
[0059] Figure 6 is a block diagram of a background management device according to an exemplary embodiment;
[0060] Figure 7 It is a block diagram of an electronic device according to an exemplary embodiment. DETAILED DESCRIPTION
[0061] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0062] In the related technology, the background management strategy adopts the LMKD (Low Memory Killer Daemo) memory management solution. When the memory pressure of the electronic device is high, the game application process running in the background is directly killed and the memory is reclaimed. Alternatively, the application process that is not used temporarily is directly killed. The application's ability to stay in the background is very poor. When the user uses this application again, the application startup time is long, resulting in a long waiting time for the user, which seriously affects the user experience.
[0063] In an exemplary embodiment of the present disclosure, in order to overcome the problem of poor background resident capability of applications in related technologies, a background management method is provided, including: obtaining the historical usage record of each application in the electronic device, the historical usage record includes the probability of each application running in the foreground under different scenario parameters; based on the historical usage record, determining the priority of each application, the priority characterizing the probability of the application running in the foreground under the current scenario parameters; and based on the priority, performing background management on the application. The background management method can more reasonably utilize the memory space and hardware performance in the electronic device, improve the resident capability of the application, shorten the time consumed to start the application, and avoid a long waiting time when the application is started again.
[0064] In an exemplary embodiment of the present disclosure, a background management method is provided. Figure 1 is a flowchart of a background management method according to an exemplary embodiment. Figure 1 As shown, the following steps are included:
[0065] Step S101, obtaining a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters;
[0066] Step S102, determining the priority of each application based on the historical usage record, where the priority represents the probability of the application running in the foreground under the current scenario parameters;
[0067] Step S103: performing background management on the application based on the priority.
[0068] The background management method in the embodiments of the present disclosure is applied to electronic devices, including smart phones, tablets, smart watches, smart TVs and other electronic devices with multiple applications. The triggering conditions of the background management method in the electronic device include preset events such as screen off, screen on, application switching, no application running in the foreground, etc. When a preset event is detected, the user may open the application.
[0069] In step S101, the scene parameter represents the parameter of the application scene of the background management method, that is, the parameter of the scene when the user opens the application. The scene parameter is a parameter that affects which application the user opens. For example, the application that the user needs to use is different in different time periods, the application that the user needs to use is different on weekdays and non-workdays, and the application that the user needs to use is different when the number of exercise steps is different. Therefore, the scene parameter includes date, time period, whether it is a weekday, and exercise steps. The probability of each application running in the foreground is represented by the ratio of the duration of the application running in the foreground in different time periods to the duration of the corresponding time period. For example, in the time period of 20:00-22:00 (120 minutes), the duration of application A running in the foreground is 40 minutes, then in this time period, the probability of application A running in the foreground is 40 / 120=1 / 3.
[0070] The probability of each application running in the foreground can also be called the usage rate of each application. Recording the probability of each application running in the foreground in the electronic device under different scenario parameters is a historical usage record of each application. Table 1 is a historical usage record table of application A, application B, and application C according to an exemplary embodiment, as shown in Table 1, including the usage rate of each application in different scenarios, where the scenario parameters include date, time period, whether it is a weekday, and number of exercise steps.
[0071] Table 1
[0072]
[0073]
[0074] In step S102, based on the historical usage records, the user's application usage habits under different scenario parameters are determined. For example, according to Table 1, it can be known that the user has moderate exercise in the morning on weekdays, and the usage rate of application B is high. At noon on weekdays, the usage rate of application A is high. According to the user's application usage habits under different scenario parameters, the probability of each application running in the foreground under the current scenario parameters is predicted, and the priority of each application is determined in order from high to low according to the running probability. The priority of the application with a high running probability is high, and the priority of the application with a low running probability is low. For example, if the current scenario parameter is moderate exercise in the morning on weekdays, it is predicted that the probability of application B running in the foreground is 0.6, the probability of application A running in the foreground is 0.1, and the probability of application C running in the foreground is 0, then the priority from high to low is application B, application A, and application C.
[0075] In step S103, high-priority applications represent applications that will be opened in a short time, and low-priority applications represent applications that will not be opened in a short time. Applications are managed in the background according to their priorities. For high-priority applications, their corresponding resources are prepared in the background so that the application can be quickly opened when the user uses it; for low-priority applications, if they occupy background resources, the background resources they occupy are recycled for use by the system or other applications, thereby improving the flow of the system. For example, in order of priority from high to low, resources corresponding to the top N priority applications are prepared in the background, and background resources occupied by the bottom M priority applications are recycled, where M and N can be determined based on the available memory space and processor performance in the electronic device.
[0076] In an exemplary embodiment of the present disclosure, based on the historical usage records of each application in the electronic device, the priority of each application under the current scenario parameters is determined, and the applications are managed in the background according to the priority. This can more reasonably utilize the memory space and hardware performance in the electronic device, improve the application's residency capability, shorten the application startup time, and avoid a long waiting time when the application is started again, thereby reducing the user's experience of freezing during use, improving the system fluency of the electronic device, and enhancing the user experience.
[0077] In an exemplary embodiment of the present disclosure, a background management method is provided. Figure 2 is a flowchart of a background management method according to an exemplary embodiment. Figure 2 As shown, the following steps are included:
[0078] Step S201, obtaining a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters;
[0079] Step S202, training a first model based on historical usage records to obtain a trained first model, where the first model is a multivariate time series prediction model;
[0080] Step S203, inputting the current scene parameters into the trained first model to obtain the priority of each application;
[0081] Step S204, updating the first model parameters to second model parameters to obtain an updated first model, wherein the second model parameters are obtained by clustering and fusing the first model parameters of each electronic device in the plurality of electronic devices;
[0082] Step S205, inputting the current scene parameters into the updated first model to obtain the priority of each application;
[0083] Step S206: performing background management on the application based on the priority.
[0084] The specific implementation of step S201 refers to the implementation of step S101 and will not be repeated here. Step S203 and steps S204-S205 can be performed one by one.
[0085] In step S202, the first model is a multivariate time series prediction model, for example, the first model is a long short-term memory (LSTM) neural network model, or a graph neural network (GNN) model. The multivariate time series prediction model can use various data at historical moments to predict the target data at the current moment. Therefore, it can predict the application usage rate corresponding to the current scene parameters based on the scene parameters in the historical usage records. The historical usage records are used as training data to train the first model, that is, the scene parameters in the historical usage records are input into the first model, and the predicted value of the application usage rate corresponding to the scene parameters is output, and the predicted value is compared with the actual value in the historical usage record, and the model parameters in the first model are continuously corrected until the difference between the predicted value and the actual value is within an acceptable range, and the trained first model is obtained.
[0086] In step S203, the scene parameters are obtained by obtaining data from preset applications in the electronic device. For example, when the scene parameters are date, time period, and whether it is a weekday, information from applications such as the calendar is obtained. When the scene parameters are the number of steps, information from related applications such as sports and health is obtained. The current scene parameters are input into the trained first model, and the probability of each application running in the foreground is output, that is, the usage rate of each application. The priority of each application is then determined based on the usage rate of each application. The usage rate of the application corresponds to the priority from high to low. The priority can be represented by a priority identifier, for example, a digital priority identifier of "1, 2, 3" is used to identify the priority of the application, and "1" indicates the highest priority.
[0087] In step S204, the first model parameters may be all parameters in the trained first model, or may be some important parameters of the trained first model. For example, when the first model is an LSTM neural network model, the first model parameters may be model parameters such as the feature dimension of the input data, the number of layers of the recurrent neural network, and the dimension of the hidden layer. The first model parameters are important parameters that affect the accuracy of the prediction results. The first model parameters can make the prediction accuracy of the trained first model the highest, and the first model parameters can characterize the usage habit characteristics of the application learned by the first model from the historical usage records.
[0088] Each electronic device includes a first model parameter of the first model, and the first model parameter corresponding to each electronic device in the multiple electronic devices is clustered with the first model parameter corresponding to the local electronic device, and multiple first model parameters belonging to the same category as the first model parameter corresponding to the local electronic device are determined, and the multiple first model parameters belonging to the same category are fused with the first model parameter corresponding to the local electronic device to obtain the second model parameter, which can characterize the usage habit characteristics of the application programs in the multiple electronic devices. For example, the first model parameter corresponding to the local electronic device is recorded as m0, and the first model parameters corresponding to the other three electronic devices are recorded as m1, m2, and m3 respectively. After clustering m0, m1, m2, and m3, m0 belongs to the same category as m1 and m2, and then m0, m1, and m2 are fused to obtain m4. For example, the weighted average of these three values is calculated as m4, and m4 is the second model parameter.
[0089] In some possible implementations, the second model parameters can be obtained by a local electronic device, which receives the first model parameters corresponding to other electronic devices sent by other electronic devices, clusters and fuses multiple first model parameters, and obtains the second model parameters required by the local electronic device. The second model parameters can also be obtained by a cloud server, where each electronic device sends the first model parameters of the trained first model to the cloud server and receives the second model parameters sent by the cloud server. The cloud service clusters and fuses the first model parameters of each electronic device to obtain the second model parameters, and then sends the second model parameters corresponding to each electronic device to each electronic device.
[0090] In some possible implementations, the second model performs clustering and fusion processing of multiple first model parameters. The second model is a distributed machine learning model that can share data among various electronic devices and train to obtain data with wider applicability. For example, the second model is a federated learning model. Figure 3 is a schematic diagram of a federated learning model according to an exemplary embodiment. Figure 3 As shown, each electronic device uses local historical usage records to train a first model, and sends the first model parameters of the trained first model to a cloud server. The cloud server clusters and fuses multiple first model parameters to obtain second model parameters, and the cloud server then distributes the second model parameters to corresponding electronic devices.
[0091] Updating the first model parameters to the second model parameters can obtain the application usage habit characteristics of other electronic devices that are the same as the local electronic device habits. The updated first model has wider applicability and more accurate prediction results. In addition, using model parameters to share usage habit characteristics between different electronic devices can protect the data privacy of each electronic device.
[0092] In step S205, the current scene parameters are obtained and input into the updated first model, and the probability of each application running in the foreground, that is, the usage rate of each application, is output. The priority of each application is then determined based on the usage rate of each application. The usage rates of the applications are ranked from high to low, corresponding to the priorities from high to low.
[0093] In step S206, in some possible implementations, background management includes at least one of process management, memory management, and priority management. Process management refers to managing the process of the application, including process killing, process preloading, etc. Process killing refers to closing the process of the application, and for an application running in the background, exiting the background operation; process preloading refers to pre-opening the process of the application, and for an application not running in the background, running the application in the background. Memory management means managing the memory occupied by applications, including memory compression, memory decompression, memory swapping out, memory swapping in, etc. Memory compression means compressing the running memory of applications. For applications running in the background, the memory occupied by the background is compressed. When using the memory, it needs to be decompressed first; memory decompression means decompressing the running memory of applications. Corresponding to memory compression, the compressed running memory is decompressed, and the memory can be used directly; memory swapping out means migrating the memory occupied by applications from physical memory to disk space. When using the memory, it needs to be read from disk space; memory swapping in means reading the memory occupied by applications from disk space to physical memory, and the memory can be used directly. Priority management means managing the priority of applications, including lowering and raising the priority.
[0094] For high-priority applications, background management methods such as process preloading, memory decompression, and memory swapping can be used to prepare the required resources in the background in advance; for low-priority applications, background management methods such as process killing, memory compression, and memory swapping can be used to reclaim the background resources they occupy. When background resources are limited, for high-priority applications, background resources cannot be provided, and their priorities are lowered; when background resources are abundant, background resources are provided for multiple high-priority applications.
[0095] In one example, the background management method is determined based on the available memory space and processor performance in the electronic device. If the available memory space is small and / or the processor performance is poor, for high-priority applications, only the background management method of process preloading can be used, and for low-priority applications, only the background management method of process killing can be used; if the available memory space is large and / or the processor performance is good, for high-priority applications, the background management methods of process preloading, memory decompression, and memory swapping can be used at the same time, and for low-priority applications, the background management methods of memory compression and memory swapping can be used.
[0096] In an exemplary embodiment of the present disclosure, a background management method is provided. Figure 4 is a flowchart of a background management method according to an exemplary embodiment. Figure 4 As shown, the following steps are included:
[0097] Step S401, obtaining a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters;
[0098] Step S402, determining the priority of each application category based on historical usage records;
[0099] Step S403: performing background management on each application in each application category based on the priority; or performing background management on the preset applications in each application category.
[0100] The specific implementation of step S401 refers to step S101 and will not be described again.
[0101] In step S402, the applications in the electronic device are classified, for example, by usage type, and the applications are divided into video entertainment applications, photography and image applications, game applications, etc. Based on the historical usage records of each application, the sum of the probabilities of all applications in each application category running in the foreground is used as the probability of each application category running in the foreground, thereby obtaining the probability of each application category running in the foreground under different scene parameters. For example, the application categories of application 1 and application 2 are both video entertainment applications. Under a certain scene parameter, the probability of application 1 running in the foreground is 0.1, and the probability of application 2 running in the foreground is 0.2. Then, under the scene parameter, the probability of video entertainment applications running in the foreground is 0.1+0.2=0.3.
[0102] Based on the usage records of each application category, the user's usage habits for applications in each application category under different scenario parameters are determined. For example, according to Table 1, it can be learned that the user has moderate exercise in the morning on weekdays, and the usage rate of applications in application category A is high. At noon on weekdays, the usage rate of applications in application category B is high. Based on the user's usage habits for applications in each application category under different scenario parameters, the probability of each application category running in the foreground under the current scenario parameters is predicted, and the priority of each application category is determined in order from high to low according to the running probability. The application category with a high running probability has a high priority, and the application category with a low running probability has a low priority.
[0103] The specific implementation of step S402 can also refer to steps S202-S205.
[0104] In step S403, when background management is performed on the applications in each application category, background management may be performed on each application in the application category, or background management may be performed on the preset applications in each application category, where the preset applications are the applications with the highest usage rate in each application category. The number of applications to be managed in the background in each application category may be determined based on the hardware performance and available memory space of the electronic device.
[0105] In an exemplary embodiment of the present disclosure, applications in an electronic device are classified, the priority of each application category is determined, and background management is performed for each application category, which can improve the processing speed of obtaining priority and save resource consumption.
[0106] In an exemplary embodiment of the present disclosure, a background management system is provided. Figure 5 is a schematic diagram of a background management system according to an exemplary embodiment. Figure 5 As shown, the background management system includes a trigger module 501, a data acquisition module 502, a federated learning module 503, a decision module 504, a process management module 505 and a memory management module 506. Among them, the trigger module 501 is used to detect trigger events that trigger the background management method, such as screen off, screen on, application switching and other trigger events; the data acquisition module 502 is used to collect scene parameters, such as calendar information, application usage rate, exercise volume, etc.; the federated learning module 503 is used to fusion train the first model of each electronic device in multiple electronic devices; the decision module 504 is used to determine the priority of each application or each application category, and determine the priority through the model reasoning after fusion training; the process management module 505 is used to manage the process of the application, such as process killing, process preloading, priority adjustment, etc.; the memory management module 506 is used to manage the memory of the application, such as memory compression, memory decompression, etc.
[0107] In an exemplary embodiment of the present disclosure, a background management device is provided. Figure 6 is a block diagram of a background management device according to an exemplary embodiment. Figure 6 As shown, including:
[0108] The acquisition module 601 is configured to acquire a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters;
[0109] The decision module 602 is configured to determine the priority of each application based on the historical usage record, where the priority represents the probability of the application running in the foreground under the current scenario parameters;
[0110] The processing module 603 is configured to perform background management on the application based on the priority.
[0111] In an exemplary embodiment, the background management includes at least one of process management, memory management, and priority management.
[0112] In an exemplary embodiment, the decision module 602 is further configured to:
[0113] Prioritize each application category based on historical usage records.
[0114] In an exemplary embodiment, the processing module 603 is further configured to:
[0115] Perform background management of each application in each application category; or
[0116] Backstage management of preset applications in each application category.
[0117] In an exemplary embodiment, the decision module 602 is further configured to:
[0118] Based on the historical usage records, a first model is trained to obtain a trained first model, where the first model is a multivariate time series prediction model;
[0119] Based on the current scene parameters and the trained first model, the priority of each application is obtained.
[0120] In an exemplary embodiment, the decision module 602 is further configured to:
[0121] The current scenario parameters are input into the trained first model to obtain the priority of each application.
[0122] In an exemplary embodiment, the decision module 602 is further configured to:
[0123] Updating the first model parameters of the trained first model to the second model parameters to obtain an updated first model, wherein the second model parameters are obtained by clustering and fusing the first model parameters of each electronic device in the plurality of electronic devices;
[0124] The current scene parameters are input into the updated first model to obtain the priority of each application.
[0125] In an exemplary embodiment, the apparatus further includes a transceiver module 604 configured to:
[0126] Sending the first model parameter to a cloud server;
[0127] Receive the second model parameter sent by the cloud server.
[0128] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0129] Figure 7 is a block diagram of an electronic device 700 according to an exemplary embodiment.
[0130] Reference Figure 7 , the electronic device 700 may include one or more of the following components: a processing component 702 , a memory 704 , a power component 706 , a multimedia component 708 , an audio component 710 , an input / output (I / O) interface 712 , a sensor component 714 , and a communication component 716 .
[0131] The processing component 702 generally controls the overall operation of the electronic device 700, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 702 may include one or more processors 720 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 702 may include one or more modules to facilitate the interaction between the processing component 702 and other components. For example, the processing component 702 may include a multimedia module to facilitate the interaction between the multimedia component 708 and the processing component 702.
[0132] The memory 704 is configured to store various types of data to support operations on the electronic device 700. Examples of such data include instructions for any application or method operating on the electronic device 700, contact data, phone book data, messages, pictures, videos, etc. The memory 704 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0133] The power supply component 706 provides power to various components of the electronic device 700. The power supply component 706 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device 700.
[0134] The multimedia component 708 includes a screen that provides an output interface between the electronic device 700 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 708 includes a front camera and / or a rear camera. When the electronic device 700 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
[0135] The audio component 710 is configured to output and / or input audio signals. For example, the audio component 710 includes a microphone (MIC), and when the electronic device 700 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 704 or sent via the communication component 716. In some embodiments, the audio component 710 also includes a speaker for outputting audio signals.
[0136] I / O interface 712 provides an interface between processing component 702 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.
[0137] The sensor assembly 714 includes one or more sensors for providing various aspects of status assessment for the electronic device 700. For example, the sensor assembly 714 can detect the open / closed state of the electronic device 700, the relative positioning of components, such as the display and keypad of the electronic device 700, and the sensor assembly 714 can also detect the position change of the electronic device 700 or a component of the electronic device 700, the presence or absence of user contact with the electronic device 700, the orientation or acceleration / deceleration of the electronic device 700, and the temperature change of the electronic device 700. The sensor assembly 714 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 714 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 714 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0138] The communication component 716 is configured to facilitate wired or wireless communication between the electronic device 700 and other devices. The electronic device 700 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 716 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 716 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
[0139] In an exemplary embodiment, the electronic device 700 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above methods.
[0140] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 704 including instructions, and the instructions can be executed by a processor 720 of an electronic device 700 to perform the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.
[0141] A non-temporary computer-readable storage medium, when instructions in the storage medium are executed by a processor of an electronic device, enables the electronic device to execute a background management method, the method including any of the above methods.
[0142] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.
[0143] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. A background management method, characterized in that: The method comprises: Acquire a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters; Based on the historical usage records, determining a priority of each of the applications, the priority representing a probability of the application running in the foreground under current scenario parameters; Based on the priority, the application is managed in the background.
2. The background management method according to claim 1, characterized in that: The background management includes at least one of process management, memory management, and priority management.
3. The background management method according to claim 1, characterized in that: Determining the priority of each of the applications based on the historical usage records includes: Based on the historical usage records, a priority is determined for each application category.
4. The background management method according to claim 3, characterized in that: The background management of the application program includes: Performing background management on each of the applications in each of the application categories; or The preset applications in each of the application categories are managed in the background.
5. The background management method according to claim 1, characterized in that: Determining the priority of each of the applications based on the historical usage records includes: Based on the historical usage records, training a first model to obtain a trained first model, wherein the first model is a multivariate time series prediction model; Based on the current scene parameters and the trained first model, a priority of each of the applications is obtained.
6. The background management method according to claim 5, characterized in that: The obtaining the priority of each of the applications based on the current scene parameter and the trained first model comprises: The current scene parameters are input into the trained first model to obtain the priority of each of the applications.
7. The background management method according to claim 5, characterized in that: The obtaining the priority of each of the applications based on the current scene parameter and the trained first model comprises: Updating the first model parameters of the trained first model to second model parameters to obtain an updated first model, wherein the second model parameters are obtained by clustering and fusing the first model parameters of each electronic device in a plurality of electronic devices; The current scene parameters are input into the updated first model to obtain the priority of each of the applications.
8. The background management method according to claim 7, characterized in that: The method further comprises: Sending the first model parameters to a cloud server; Receive the second model parameter sent by the cloud server.
9. A background management device, characterized in that: The device comprises: An acquisition module is configured to acquire a historical usage record of each application in the electronic device, wherein the historical usage record includes a probability of each application running in the foreground under different scenario parameters; A decision module, configured to determine a priority of each of the applications based on the historical usage records, wherein the priority represents a probability of the application running in the foreground under current scenario parameters; The processing module is configured to perform background management on the application based on the priority.
10. An electronic device, characterized in that: include: processor; a memory for storing processor-executable instructions; The processor is configured to execute the background management method as described in any one of claims 1-8.
11. A non-transitory computer-readable storage medium, characterized in that: When the instructions in the storage medium are executed by a processor of an electronic device, the electronic device is enabled to execute the background management method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Application program processing method and device, storage medium and electronic equipment
CN107632697A
Application program processing method and deice, storage medium and electronic equipment
CN107943583A
Application program processing method and device, electronic equipment and computer readable storage medium
CN109992370A
Application program priority level adjustment method and apparatus, and storage medium and electronic device
WO2020133408A1
Application program management method and apparatus, electronic device, and storage medium
WO2021077261A1