WO2023202127A1 - 应用管控方法、装置、存储介质以及电子设备 - Google Patents

应用管控方法、装置、存储介质以及电子设备 Download PDF

Info

Publication number
WO2023202127A1
WO2023202127A1 PCT/CN2022/140832 CN2022140832W WO2023202127A1 WO 2023202127 A1 WO2023202127 A1 WO 2023202127A1 CN 2022140832 W CN2022140832 W CN 2022140832W WO 2023202127 A1 WO2023202127 A1 WO 2023202127A1
Authority
WO
WIPO (PCT)
Prior art keywords
running
application
scene
scenario
system resources
Prior art date
Application number
PCT/CN2022/140832
Other languages
English (en)
French (fr)
Inventor
鞠怀伟
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Publication of WO2023202127A1 publication Critical patent/WO2023202127A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Definitions

  • This application belongs to the field of electronic technology, and in particular relates to an application management and control method, device, storage medium and electronic equipment.
  • Electronic devices such as smartphones or tablets usually have multiple applications with different functions installed to address the different needs of users.
  • the system of electronic devices supports multiple applications running at the same time, that is, one application runs in the foreground and other applications can run in the background.
  • Embodiments of the present application provide an application management and control method, device, storage medium and electronic device, which can avoid the foreground application lagging caused by the background application occupying system resources when the running scenario of the foreground application is a preset running scenario.
  • embodiments of this application provide an application management and control method, including:
  • the background application is suspended.
  • an application management and control device including:
  • the information acquisition module is used to obtain scene information used to identify the running scene of the foreground application
  • a scene identification module configured to identify the running scene of the foreground application according to the scene information
  • a pause module is used to pause the background application if the running scenario of the foreground application is a preset running scenario.
  • embodiments of the present application provide a storage medium on which a computer program is stored.
  • the computer program is executed on a computer, the computer is caused to execute the application management and control method provided by the embodiment of the present application.
  • an embodiment of the present application further provides an electronic device, including a memory and a processor.
  • the processor is configured to execute the application management and control method provided by the embodiment of the present application by calling a computer program stored in the memory.
  • Figure 1 is a schematic flowchart of an application management and control method provided by an embodiment of the present application.
  • Figure 2 is a schematic diagram of the interior of the application provided by the embodiment of the present application.
  • Figure 3 is a schematic structural diagram of an application management and control device provided by an embodiment of the present application.
  • Figure 4 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • Embodiments of the present application provide an application management and control method, an application management and control device, a storage medium and an electronic device.
  • the execution subject of the application management and control method may be the application management and control device provided in the embodiment of the present application, or an electronic device integrated with the application management and control device.
  • the application management and control device can be implemented in hardware or software.
  • electronic devices can be smartphones, tablets, PDAs, laptops and other devices equipped with processors and capable of application management and control.
  • the embodiment of this application provides an application management and control method, including:
  • the background application is controlled to suspend execution of the corresponding task.
  • the scene information includes a running scene signal, and identifying the running scene of the foreground application according to the scene information includes:
  • the running scene of the foreground application is identified.
  • the scenario information also includes application running information, and identifying the running scenario of the foreground application according to the running scenario signal includes:
  • the running scenario signal and the application running information the running scenario of the foreground application is identified.
  • the scene information also includes device status information, and identifying the running scene of the foreground application based on the running scene signal and the application running information includes:
  • the running scenario of the foreground application is identified according to the running scenario signal, the application running information and the device status information.
  • identifying the running scenario of the foreground application based on the scenario information includes:
  • the running scenario of the foreground application is identified.
  • controlling the background application to suspend execution of corresponding tasks includes:
  • the released system resources and the background occupied system resources occupied by each background application determine the target background application that needs to be suspended from the multiple background applications;
  • determining the target background application that needs to be suspended from the multiple background applications based on the released system resources and the background occupied system resources occupied by each background application includes:
  • the target background application that needs to be suspended is determined from the multiple background applications, wherein the system resources occupied by the target background application are not Less than freeing system resources.
  • the running priority of the background application is determined according to usage parameters of the background application.
  • Figure 1 is a schematic flow chart of an application management and control method provided by an embodiment of the present application. The process may include:
  • Electronic devices such as smartphones or tablets usually have multiple applications with different functions installed to address the different needs of users.
  • the system of electronic devices supports multiple applications running at the same time, that is, one application runs in the foreground and other applications can run in the background.
  • applications running in the foreground can be called foreground applications
  • applications running in the background can be called background applications.
  • Main thread A thread that spawns other sub-threads to execute program control. Usually the main thread must complete execution last because it performs various shutdown actions. In addition, when the application is running in the foreground, the main thread is responsible for distributing events to UI components, including drawing events.
  • Activity application component, which interacts with the screen. Each Activity gets a window for drawing its user interface. The window can fill the screen or be smaller than the screen and float on top of other windows.
  • Interaction mechanism tasks related to inter-process communication, including the following:
  • Network heartbeat packet Maintain the network connection between the communicating parties and determine whether the communicating client is online normally.
  • Broadcast sending and receiving The mechanism for transferring messages between applications is a global listener. Broadcasting uses the observer mode. The message-based publishing and subscription event model decouples the sender and receiver of the broadcast, making the system easy to integrate and expand.
  • Content providers provide some specific application data to other applications. Data can be stored in the file system, SQLite database or other locations. The content resolver talks to any content provider and works with it to manage all relevant interactions.
  • Alarm clock-type scheduled tasks are mainly managed through the AlarmManager class. Services are started at some set time points for event processing. Some long-running operations can also be initialized, such as daily weather forecast data acquisition. .
  • Task scheduler The application uses the task scheduler to determine which tasks are not urgent, leave tasks that are not time-sensitive to it, and package multiple tasks for execution in one scenario. If within a certain period If the specific execution requirements are not met, it will add these tasks to the queue and execute them later. However, this function is often used irregularly for background keep-alive.
  • Account synchronization This means that any third-party application can synchronize data to the server within a certain period of time through this function, such as data synchronization of WeChat accounts and Google accounts. When the system synchronizes accounts, it will also bring dormant application processes back to life.
  • Ongoing notifications Continuous notifications are repeated until canceled by the user, such as alarm clock notifications.
  • the electronic device can obtain scene information for identifying the running scene of the foreground application, identify the running scene of the foreground application, and identify whether the running scene of the foreground application is a preset running scene.
  • the front-end application is a game application.
  • Game applications include game planning and gameplay implementation logic, game engines such as unity or unreal, etc.
  • Game applications synchronize status transmission and reception between the local network and the server, and also include scene exchange SDKs that cooperate with OEM manufacturers. , this SDK can send important information in game applications to the system, such as skydiving scenes, finals scenes or open magnification scenes in chicken-fighting game applications, or team battle scenes or confrontation scenes in moba game applications.
  • Game loading scenes, etc., or running scene signals of key scenes such as game loading scenes or nitrogen spray scenes in racing game applications are sent to the system side, and are sent from the system side to the application management and control device to inform the integrated application management and control device
  • the electronic device game application is in a critical operating scenario or enters a critical operating scenario after a corresponding period of time.
  • front-end applications they can also send the running scene information of key scenes to the system side when they are in key scenes.
  • camera applications can send the running scene signals of key scenes such as preview scenes to the system side.
  • Video Class applications can send the operating scene signals of key scenes such as high-definition video playback scenes to the system side.
  • Instant messaging applications can send the operating scene signals of key scenes such as video chat to the system side, and then the system side sends them to the application management and control device.
  • the scene information may include the above-mentioned running scene signal.
  • the scene information can also include the number of drawing frames per second, the average frame rate, the freezing rate, the central processor and the graphics processor in the system-on-chip. and input and output (IO) frequency or load status, CPU or graphics processor utilization, rendering pipeline status information, such as OpenGl's graphics sync command, fence command and other public drawing APIs, SurfaceView real-time quantity information, that is The number of frame buffers, usually 2, user touch information, temperature of electronic devices, power consumption, network conditions, etc.
  • IO input and output
  • rendering pipeline status information such as OpenGl's graphics sync command, fence command and other public drawing APIs
  • SurfaceView real-time quantity information that is The number of frame buffers, usually 2, user touch information, temperature of electronic devices, power consumption, network conditions, etc.
  • the electronic device After obtaining the scene information, the electronic device can identify the running scene of the foreground application based on the scene information.
  • the electronic device can determine based on the scene signal that the running scene of the foreground application is a preset running scene or enter the preset running scene after a corresponding period of time.
  • the electronic device can determine that the running scenario of the foreground application is the preset running scenario when the CPU utilization increases sharply.
  • the electronic device can determine that the running scene of the foreground application is a predetermined one when the utilization of the GPU increases sharply and the number of drawing frames per second suddenly decreases. Set up a running scenario.
  • the electronic device can suspend the running of the background application when the running scenario of the foreground application is the preset running scenario. For example, the electronic device can suspend all background applications.
  • pausing background applications refers to controlling background applications to suspend execution of corresponding tasks, such as account synchronization, ongoing notifications, or task scheduling.
  • the electronic device can resume the normal operation of the background application.
  • the electronic device can maintain the normal operation of the background application.
  • the scenario information used to identify the running scenario of the foreground application is obtained; the running scenario of the foreground application is identified according to the scenario information; if the running scenario of the foreground application is a preset running scenario, the running of the background application is suspended , you can pause the running of the background application when the running scenario of the foreground application is the preset running scenario, thereby avoiding the phenomenon of foreground application lagging caused by the background application occupying system resources when the running scenario of the foreground application is the preset running scenario.
  • the scene information may include a running scene signal.
  • identifying the running scene of the foreground application may include:
  • the running scene of the foreground application is identified.
  • the electronic device when acquiring the running scene signal, can directly determine the running scene of the foreground application as the preset running scene.
  • the foreground application when it is in an open magnification scene, the foreground application will generate an open magnification scene signal and send it to the application management and control device to inform the electronic device integrated with the application management and control device that it is in the open magnification scene.
  • the scene is magnified so that the electronic device can determine that the foreground application is in a preset running scene.
  • the scene information may include a running scene signal and application running information.
  • identifying the running scene of the foreground application may include:
  • the application running information may include the number of drawing frames per second, average frame rate, freeze rate, central processor, graphics processor and input and output (IO) in the system-on-chip, etc. Frequency or load status, CPU or graphics processor utilization, rendering pipeline status information, such as OpenGl's graphics sync command, fence command and other public drawing APIs, SurfaceView real-time quantity information, that is, the number of frame buffers, usually 2 individuals, user touch information, etc. It can be understood that, for applications other than game applications, the application running information may include information other than application running information unique to game applications.
  • the foreground application installed on the electronic device can also run smoothly in some key scenarios.
  • the background application can not be paused and the background application can be maintained.
  • the electronic device can suspend the running of the background application to avoid the problem of the foreground application being stuck due to the running of the background application.
  • the electronic device can further determine whether the running scenario of the foreground application is a preset running scenario based on the application running information, so as to suspend the running of the background application when the running scenario of the foreground application is the preset running scenario.
  • developers can pre-collect application running information when the foreground application is stuck, and form corresponding conditions based on the application running information, so that when the application running information currently obtained by the electronic device meets the corresponding conditions, the electronic device can determine the running of the foreground application.
  • the scene is a preset running scene.
  • the electronic device can determine whether the CPU load exceeds the preset CPU load range, and whether the GPU load exceeds the preset GPU load range; if the CPU load exceeds the preset CPU load range, Load range, and the GPU load exceeds the preset GPU load range, the electronic device can determine that the running scenario of the foreground application is the preset running scenario; if the CPU load does not exceed the preset CPU load range, or the GPU load does not exceed the preset GPU load range, The electronic device may determine that the running scenario of the foreground application is a non-default running scenario.
  • the application running information including CPU frequency and frame rate as an example.
  • the CPU load exceeds the corresponding load range, it is set to the preset CPU load range, and the frame rate is less than the corresponding frame rate, and when it is set to the preset frame rate, Foreground applications often suffer from lagging.
  • the electronic device can determine whether the CPU load exceeds the preset CPU load range and whether the frame rate is greater than or equal to the preset frame rate; if the CPU load exceeds the preset frame rate, Assuming the CPU load range and the frame rate is greater than or equal to the preset frame rate, the electronic device can determine that the running scene of the foreground application is the preset running scene; if the CPU load does not exceed the preset CPU load range, or the frame rate is less than the preset frame rate , the electronic device can determine that the running scenario of the foreground application is a non-default running scenario.
  • the scene information may include running scene signals, application running information and device status information.
  • identifying the running scene of the foreground application may include:
  • the running scenario of the foreground application is identified based on the running scenario signal, application running information and device status information.
  • the device status information may include the temperature, power consumption or network status of the electronic device, etc.
  • the foreground application installed on the electronic device can also run smoothly in some key scenarios.
  • the background application can not be paused and the background application can be maintained.
  • the electronic device can suspend the running of the background application to avoid the problem of the foreground application being stuck due to the running of the background application.
  • the electronic device can further determine whether the running scenario of the foreground application is a preset running scenario based on the application running information and the device status information, so as to suspend the running of the background application when the running scenario of the foreground application is the preset running scenario.
  • developers can collect application running information and device status information in advance when the foreground application is stuck, and form corresponding conditions based on the application running information and device status information, so that the application running information and device status information currently obtained by the electronic device meet the corresponding requirements.
  • the electronic device can determine that the running scenario of the foreground application is the preset running scenario.
  • the application running information including CPU load and GPU load
  • the device status information including the temperature of the electronic device.
  • the preset CPU load range is set, and the GPU exceeds the corresponding load range.
  • the GPU load range is preset, and the temperature of the electronic device exceeds the corresponding temperature.
  • the preset temperature is set, the foreground application often freezes.
  • the electronic device can determine whether the CPU load exceeds The preset CPU load range, whether the GPU load exceeds the preset GPU load range, and whether the temperature of the electronic device exceeds the preset temperature; if the CPU load exceeds the preset CPU load range, the GPU load exceeds the preset GPU load range, and the temperature of the electronic device If the temperature exceeds the preset temperature, the electronic device can determine that the running scenario of the foreground application is the preset running scenario; if the CPU load does not exceed the preset CPU load range, or the GPU load does not exceed the preset GPU load range, or the temperature of the electronic device does not exceed With the preset temperature, the electronic device can determine that the operating scenario of the foreground application is a non-preset operating scenario.
  • the application running information including CPU frequency and frame rate
  • the device status information including the power consumption of electronic devices.
  • the CPU load exceeds the corresponding load range
  • the preset CPU load range is set, and the frame rate is less than the corresponding frame rate.
  • set to the preset frame rate and the power consumption of the electronic device is greater than the corresponding power consumption.
  • the foreground application often suffers from lagging.
  • the electronic device can determine Whether the CPU load exceeds the preset CPU load range, whether the frame rate is greater than or equal to the preset frame rate, and whether the power consumption of the electronic device is greater than the preset power consumption; if the CPU load exceeds the preset CPU load range, the frame rate is greater than or equal to the preset Assuming the frame rate, and the power consumption of the electronic device is greater than the preset power consumption, the electronic device can determine that the running scene of the foreground application is the preset running scene; if the CPU load does not exceed the preset CPU load range, or the frame rate is less than the preset frame rate , or the power consumption of the electronic device is less than or equal to the preset power consumption, the electronic device can determine that the running scenario of the foreground application is a non-preset running scenario.
  • the scene information may include application running information. According to the scene information, identifying the running scene of the foreground application may include:
  • the running scenario of the foreground application is identified.
  • developers can pre-collect application running information when the foreground application is stuck, and form corresponding conditions based on the application running information, so that when the application running information currently obtained by the electronic device meets the corresponding conditions, the electronic device can determine the running of the foreground application.
  • the scene is a preset running scene.
  • the CPU load exceeds the corresponding load range, it is set to the preset CPU load range, and when the GPU exceeds the corresponding load range, it is set to the preset GPU load range.
  • the electronic device can determine whether the CPU load exceeds the preset CPU load range, and whether the GPU load exceeds the preset GPU load range; if the CPU load exceeds the preset Assuming the CPU load range, and the GPU load exceeds the preset GPU load range, the electronic device can determine that the running scenario of the foreground application is the preset running scenario; if the CPU load does not exceed the preset CPU load range, or the GPU load does not exceed the preset GPU load Within the scope, the electronic device can determine that the running scenario of the foreground application is a non-default running scenario.
  • the application running information including CPU frequency and frame rate as an example.
  • the CPU load exceeds the corresponding load range, it is set to the preset CPU load range, and the frame rate is less than the corresponding frame rate, and when it is set to the preset frame rate, Foreground applications often suffer from lagging.
  • the electronic device can determine whether the CPU load exceeds the preset CPU load range and whether the frame rate is greater than or equal to the preset frame rate; if the CPU load If the preset CPU load range is exceeded and the frame rate is greater than or equal to the preset frame rate, the electronic device can determine that the running scene of the foreground application is the preset running scene; if the CPU load does not exceed the preset CPU load range, or the frame rate is less than the preset Frame rate, the electronic device can determine that the running scene of the foreground application is a non-preset running scene.
  • the scene information may include application running information. According to the scene information, identifying the running scene of the foreground application may include:
  • the running scenario of the foreground application is identified.
  • developers can pre-collect device status information when the foreground application is stuck, and form corresponding conditions based on the device status information.
  • the electronic device can determine the operation of the foreground application.
  • the scene is a preset running scene.
  • the device status information including the temperature of the electronic device as an example.
  • the foreground application will often freeze.
  • the electronic device can determine whether the temperature of the electronic device exceeds the preset temperature; if the temperature of the electronic device exceeds the preset temperature, the electronic device can determine that the operating scene of the foreground application is the preset operating scene; if the temperature of the electronic device does not exceed the preset temperature, the electronic device The device can determine that the running scenario of the foreground application is a non-default running scenario.
  • the electronic device status information including the power consumption of the electronic device as an example.
  • the power consumption of the electronic device is greater than the corresponding power consumption and is set to the default power consumption, the foreground application often suffers from lags.
  • the electronic device can determine whether the power consumption of the electronic device is greater than the preset power consumption; if the power consumption of the electronic device is greater than the preset power consumption, the electronic device can determine that the running scenario of the foreground application is the preset running scenario; if If the power consumption of the electronic device is less than or equal to the preset power consumption, the electronic device can determine that the running scenario of the foreground application is a non-preset running scenario.
  • the scene information may include application running information and device status information. According to the scene information, identifying the running scene of the foreground application may include:
  • developers can collect application running information and device status information in advance when the foreground application is stuck, and form corresponding conditions based on the application running information and device status information, so that the application running information and device status information currently obtained by the electronic device meet the corresponding requirements.
  • the electronic device can determine that the running scenario of the foreground application is the preset running scenario.
  • the application running information including CPU load and GPU load
  • the device status information including the temperature of the electronic device.
  • the CPU load exceeds the corresponding load range the preset CPU load range is set, and the GPU exceeds the corresponding load range.
  • the GPU load range is preset and the temperature of the electronic device exceeds the corresponding temperature, the foreground application often freezes when the preset temperature is set.
  • the electronic device can determine whether the CPU load exceeds the preset CPU load range, whether the GPU load exceeds the preset GPU load range, and whether the temperature of the electronic device exceeds the preset temperature; if the CPU load exceeds the preset CPU load range, the GPU load exceeds the preset GPU Load range, and the temperature of the electronic device exceeds the preset temperature, the electronic device can determine that the running scenario of the foreground application is the preset running scenario; if the CPU load does not exceed the preset CPU load range, or the GPU load does not exceed the preset GPU load range, Or the temperature of the electronic device does not exceed the preset temperature, and the electronic device can determine that the operating scenario of the foreground application is a non-preset operating scenario.
  • the application running information including CPU frequency and frame rate
  • the device status information including the power consumption of electronic devices.
  • the CPU load exceeds the corresponding load range
  • the preset CPU load range is set, and the frame rate is less than the corresponding frame rate.
  • set to the preset frame rate and the power consumption of the electronic device is greater than the corresponding power consumption.
  • the foreground application often suffers from lagging.
  • the electronic device can determine whether the CPU load exceeds the preset CPU load range, whether the frame rate is greater than or equal to the preset frame rate, and whether the power consumption of the electronic device is greater than the preset power consumption; if the CPU load exceeds the preset CPU load range, the frame rate is greater than or equal to the preset frame rate, and the power consumption of the electronic device is greater than the preset power consumption, the electronic device can determine that the running scene of the foreground application is the preset running scene; if the CPU load does not exceed the preset CPU load range, Either the frame rate is less than the preset frame rate, or the power consumption of the electronic device is less than or equal to the preset power consumption, the electronic device may determine that the running scenario of the foreground application is a non-preset running scenario.
  • identifying the running scenario of the foreground application based on scenario information may include:
  • the running scenario of the foreground application is identified.
  • the electronic device can pre-set the operating scenario scoring model. Then, after obtaining the scenario information, the electronic device can input the scenario information into the operating scenario scoring model to obtain the corresponding operating scenario score; then, the electronic device can according to the operating scenario scoring model.
  • Running scenario scoring identifies the running scenarios of foreground applications. For example, when the running scenario score is greater than or equal to the preset score, the electronic device can determine that the running scenario of the foreground application is the preset running scenario; when the running scenario score is less than the preset score, the electronic device can determine that the running scenario of the foreground application is not.
  • the preset score can be determined according to the actual situation, and there are no specific restrictions here. For example, a preset rating could be 70, 75, or 80, etc.
  • the scene scoring model will determine the score corresponding to the running scene signal, and use the score corresponding to the running scene signal as the running scene score.
  • the scores corresponding to signals in different operating scenarios can be set by developers or determined by electronic devices based on certain rules.
  • the running scene signal is a skydiving scene signal
  • the score corresponding to the skydiving scene signal is 100
  • the running scene score is 100.
  • the electronic device can determine that the running scene of the foreground application is the preset running Scenes.
  • the scenario information includes the running scenario signal and the application running information.
  • the scenario scoring model will respectively determine the score and weight corresponding to the running scenario signal and the application running information.
  • the score and weight corresponding to the information then, the scene scoring model will perform a weighted operation based on the score and weight corresponding to the operating scene signal and the score and weight corresponding to the application operating information to obtain the operating scene score.
  • the scores and weights corresponding to different operating scenario signals and the scores and weights corresponding to different application operating information can be set by developers, or can be determined by the electronic device based on certain rules.
  • the scene scoring model After inputting the final round scene signal, CPU frequency, and GPU frequency into the scene scoring model, the scene scoring model will determine the The score and weight corresponding to the scene signal of the finals, the score and weight corresponding to the CPU frequency, and the score and weight corresponding to the GPU frequency; then, the scene scoring model will calculate the score corresponding to the scene signal of the finals and the weight corresponding to the scene signal of the finals The product of , the first weight score is obtained, the product of the score corresponding to the CPU frequency and the score corresponding to the CPU frequency is obtained, and the second weight score is obtained, and the product of the score corresponding to the GPU frequency and the weight corresponding to the GPU frequency is obtained, the third weight score is obtained.
  • the electronic device can use the sum of the first weighted score, the second weighted score, and the third weighted score as the operating scenario score. Assume that the score corresponding to the scene signal of the finals is 100 and the weight is 0.8, the score corresponding to the CPU frequency is 90 and the weight is 0.1, the score corresponding to the GPU frequency is 80 and the weight is 0.1, then the scene score is 97. Assume that the preset If the score is 80, the electronic device can determine that the running scenario of the foreground application is the preset running scenario.
  • scene information includes running scene signals, application running information, and device status information.
  • the scene scoring model After inputting the running scene signals, application running information, and device status information into the scene scoring model, the scene scoring model will determine the corresponding running scene signals respectively.
  • the scores and weights corresponding to the status information are weighted to obtain the running scenario score.
  • the scores and weights corresponding to different operating scenario signals and the scores and weights corresponding to different application operating information can be set by developers, or can be determined by the electronic device based on certain rules.
  • the scene scoring model will determine the scores and weights corresponding to the loading scene signal of the game, the scores and weights corresponding to the CPU frequency, the scores and weights corresponding to the GPU frequency, and the scores and weights corresponding to the temperature of the electronic device.
  • the scene scoring model will calculate the product of the score corresponding to the loading scene signal of the game and the weight corresponding to the running scene to obtain the fourth weight score, which is the product of the score corresponding to the CPU frequency and the weight corresponding to the CPU frequency,
  • the fifth weight score is obtained
  • the product of the score corresponding to the GPU frequency and the weight corresponding to the GPU frequency is obtained
  • the sixth weight score is obtained
  • the product of the score corresponding to the temperature of the electronic device and the weight corresponding to the temperature of the electronic device is obtained.
  • the seventh weight score the electronic device can use the sum of the fourth weight score, the fifth weight score, the sixth weight score and the seventh weight score as the operating scenario score.
  • the game loading scene signal has a score of 90 and a weight of 0.7
  • the CPU frequency has a score of 90 and a weight of 0.1
  • the GPU frequency has a score of 80 and a weight of 0.1
  • the temperature of the electronic device has a score of 90, and the weight is 0.1
  • the running scenario score is 89.
  • the electronic device can determine that the running scenario of the foreground application is the preset running scenario.
  • scenario information includes application running information
  • scenario scoring model will determine the running scenario score based on the application running information
  • the scene scoring model will determine the score and weight corresponding to the CPU frequency and the score and weight corresponding to the GPU frequency respectively; Subsequently, the scene scoring model will calculate the product of the score corresponding to the CPU frequency and the weight corresponding to the CPU frequency to obtain the eighth weight score, and the product of the score corresponding to the GPU frequency and the weight corresponding to the GPU frequency to obtain the ninth weight Scoring; the electronic device can use the sum of the eighth weight score and the ninth weight score as the operating scenario score.
  • the running scenario score is 85.
  • the electronic device can determine the foreground application
  • the running scenario is the preset running scenario.
  • the scores and weights corresponding to different CPU frequencies and the scores and weights corresponding to different GPU frequencies can be set by developers, or can be determined by the electronic device based on certain rules.
  • the electronic device can directly use the score corresponding to the CPU frequency as the running scene score.
  • the scene scoring model will determine the running scene score based on the device status information.
  • the device status information includes the temperature of the electronic device and the power consumption of the electronic device.
  • the scene scoring model will respectively determine the temperature corresponding to the temperature of the electronic device.
  • the score and weight correspond to the score and weight of the electronic device; then, the scene scoring model will calculate the product of the score corresponding to the temperature of the electronic device and the weight corresponding to the temperature of the electronic device to obtain the tenth weight score, and the The product of the score corresponding to the power consumption of the electronic device and the weight corresponding to the power consumption of the electronic device is the eleventh weight score; the electronic device can use the sum of the tenth weight score and the eleventh weight score as the operating scenario score.
  • the temperature of the electronic device corresponds to a score of 90 and the weight is 0.5
  • the power consumption of the electronic device corresponds to a score of 80 and a weight of 0.5
  • the running scenario score is 85.
  • the preset score is 80.
  • the device can determine that the running scenario of the foreground application is the preset running scenario.
  • the scores and weights corresponding to the temperatures of different electronic devices, and the scores and weights corresponding to the power consumption of different electronic devices can be set by developers, or can be determined by the electronic device based on certain rules.
  • the electronic device can directly use the score corresponding to the temperature of the electronic device as the operating scene score.
  • the scene information includes application running information and device status information.
  • the scene scoring model will determine the score and weight corresponding to the application running information and the device status information respectively. The corresponding score and weight; then, the scene scoring model will perform a weighted operation based on the score and weight corresponding to the application's running information and the score and weight corresponding to the device status information to obtain the running scene score.
  • the scores and weights corresponding to different operating scenario signals and the scores and weights corresponding to different application operating information can be set by developers, or can be determined by the electronic device based on certain rules.
  • the application running information includes the CPU frequency and GPU frequency
  • the device status information includes the temperature of the electronic device.
  • the scene scoring model will calculate the product of the score corresponding to the CPU frequency and the score corresponding to the CPU frequency to obtain the twelfth weight Score, the product of the score corresponding to the GPU frequency and the weight corresponding to the GPU frequency is obtained, and the thirteenth weight score is obtained, and the product of the score corresponding to the temperature of the electronic device and the weight corresponding to the temperature of the electronic device is obtained, the fourteenth weight score is obtained Weight score; the electronic device can use the sum of the twelfth weight score, the thirteenth weight score and the fourteenth weight score as the scene score.
  • the CPU frequency corresponds to a score of 90 and the weight is 0.4
  • the GPU frequency corresponds to a score of 80 and the weight is 0.4
  • the temperature of the electronic device corresponds to a score of 90 and a weight of 0.2
  • the scene score is 86.
  • the electronic device can determine that the running scenario of the foreground application is the preset running scenario.
  • suspending the running of background applications may include:
  • the required system resources corresponding to the preset running scenario refer to the system resources required to maintain the foreground application in the preset running scenario without lagging.
  • the electronic device can determine any 3 background applications as target background applications and suspend the running of the target background applications. .
  • determining the target background application that needs to be suspended from multiple background applications based on the released system resources and the background occupied system resources occupied by each background application may include:
  • the target background application that needs to be suspended is determined from multiple background applications.
  • the system resources occupied by the target background application are not less than Release system resources.
  • the electronic device can pre-set the running priority of each application based on the corresponding rules, and according to the background occupation system resources occupied by each background application, the release of system resources and the running priority of the background application from low to high, from the most Determine the target background application that needs to be suspended among the background applications. In other words, applications with lower running priority can be paused first.
  • the running priority of background application A1 is lower than the running priority of background application A2, and the running priority of background application A2 is lower than the running priority of background application A3.
  • the running priority of background application A3 is lower than the running priority of background application A4, and the running priority of background application A4 is lower than the running priority of background application A5.
  • the electronic device can first determine the background Whether the system resources occupied by the background of application A1 are not less than the system resources released, if the system resources occupied by the background of application A1 are not less than the system resources released, the electronic device can only suspend the background application A1, if the system resources occupied by the background of background application A1 are less In order to release system resources, the electronic device can determine whether the system resources occupied by the background application A1 and the background application A2 are not less than the released system resources. If the system resources occupied by the background application A1 and the background application A2 are not less than the released system resources, the electronic device The device can pause background application A1 and background application A2. By analogy, the electronic device can determine which background applications need to be suspended in the above manner, and then suspend the determined background applications that need to be suspended.
  • the electronic device can pre-set the running priority of each application based on corresponding rules, and according to the background occupation system resources occupied by each background application, release system resources and the running priority of the background application from high to low, from high to low. Determine the target background application that needs to be suspended among multiple background applications. In other words, the application with a higher running priority can be paused first.
  • the electronic device can first determine the background Whether the system resources occupied by the background of application A6 are not less than those released by the system resources. If the system resources occupied by the background of application A6 are not less than those released, the electronic device can only suspend the background application A6.
  • the electronic device can determine whether the system resources occupied by the background application A6 and the background application A7 are not less than the released system resources. If the system resources occupied by the background application A6 and the background application A7 are not less than the released system resources, the electronic device The device can pause background application A6 and background application A7. By analogy, the electronic device can determine which background applications need to be suspended in the above manner, and then suspend the determined background applications that need to be suspended.
  • the running priority of the background application is determined according to the usage parameters of the background application.
  • the usage parameters may include at least one of usage frequency, running duration, last opening time, last opening duration, etc.
  • the electronic device can determine the running priority of the background application based on the frequency of use of the background application. For example, multiple usage frequency ranges can be divided, and different usage frequency ranges correspond to different running priorities. Then, the electronic device can determine the usage frequency range in which the usage frequency of each background application lies, thereby determining the corresponding running priority of each background application.
  • the electronic device can determine the running priority of the background application based on the usage frequency and running time of the background application. For example, the electronic device can pre-establish a preset mapping relationship between the usage frequency and running time of the application and the running priority, so that the electronic device can determine the running priority of the background application based on the usage frequency and running time of the background application and the preset mapping relationship. class.
  • An embodiment of the present application provides an application management and control device, including:
  • the information acquisition module is used to obtain scene information used to identify the running scene of the foreground application
  • a scene identification module configured to identify the running scene of the foreground application according to the scene information
  • a pause operation module is used to control the background application to suspend execution of corresponding tasks if the running scenario of the foreground application is a preset running scenario.
  • the scene information includes a running scene signal
  • the scene identification module is configured to identify the running scene of the foreground application according to the running scene signal.
  • the scene information also includes application running information
  • the scene identification module is configured to: perform the operation scenario of the foreground application according to the running scene signal and the application running information. Identify.
  • the scene information also includes device status information
  • the scene identification module is configured to: based on the running scene signal, the application running information and the device status information, determine the Identify the running scenario of the foreground application.
  • the scene identification module is configured to: input the scene information into a running scene scoring model to obtain a running scene score; and calculate the running scene of the foreground application according to the running scene score. to identify.
  • the pause operation module is used to: when there are multiple background applications, determine the required system resources corresponding to the preset running scenario, the foreground occupied system resources occupied by the running of the foreground application, The background occupied system resources and the current remaining system resources occupied by each background application; the system resources to be replenished are determined based on the required system resources and the system resources occupied by the foreground; the system resources to be replenished are determined based on the system resources to be replenished and the current remaining system resources. Release system resources that need to be released; determine the target background application that needs to be suspended from the multiple background applications based on the released system resources and the background occupied system resources occupied by each background application; control the suspension of execution of the target background application corresponding tasks.
  • the suspension module is configured to: determine from the plurality of background applications based on the background occupied system resources occupied by each background application, the released system resources and the running priority of the background application.
  • the target background application needs to be suspended, and the system resources occupied by the target background application are no less than the system resources released.
  • the running priority of the background application is determined according to usage parameters of the background application.
  • the application management and control device 200 includes: an information acquisition module 201, a scene recognition module 202, and a suspension module 203.
  • the information acquisition module 201 is used to acquire scene information used to identify the running scene of the foreground application
  • the scene identification module 202 is used to identify the running scene of the foreground application based on the scene information
  • the pause module 203 is used to pause the background application if the running scenario of the foreground application is a preset running scenario.
  • the scene information includes a running scene signal
  • the scene identification module 202 can be used to: identify the running scene of the foreground application according to the running scene signal.
  • the scene information also includes application running information.
  • the scene identification module 202 can be used to identify the running scene of the foreground application according to the running scene signal and the application running information.
  • the scene information also includes device status information.
  • the scene identification module 202 can be used to identify the running scene of the foreground application based on the running scene signal, application running information and device status information.
  • the scene identification module 202 may be used to: input scene information into the running scene scoring model to obtain the running scene score; and identify the running scene of the foreground application based on the running scene score.
  • the suspension module 203 can be used to: when there are multiple background applications, determine the required system resources corresponding to the preset running scenario, the foreground occupied system resources occupied by the running of the foreground application, and the system resources occupied by each of the background applications.
  • the background system resources occupied by background applications and the current remaining system resources are determined; the system resources to be replenished are determined based on the required system resources and the system resources occupied by the foreground; the released system resources that need to be released are determined based on the system resources to be replenished and the current remaining system resources; the released system resources are determined based on the system resources to be released.
  • Resources and system resources occupied by each background application Determine the target background application that needs to be paused from multiple background applications; pause the target background application.
  • the suspension module 203 can be configured to: according to the background occupied system resources occupied by each background application, the release of system resources and the running priority of the background application from low to high, from multiple Determine the target background application that needs to be suspended among the background applications, wherein the system resources occupied by the target background application are no less than the released system resources.
  • the running priority of the background application is determined according to the usage parameters of the background application.
  • the application management and control device 200 provided in the embodiment of this application belongs to the same concept as the application management and control method in the above embodiment. For details of its implementation, please refer to the above related embodiments and will not be described again here.
  • An embodiment of the present application provides a storage medium on which a computer program is stored.
  • the processor of the electronic device When the computer program stored therein is executed on the processor of the electronic device provided by the embodiment of the present application, the processor of the electronic device is caused to execute any of the above methods. Steps in the application control method for electronic equipment.
  • the storage medium can be a magnetic disk, an optical disk, a read-only memory (Read Only Memory, ROM) or a random access memory (Random Access Memory, RAM), etc.
  • An embodiment of the present application provides an electronic device.
  • the electronic device includes a processor and a memory.
  • a computer program is stored in the memory.
  • the processor calls the computer program stored in the memory to execute:
  • the background application is controlled to suspend execution of the corresponding task.
  • the scene information includes a running scene signal
  • the processor is configured to execute:
  • the running scene of the foreground application is identified.
  • the scene information also includes application running information, and the processor is configured to execute:
  • the running scenario signal and the application running information the running scenario of the foreground application is identified.
  • the scene information also includes device status information
  • the processor is configured to execute:
  • the running scenario of the foreground application is identified according to the running scenario signal, the application running information and the device status information.
  • the processor is configured to execute:
  • the running scenario of the foreground application is identified.
  • the processor is configured to execute:
  • the released system resources and the background occupied system resources occupied by each background application determine the target background application that needs to be suspended from the multiple background applications;
  • the processor is configured to execute:
  • the target background application that needs to be suspended is determined from the multiple background applications, wherein the system resources occupied by the target background application are not Less than freeing system resources.
  • the running priority of the background application is determined according to usage parameters of the background application.
  • the electronic device 300 includes components such as a processor 301 and a memory 302 .
  • the structure of the electronic device shown in FIG. 4 does not constitute a limitation on the electronic device, and may include more or fewer components than shown, or combine certain components, or arrange different components.
  • the processor 301 in the embodiment of the present application may be a general-purpose processor, such as an ARM architecture processor.
  • the computer program is stored in the memory 302, which can be a high-speed random access memory or a non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory 302 may also include a memory controller to provide the processor 301 with access to the memory 302 .
  • the processor 301 executes the computer program in the memory 302 to perform:
  • scene information identify the running scene of the foreground application
  • the background application will be suspended.
  • the scene information includes a running scene signal.
  • the processor 301 may perform: identify the running scene of the foreground application based on the running scene signal. .
  • the scene information also includes application running information.
  • the processor 301 may perform: based on the running scene signal and the application running information, identify the foreground application. Identify the application’s running scenarios.
  • the scene information also includes device status information.
  • the processor 301 may perform: according to the running scene signal, application running information Information and device status information to identify the running scenarios of the foreground application.
  • the processor 301 when the processor 301 identifies the running scenario of the foreground application according to the scenario information, it can perform: input the scenario information into the running scenario scoring model to obtain the running scenario score; according to the running scenario score, Identify the running scenarios of foreground applications.
  • the processor 301 when it suspends the running of a background application, it may perform: when there are multiple background applications, determine the required system resources corresponding to the preset running scenario and the foreground occupied system occupied by the running of the foreground application. resources, the background occupied system resources occupied by each background application and the current remaining system resources; determine the system resources to be replenished based on the required system resources and the system resources occupied by the foreground; determine the released system resources that need to be released based on the system resources to be replenished and the current remaining system resources ; According to the released system resources and the background occupied system resources occupied by each background application, determine the target background application that needs to be suspended from multiple background applications; suspend the target background application.
  • the processor 301 when the processor 301 determines the target background application that needs to be suspended from multiple background applications based on the released system resources and the background occupied system resources occupied by each background application, it may perform: according to each background application
  • the background occupied system resources occupied by background applications, released system resources and the running priority of background applications are determined in order from low to high from multiple background applications to determine the target background application that needs to be suspended.
  • the system resources occupied by the target background application are No less than freeing up system resources.
  • the running priority of the background application is determined according to the usage parameters of the background application.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种应用管控方法、装置、存储介质及电子设备。该方法包括:获取用于识别前台应用的运行场景的场景信息;根据场景信息,对前台应用的运行场景进行识别;若前台应用的运行场景为预设运行场景,则暂停运行后台应用。

Description

应用管控方法、装置、存储介质以及电子设备
本申请要求于2022年4月20日提交中国专利局、申请号为202210420372.4、申请名称为“应用管控方法、装置、存储介质及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请属于电子技术领域,尤其涉及一种应用管控方法、装置、存储介质及电子设备。
背景技术
智能手机或平板电脑等电子设备上,通常会安装多个不同功能的应用,以解决用户的不同需求。目前,电子设备的系统支持多个应用同时运行,即一个应用在前台运行,其他应用可以在后台运行。
发明内容
本申请实施例提供一种应用管控方法、装置、存储介质及电子设备,可以避免在前台应用的运行场景为预设运行场景时,因后台应用占用系统资源导致的前台应用卡顿的现象。
第一方面,本申请实施例提供一种应用管控方法,包括:
获取用于识别前台应用的运行场景的场景信息;
根据所述场景信息,对所述前台应用的运行场景进行识别;
若所述前台应用的运行场景为预设运行场景,则暂停运行后台应用。
第二方面,本申请实施例提供一种应用管控装置,包括:
信息获取模块,用于获取用于识别前台应用的运行场景的场景信息;
场景识别模块,用于根据所述场景信息,对所述前台应用的运行场景进行识别;
暂停运行模块,用于若所述前台应用的运行场景为预设运行场景,则暂停运行后台应用。
第三方面,本申请实施例提供一种存储介质,其上存储有计算机程序,当所述计算机程序在计算机上执行时,使得所述计算机执行本申请实施例提供的应用管控方法。
第四方面,本申请实施例还提供一种电子设备,包括存储器,处理器,所述处理器通过调用所述存储器中存储的计算机程序,用于执行本申请实施例提供的应用管控方法。
附图说明
下面结合附图,通过对本申请的具体实施方式详细描述,将使本申请的技术方案及其有益效果显而易见。
图1是本申请实施例提供的应用管控方法的流程示意图。
图2是本申请实施例提供的应用内部的示意图。
图3是本申请实施例提供的应用管控装置的结构示意图。
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
请参照图示,其中相同的组件符号代表相同的组件,本申请的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本申请具体实施例,其不应被视为限制本申请未在此详述的其它具体实施例。
本申请实施例提供一种应用管控方法、应用管控装置、存储介质及电子设备,其中应用管控方法的执行主体可以是本申请实施例提供的应用管控装置,或者集成了该应用管控装置的电子设备,其中该应用管控装置可以采用硬件或者软件的方式实现。其中,电子设备可以是智能手机、平板电脑、掌上电脑、笔记本电脑等配置有处理器而具有应用管控能 力的设备。
本申请实施例提供一种应用管控方法,包括:
获取用于识别前台应用的运行场景的场景信息;
根据所述场景信息,对所述前台应用的运行场景进行识别;
若所述前台应用的运行场景为预设运行场景,则控制后台应用暂停执行相应的任务。
在一可选地实施例中,所述场景信息包括运行场景信号,所述根据所述场景信息,对所述前台应用的运行场景进行识别,包括:
根据所述运行场景信号,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景信息还包括应用运行信息,所述根据所述运行场景信号,对所述前台应用的运行场景进行识别,包括:
根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景信息还包括设备状态信息,所述根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别,包括:
根据所述运行场景信号、所述应用运行信息和所述设备状态信息,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述根据所述场景信息,对所述前台应用的运行场景进行识别,包括:
将所述场景信息输入运行场景评分模型中,得到运行场景评分;
根据所述运行场景评分,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述控制后台应用暂停执行相应的任务,包括:
当存在多个后台应用时,确定所述预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;
根据所述需求系统资源和所述前台占用系统资源确定待补系统资源;
根据所述待补系统资源和所述当前剩余系统资源确定需要释放的释放系统资源;
根据所述释放系统资源和每个后台应用占用的后台占用系统资源,从所述多个后台应用中确定需要暂停运行的目标后台应用;
控制所述目标后台应用暂停执行相应的任务。
在一可选地实施例中,所述根据所述释放系统资源和每个后台应用占用的后台占用系统资源从所述多个后台应用中确定需要暂停运行的目标后台应用,包括:
根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级,从所述多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
在一可选地实施例中,所述后台应用的运行优先级根据所述后台应用的使用参数确定。
请参阅图1,图1是本申请实施例提供的应用管控方法的流程示意图,流程可以包括:
101、获取用于识别前台应用的运行场景的场景信息。
智能手机或平板电脑等电子设备上,通常会安装多个不同功能的应用,以解决用户的不同需求。目前,电子设备的系统支持多个应用同时运行,即一个应用在前台运行,其他应用可以在后台运行。其中,前台运行的应用可以称为前台应用,后台运行的应用可以称为后台应用。
其中,如图2所示,从应用内部来看,包括以下内容:
主线程:产生其他子线程的线程,执行程序的控制,通常主线程必须最后完成执行,因为它执行各种关闭动作。另外,当应用在前台运行时,主线程会负责向UI组件分发事件, 包括绘制事件。
Activity:应用组件,它与屏幕进行交互。每个Activity都会获得一个用于绘制其用户界面的窗口,窗口可以充满屏幕也可以小于屏幕并浮动在其他窗口之上。
服务:是实现程序后台运行的解决方案,适合执行不需要和用户交互而且还要长期运行的任务。不依赖于任何用户界面,能够保持独立运行。
交互机制:进程间通信相关任务,包括以下几种:
(1)网络心跳包:维护通信双方之间的网络连接,判断通信客户是否正常在线。
(2)广播收发:应用间传递消息的机制全局的监听器,广播使用了观察者模式。基于消息的发布,订阅事件模型,将广播的发送者和接收者解耦,使得系统方便集成,更易扩展。
(3)内容提供:内容提供者将一些特定的应用数据供给其它应用使用。数据可以存储于文件系统、SQLite数据库或其它位置。内容解析器与任意内容提供者进行会话,与其合作来对所有相关交互通讯进行管理。
(4)定时同步:闹钟式定时任务,主要通过AlarmManager类对其进行管理,在一些设定的时间点启动服务进行事件处理,还可以初始化一些长时间运行的操作,如每天天气预报的数据获取。
(5)任务调度器:应用使用任务调度器,需要判断哪些任务是不紧急的,把时效性不强的工作丢给它做,将多个任务打包在一个场景下执行,如果在一定期限内还没有满足特定执行所需情况,它会将这些任务加入队列,并且随后会进行执行,但往往这个功能,经常被不规范的用于后台保活。
(6)帐号同步:指任何第三方应用可通过此功能将数据在一定时间内同步到服务器中去,如微信帐号、Google账号的数据同步。系统在将帐号同步时,也会将休眠的应用进程拉活。
(7)进行中通知:持续的通知一直重复,直到用户取消,如闹钟通知。
可以理解的是,前台应用处于一些预设运行场景时,通常需要较多的系统资源,而后台应用在后台运行时,通过会间接性地执行相应的任务,如账号同步、进行中通知或任务调度等,而这些任务的执行往往会占用一些系统资源,从而导致前台应用因资源不足而卡顿的现象。基于此,电子设备可获取用于识别前台应用的运行场景的场景信息,对前台应用的运行场景进行识别,以识别前台应用的运行场景是否为预设运行场景。
以前台应用为游戏类应用为例,游戏类应用包括游戏策划玩法实现逻辑、游戏引擎如unity或unreal等,游戏类应用本地网络与服务器间状态同步收发,还包括与OEM厂家合作的场景交换SDK,该SDK可以将游戏类应用内重要信息发送给系统端,如将吃鸡类游戏应用中的跳伞场景、决赛圈场景或开倍镜场景等,或者moba类游戏应用中的团战场景或对局加载场景等,或竞速类游戏应用中的对局加载场景或喷氮气场景等关键场景的运行场景信号发送给系统端,并由系统端发送至应用管控装置,以告知集成有应用管控装置的电子设备游戏类应用处于关键运行场景或在相应时长后进入关键运行场景。而对于其他类型的前台应用,其也可以在处于关键场景时,将关键场景的运行场景信息发送至系统端,如摄像类应用可将预览场景等关键场景的运行场景信号发送至系统端,视频类应用可将高清视频播放场景等关键场景的运行场景信号发送至系统端,即时通信类应用可将视频聊天等关键场景的运行场景信号发送至系统端,并由系统端发送至应用管控装置,以告知集成有应用管控装置的电子设备其处于关键运行场景或在相应时长后进入关键运行场景。其中,场景信息可以包括上述运行场景信号。
继续以前台应用为游戏类应用为例,除了上述运行场景信号之外,场景信息还可以包括每秒的绘制帧数、平均帧率、卡顿率、片上系统中的中央处理器、图形处理器和输入输 出(IO)等的频率或负载状态、中央处理器或图形处理器的利用率、渲染管线pipeline状态信息,如OpenGl的图形sync命令、fence命令等公共绘图API、SurfaceView实时数量信息,即帧缓存数量,一般是2个、用户触控信息、电子设备的温度、功耗、网络状况,等等。可以理解的是,对于除游戏类应用之外的应用,除了上述运行场景信号之外,场景信息可以包括除游戏类应用特有的场景信息之外的信息。
102、根据场景信息,对前台应用的运行场景进行识别。
在获取到场景信息之后,电子设备可根据该场景信息,对前台应用的运行场景进行识别。
例如,当场景信息包括运行场景信号时,电子设备可根据该场景信号,确定前台应用的运行场景为预设运行场景或在相应时长后进入预设运行场景。
又例如,当场景信息包括CPU的利用率时,电子设备可在CPU的利用率陡增时,确定前台应用的运行场景为预设运行场景。
又例如,当场景信息包括GPU的利用率和每秒的绘制帧数时,电子设备可在GPU的利用率陡增,且每秒的绘制帧数突然变少时,确定前台应用的运行场景为预设运行场景。
需要说明的是,以上仅是对根据场景信息,确定前台应用的运行场景的几种示例,并不用于限制本申请。
103、若前台应用的运行场景为预设运行场景,则暂停运行后台应用。
本实施例中,若前台应用的运行场景为预设运行场景,则表示需要给前台应用提供相对较多的系统资源才能维持前台应用的正常运行,而后台应用执行的一些任务往往即时性需求较小,因此,为避免因后台应用执行相应任务导致前台应用卡顿,电子设备可在前台应用的运行场景为预设运行场景时,暂停运行后台应用。比如,电子设备可暂停运行所有的后台应用。
可以理解的是,暂停运行后台应用是指控制后台应用暂停执行相应的任务,如账号同步、进行中通知或任务调度等。
还可以理解的是,当前台应用由预设运行场景进入非预设运行场景时,电子设备可以恢复后台应用的正常运行。当前台应用处于非预设运行场景时,电子设备可保持后台应用的正常运行。
本申请实施例中,通过获取用于识别前台应用的运行场景的场景信息;根据场景信息,对前台应用的运行场景进行识别;若前台应用的运行场景为预设运行场景,则暂停运行后台应用,可以在前台应用的运行场景为预设运行场景时,暂停运行后台应用,从而可以避免在前台应用的运行场景为预设运行场景时,因后台应用占用系统资源导致的前台应用卡顿的现象。
在一可选地实施例中,场景信息可以包括运行场景信号,根据场景信息,对前台应用的运行场景进行识别,可以包括:
根据运行场景信号,对前台应用的运行场景进行识别。
本实施例中,电子设备可以在获取到运行场景信号时,直接将前台应用的运行场景确定为预设运行场景。
例如,以吃鸡类游戏应用为例,在处于开倍镜场景时,前台应用会生成一开倍镜场景信号,并发送至应用管控装置,以告知集成有应用管控装置的电子设备其处于开倍镜场景,从而电子设备可确定前台应用处于预设运行场景。
在一可选地实施例中,场景信息可以包括运行场景信号和应用运行信息,根据运行场景信号,对前台应用的运行场景进行识别,可以包括:
根据运行场景信号和应用运行信息,对前台应用的运行场景进行识别。
其中,以前台应用为游戏类应用为例,应用运行信息可以包括每秒的绘制帧数、平均 帧率、卡顿率、片上系统中的中央处理器、图形处理器和输入输出(IO)等的频率或负载状态、中央处理器或图形处理器的利用率、渲染管线pipeline状态信息,如OpenGl的图形sync命令、fence命令等公共绘图API、SurfaceView实时数量信息,即帧缓存数量,一般是2个、用户触控信息,等等。可以理解的是,对于除游戏类应用之外的应用,应用运行信息可以包括除游戏类应用特有的应用运行信息之外的信息。
可以理解的是,当电子设备的配置较高时,安装在该电子设备上的前台应用在处于一些关键场景时,也可以很流畅的运行,此时可以不暂停运行后台应用,保持后台应用的正常运行,而在前台应用处于一些无法流畅运行的关键场景时,电子设备可暂停运行后台应用,以避免因后台应用的运行造成前台应用卡顿的问题,基于此,在获取到场景运行信号时,电子设备还可进一步根据应用运行信息,来确定前台应用的运行场景是否为预设运行场景,从而在前台应用的运行场景为预设运行场景时,暂停运行后台应用。
比如,可由开发人员预先收集前台应用卡顿时的应用运行信息,基于该应用运行信息形成相应的条件,从而在电子设备当前获取的应用运行信息满足相应的条件时,电子设备可确定前台应用的运行场景为预设运行场景。
例如,以应用运行信息包括CPU负载和GPU负载为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,且GPU超过相应的负载范围,设为预设GPU负载范围时,前台应用往往会存在卡顿现象,那么,当接收到运行场景信号时,电子设备可判断CPU负载是否超过预设CPU负载范围,且GPU负载是否超过预设GPU负载范围;若CPU负载超过预设CPU负载范围,且GPU负载超过预设GPU负载范围,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或GPU负载不超过预设GPU负载范围,电子设备可确定前台应用的运行场景为非预设运行场景。
又例如,以应用运行信息包括CPU频率和帧率为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,且帧率小于相应的帧率,设为预设帧率时,前台应用往往会存在卡顿现象,那么,当接收到运行场景信号时,电子设备可判断CPU负载是否超过预设CPU负载范围,且帧率是否大于或等于预设帧率;若CPU负载超过预设CPU负载范围,且帧率大于或等于预设帧率,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或帧率小于预设帧率,电子设备可确定前台应用的运行场景为非预设运行场景。
可以理解的是,以上仅是本申请给出的几种示例,并不用于限制本申请,在实际应用中,本领域技术人员可根据需要或经验确定应用运行信息具体包括哪些信息,以及根据需要或经验确定在接收到运行场景信号时,应用运行信息需要满足何种条件才判定前台应用的运行场景为预设运行场景。
在一可选地实施例中,场景信息可以包括运行场景信号、应用运行信息和设备状态信息,根据运行场景信号和应用运行信息,对前台应用的运行场景进行识别,可以包括:
根据运行场景信号、应用运行信息和设备状态信息,对前台应用的运行场景进行识别。
其中,设备状态信息可以包括电子设备的温度、功耗或网络状况,等等。
可以理解的是,当电子设备的配置较高时,安装在该电子设备上的前台应用在处于一些关键场景时,也可以很流畅的运行,此时可以不暂停运行后台应用,保持后台应用的正常运行,而在前台应用处于一些无法流畅运行的关键场景时,电子设备可暂停运行后台应用,以避免因后台应用的运行造成前台应用卡顿的问题,基于此,在获取到场景运行信号时,电子设备还可进一步根据应用运行信息和设备状态信息,来确定前台应用的运行场景是否为预设运行场景,从而在前台应用的运行场景为预设运行场景时,暂停运行后台应用。
比如,可由开发人员预先收集前台应用卡顿时的应用运行信息和设备状态信息,基于该应用运行信息和设备状态信息形成相应的条件,从而在电子设备当前获取的应用运行信 息和设备状态信息满足相应的条件时,电子设备可确定前台应用的运行场景为预设运行场景。
例如,以应用运行信息包括CPU负载和GPU负载,设备状态信息包括电子设备的温度为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,且GPU超过相应的负载范围,设为预设GPU负载范围,且电子设备的温度超过相应温度,设为预设温度时,前台应用往往会存在卡顿现象,那么,当接收到运行场景信号时,电子设备可判断CPU负载是否超过预设CPU负载范围,GPU负载是否超过预设GPU负载范围,且电子设备的温度是否超过预设温度;若CPU负载超过预设CPU负载范围,GPU负载超过预设GPU负载范围,且电子设备的温度超过预设温度,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或GPU负载不超过预设GPU负载范围,或电子设备的温度不超过预设温度,电子设备可确定前台应用的运行场景为非预设运行场景。
又例如,以应用运行信息包括CPU频率和帧率,设备状态信息包括电子设备的功耗为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,帧率小于相应的帧率,设为预设帧率,且电子设备的功耗大于相应功耗,设为预设功耗时,前台应用往往会存在卡顿现象,那么,当接收到运行场景信号时,电子设备可判断CPU负载是否超过预设CPU负载范围,帧率是否大于或等于预设帧率,且电子设备的功耗是否大于预设功耗;若CPU负载超过预设CPU负载范围,帧率大于或等于预设帧率,且电子设备的功耗大于预设功耗,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或帧率小于预设帧率,或电子设备的功耗小于或等于预设功耗,电子设备可确定前台应用的运行场景为非预设运行场景。
可以理解的是,以上仅是本申请给出的几种示例,并不用于限制本申请,在实际应用中,本领域技术人员可根据需要或经验确定应用运行信息具体包括哪些信息,场景运行信息具体包括哪些信息,以及根据需要或经验确定在接收到运行场景信号时,应用运行信息需要满足何种条件,且设备状态信息需要满足何种条件才判定前台应用的运行场景为预设运行场景。
在一可选地实施例中,场景信息可以包括应用运行信息,根据场景信息,对前台应用的运行场景进行识别,可以包括:
根据应用运行信息,对前台应用的运行场景进行识别。
比如,可由开发人员预先收集前台应用卡顿时的应用运行信息,基于该应用运行信息形成相应的条件,从而在电子设备当前获取的应用运行信息满足相应的条件时,电子设备可确定前台应用的运行场景为预设运行场景。
例如,以应用运行信息包括CPU负载和GPU负载为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,且GPU超过相应的负载范围,设为预设GPU负载范围时,前台应用往往会存在卡顿现象,那么,当获取到CPU负载和GPU负载时,电子设备可判断CPU负载是否超过预设CPU负载范围,且GPU负载是否超过预设GPU负载范围;若CPU负载超过预设CPU负载范围,且GPU负载超过预设GPU负载范围,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或GPU负载不超过预设GPU负载范围,电子设备可确定前台应用的运行场景为非预设运行场景。
又例如,以应用运行信息包括CPU频率和帧率为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,且帧率小于相应的帧率,设为预设帧率时,前台应用往往会存在卡顿现象,那么,当获取到CPU频率和帧率时,电子设备可判断CPU负载是否超过预设CPU负载范围,且帧率是否大于或等于预设帧率;若CPU负载超过预设CPU负载范围,且帧率大于或等于预设帧率,电子设备可确定前台应用的运行场景为预设运行场景; 若CPU负载不超过预设CPU负载范围,或帧率小于预设帧率,电子设备可确定前台应用的运行场景为非预设运行场景。
可以理解的是,以上仅是本申请给出的几种示例,并不用于限制本申请,在实际应用中,本领域技术人员可根据需要或经验确定应用运行信息具体包括哪些信息,以及根据需要或经验确定应用运行信息需要满足何种条件才判定前台应用的运行场景为预设运行场景。
在一些实施例中,场景信息可以包括应用运行信息,根据场景信息,对前台应用的运行场景进行识别,可以包括:
根据设备状态信息,对前台应用的运行场景进行识别。
比如,可由开发人员预先收集前台应用卡顿时的设备状态信息,基于该设备状态信息形成相应的条件,从而在电子设备当前获取的设备状态信息满足相应的条件时,电子设备可确定前台应用的运行场景为预设运行场景。
例如,以设备状态信息包括电子设备的温度为例,当电子设备的温度超过相应温度,设为预设温度时,前台应用往往会存在卡顿现象,那么,当获取到电子设备的温度时,电子设备可电子设备的温度是否超过预设温度;若电子设备的温度超过预设温度,电子设备可确定前台应用的运行场景为预设运行场景;若电子设备的温度不超过预设温度,电子设备可确定前台应用的运行场景为非预设运行场景。
又例如,以设备状态信息包括电子设备的功耗为例,当电子设备的功耗大于相应功耗,设为预设功耗时,前台应用往往会存在卡顿现象,那么,当获取到电子设备的功耗时,电子设备可判断电子设备的功耗是否大于预设功耗;若电子设备的功耗大于预设功耗,电子设备可确定前台应用的运行场景为预设运行场景;若电子设备的功耗小于或等于预设功耗,电子设备可确定前台应用的运行场景为非预设运行场景。
可以理解的是,以上仅是本申请给出的几种示例,并不用于限制本申请,在实际应用中,本领域技术人员可根据需要或经验确定场景运行信息具体包括哪些信息,以及根据需要或经验确定设备状态信息需要满足何种条件才判定前台应用的运行场景为预设运行场景。
在一可选地实施例中,场景信息可以包括应用运行信息和设备状态信息,根据场景信息,对前台应用的运行场景进行识别,可以包括:
根据应用运行信息和设备状态信息,对前台应用的运行场景进行识别。
比如,可由开发人员预先收集前台应用卡顿时的应用运行信息和设备状态信息,基于该应用运行信息和设备状态信息形成相应的条件,从而在电子设备当前获取的应用运行信息和设备状态信息满足相应的条件时,电子设备可确定前台应用的运行场景为预设运行场景。
例如,以应用运行信息包括CPU负载和GPU负载,设备状态信息包括电子设备的温度为例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,且GPU超过相应的负载范围,设为预设GPU负载范围,且电子设备的温度超过相应温度,设为预设温度时,前台应用往往会存在卡顿现象,那么,当获取到CPU负载、GPU负载和电子设备的温度时,电子设备可判断CPU负载是否超过预设CPU负载范围,GPU负载是否超过预设GPU负载范围,且电子设备的温度是否超过预设温度;若CPU负载超过预设CPU负载范围,GPU负载超过预设GPU负载范围,且电子设备的温度超过预设温度,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或GPU负载不超过预设GPU负载范围,或电子设备的温度不超过预设温度,电子设备可确定前台应用的运行场景为非预设运行场景。
又例如,以应用运行信息包括CPU频率和帧率,设备状态信息包括电子设备的功耗为 例,当CPU负载超过相应的负载范围,设为预设CPU负载范围,帧率小于相应的帧率,设为预设帧率,且电子设备的功耗大于相应功耗,设为预设功耗时,前台应用往往会存在卡顿现象,那么,当获取到CPU频率、帧率和电子设备的功耗时,电子设备可判断CPU负载是否超过预设CPU负载范围,帧率是否大于或等于预设帧率,且电子设备的功耗是否大于预设功耗;若CPU负载超过预设CPU负载范围,帧率大于或等于预设帧率,且电子设备的功耗大于预设功耗,电子设备可确定前台应用的运行场景为预设运行场景;若CPU负载不超过预设CPU负载范围,或帧率小于预设帧率,或电子设备的功耗小于或等于预设功耗,电子设备可确定前台应用的运行场景为非预设运行场景。
可以理解的是,以上仅是本申请给出的几种示例,并不用于限制本申请,在实际应用中,本领域技术人员可根据需要或经验确定应用运行信息具体包括哪些信息,场景运行信息具体包括哪些信息,以及根据需要或经验确定应用运行信息需要满足何种条件,且设备状态信息需要满足何种条件才判定前台应用的运行场景为预设运行场景。
在一可选地实施例中,根据场景信息,对前台应用的运行场景进行识别,可以包括:
将场景信息输入运行场景评分模型中,得到运行场景评分;
根据运行场景评分,对前台应用的运行场景进行识别。
比如,电子设备可预先设置运行场景评分模型,那么,当获取到场景信息之后,电子设备可将场景信息输入该运行场景评分模型中,以得到相应的运行场景评分;然后,电子设备可根据该运行场景评分,对前台应用的运行场景进行识别。比如,当运行场景评分大于或等于预设评分时,电子设备可确定前台应用的运行场景为预设运行场景,当运行场景评分小于预设评分时,电子设备可确定前台应用的运行场景为非预设运行场景。其中,预设评分可根据实际情况确定,此处不作具体限制。例如,预设评分可以为70、75或80,等等。
比如,假设场景信息包括运行场景信号,而将该运行场景信号输入该场景评分模型之后,场景评分模型会确定该运行场景信号对应的评分,将该运行场景信号对应的评分作为运行场景评分。其中,不同运行场景信号对应的评分可由开发人员设置,也可以由电子设备基于一定规则确定。
例如,假设运行场景信号为跳伞场景信号,跳伞场景信号对应的评分为100,那么,运行场景评分即为100,假设预设评分为80,则电子设备可确定前台应用的运行场景为预设运行场景。
又比如,假设场景信息包括运行场景信号和应用运行信息,而将该运行场景信号和应用运行信息输入该场景评分模型之后,场景评分模型会分别确定该运行场景信号对应的评分及权重和应用运行信息对应的评分及权重;随后,场景评分模型会基于该运行场景信号对应的评分及权重和应用运行信息对应的评分及权重进行加权运算,得到运行场景评分。其中,不同运行场景信号分别对应的评分和权重,不同应用运行信息分别对应的评分和权重可由开发人员设置,也可以由电子设备基于一定规则确定。
例如,假设决赛圈场景信号包括决赛圈场景信号,应用运行信息包括CPU频率和GPU频率,而将该决赛圈场景信号、CPU频率和GPU频率输入该场景评分模型之后,场景评分模型会分别确定该决赛圈场景信号对应的评分及权重、CPU频率对应的评分及权重和GPU频率对应的评分及权重;随后,场景评分模型会计算该决赛圈场景信号对应的评分与该决赛圈场景信号对应的权重的乘积,得到第一权重评分,该CPU频率对应的评分与该CPU频率对应的评分的乘积,得到第二权重评分,以及该GPU频率对应的评分与该GPU频率对应的权重的乘积,得到第三权重评分;电子设备可将第一权重评分、第二权重评分和第三权重评分的和作为运行场景评分。假设决赛圈场景信号对应的评分为100,权重为0.8,CPU频率对应的评分为90,权重为0.1,GPU频率对应的评分为80,权重为0.1,那么, 场景评分即为97,假设预设评分为80,则电子设备可确定前台应用的运行场景为预设运行场景。
比如,假设场景信息包括运行场景信号、应用运行信息和设备状态信息,而将该运行场景信号、应用运行信息和设备状态信息输入该场景评分模型之后,场景评分模型会分别确定该运行场景信号对应的评分及权重、应用运行信息对应的评分及权重和设备状态信息对应的评分和权重;随后,场景评分模型会基于该运行场景信号对应的评分及权重、应用运行信息对应的评分及权重和设备状态信息对应的评分和权重进行加权运算,得到运行场景评分。其中,不同运行场景信号分别对应的评分和权重,不同应用运行信息分别对应的评分和权重可由开发人员设置,也可以由电子设备基于一定规则确定。
例如,假设运行场景信号包括对局加载场景信号,应用运行信息包括CPU频率、GPU频率,设备状态信息包括电子设备的温度,而将该对局加载场景信号、CPU频率、GPU频率和电子设备的温度输入该场景评分模型之后,场景评分模型会分别确定该对局加载场景信号对应的评分及权重、CPU频率对应的评分及权重、GPU频率对应的评分及权重和电子设备的温度对应的评分及权重;随后,场景评分模型会计算该对局加载场景信号对应的评分与该运行场景对应的权重的乘积,得到第四权重评分,该CPU频率对应的评分与该CPU频率对应的权重的乘积,得到第五权重评分,该GPU频率对应的评分与该GPU频率对应的权重的乘积,得到第六权重评分,以及该电子设备的温度对应的评分与该电子设备的温度对应的权重的乘积,得到第七权重评分;电子设备可将第四权重评分、第五权重评分、第六权重评分和第七权重评分的和作为运行场景评分。例如,假设对局加载场景信号对应的评分为90,权重为0.7,CPU频率对应的评分为90,权重为0.1,GPU频率对应的评分为80,权重为0.1,电子设备的温度对应的评分为90,权重为0.1,那么,运行场景评分即为89,假设预设评分为80,则电子设备可确定前台应用的运行场景为预设运行场景。
又比如,假设场景信息包括应用运行信息,而将该应用运行信息输入该场景评分模型之后,场景评分模型会根据应用运行信息,确定运行场景评分。
例如,假设应用运行信息包括CPU频率和GPU频率,而将CPU频率和GPU频率输入该场景评分模型之后,场景评分模型会分别确定该CPU频率对应的评分及权重和GPU频率对应的评分及权重;随后,场景评分模型会计算该CPU频率对应的评分与该CPU频率对应的权重的乘积,得到第八权重评分,以及该GPU频率对应的评分与该GPU频率对应的权重的乘积,得到第九权重评分;电子设备可将第八权重评分和第九权重评分的和作为运行场景评分。例如,假设CPU频率对应的评分为90,权重为0.5,GPU频率对应的评分为80,权重为0.5,那么,运行场景评分即为85,假设预设评分为80,则电子设备可确定前台应用的运行场景为预设运行场景。其中,不同CPU频率分别对应的评分和权重,不同GPU频率分别对应的评分和权重可由开发人员设置,也可以由电子设备基于一定规则确定。
可以理解的是,当应用运行信息仅包括一种信息时,如仅包括CPU频率时,电子设备可直接将CPU频率对应的评分作为运行场景评分。
比如,假设场景信息包括设备状态信息,而将该设备状态信息输入该场景评分模型之后,场景评分模型会根据设备状态信息,确定运行场景评分。
例如,假设设备状态信息包括电子设备的温度和电子设备的功耗,而将电子设备的温度和电子设备的功耗输入该场景评分模型之后,场景评分模型会分别确定该电子设备的温度对应的评分及权重和电子设备的功耗对应的评分及权重;随后,场景评分模型会计算该电子设备的温度对应的评分与该电子设备的温度对应的权重的乘积,得到第十权重评分,以及该电子设备的功耗对应的评分与该电子设备的功耗对应的权重的乘积,得到第十一权重评分;电子设备可将第十权重评分和第十一权重评分的和作为运行场景评分。例如,假 设电子设备的温度对应的评分为90,权重为0.5,电子设备的功耗对应的评分为80,权重为0.5,那么,运行场景评分即为85,假设预设评分为80,则电子设备可确定前台应用的运行场景为预设运行场景。其中,不同电子设备的温度分别对应的评分和权重,不同电子设备的功耗分别对应的评分和权重可由开发人员设置,也可以由电子设备基于一定规则确定。
可以理解的是,当设备状态信息仅包括一种信息时,如仅包括电子设备的温度时,电子设备可直接将电子设备的温度对应的评分作为运行场景评分。
又比如,假设场景信息包括应用运行信息和设备状态信息,而将该应用运行信息和设备状态信息输入该场景评分模型之后,场景评分模型会分别确定应用运行信息对应的评分及权重和设备状态信息对应的评分和权重;随后,场景评分模型会基于该应用运行信息对应的评分及权重和设备状态信息对应的评分和权重进行加权运算,得到运行场景评分。其中,不同运行场景信号分别对应的评分和权重,不同应用运行信息分别对应的评分和权重可由开发人员设置,也可以由电子设备基于一定规则确定。
假设应用运行信息包括CPU频率和GPU频率,设备状态信息包括电子设备的温度,而将该CPU频率、GPU频率和电子设备的温度输入该场景评分模型之后,场景评分模型会分别确定CPU频率对应的评分及权重、GPU频率对应的评分及权重和电子设备的温度对应的评分及权重;随后,场景评分模型会计算该CPU频率对应的评分与该CPU频率对应的评分的乘积,得到第十二权重评分,该GPU频率对应的评分与该GPU频率对应的权重的乘积,得到第十三权重评分,以及该电子设备的温度对应的评分与该电子设备的温度对应的权重的乘积,得到第十四权重评分;电子设备可将第十二权重评分、第十三权重评分和第十四权重评分的和作为场景评分。例如,假设CPU频率对应的评分为90,权重为0.4,GPU频率对应的评分为80,权重为0.4,电子设备的温度对应的评分为90,权重为0.2,那么,场景评分即为86,假设预设评分为80,则电子设备可确定前台应用的运行场景为预设运行场景。
在一可选地实施例中,暂停运行后台应用,可以包括:
当存在多个后台应用时,确定预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;
根据需求系统资源和前台占用系统资源确定待补系统资源;
根据待补系统资源和当前剩余系统资源确定需要释放的释放系统资源;
根据释放系统资源和每个后台应用占用的后台占用系统资源,从多个后台应用中确定需要暂停运行的目标后台应用;
暂停运行目标后台应用。
其中,预设运行场景对应的需求系统资源指维持前台应用处于预设运行场景不卡顿所需的系统资源。
比如,假设有5个后台应用,其中,任意3个后台应用占用的后台占用系统资源总和大于待补系统资源,电子设备可将任意3个后台应用确定为目标后台应用,并暂停运行目标后台应用。
在一可选地实施例中,根据释放系统资源和每个后台应用占用的后台占用系统资源从多个后台应用中确定需要暂停运行的目标后台应用,可以包括:
根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级,从多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
比如,电子设备可基于相应的规则预先设置各应用的运行优先级,并根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级从低到高的顺序,从 多个后台应用中确定需要暂停运行的目标后台应用,也即是说,运行优先级较低的应用,可以优先进行暂停。
例如,假设有后台应用A1、A2、A3、A4和A5,其中,后台应用A1的运行优先级低于后台应用A2的运行优先级,后台应用A2的运行优先级低于后台应用A3的运行优先级,后台应用A3的运行优先级低于后台应用A4的运行优先级,后台应用A4的运行优先级低于后台应用A5的运行优先级,当确定出释放系统资源之后,电子设备可先判断后台应用A1的后台占用系统资源是否不少于释放系统资源,若后台应用A1的后台占用系统资源不少于释放系统资源,电子设备可仅暂停后台应用A1,若后台应用A1的后台占用系统资源少于释放系统资源,电子设备可判断后台应用A1和后台应用A2的后台占用系统资源是否不少于释放系统资源,若后台应用A1和后台应用A2的后台占用系统资源不少于释放系统资源,电子设备可暂停后台应用A1和后台应用A2。以此类推,电子设备可按照上述方式确定具体需要暂停哪些后台应用,然后将确定的需要暂停的后台应用暂停。
又比如,电子设备可基于相应的规则预先设置各应用的运行优先级,并根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级从高到低的顺序,从多个后台应用中确定需要暂停运行的目标后台应用,也即是说,运行优先级较高的应用,可以优先进行暂停。
例如,假设有后台应用A6、A7、A8、A9和A10,其中,后台应用A6的运行优先级高于后台应用A7的运行优先级,后台应用A7的运行优先级高于后台应用A8的运行优先级,后台应用A8的运行优先级高于后台应用A9的运行优先级,后台应用A9的运行优先级高于后台应用A10的运行优先级,当确定出释放系统资源之后,电子设备可先判断后台应用A6的后台占用系统资源是否不少于释放系统资源,若后台应用A6的后台占用系统资源不少于释放系统资源,电子设备可仅暂停后台应用A6,若后台应用A6的后台占用系统资源少于释放系统资源,电子设备可判断后台应用A6和后台应用A7的后台占用系统资源是否不少于释放系统资源,若后台应用A6和后台应用A7的后台占用系统资源不少于释放系统资源,电子设备可暂停后台应用A6和后台应用A7。以此类推,电子设备可按照上述方式确定具体需要暂停哪些后台应用,然后将确定的需要暂停的后台应用暂停。
在一可选地实施例中,后台应用的运行优先级根据后台应用的使用参数确定。
其中,使用参数可以包括使用频率、运行时长和最近一次打开时间、最近一次打开时长等中的至少一种。
比如,电子设备可根据后台应用的使用频率确定后台应用的运行优先级。例如,可以划分多个使用频率范围,不同使用频率范围对应不同运行优先级,然后,电子设备可确定各后台应用的使用频率所处的使用频率范围,从而确定各后台应用对应的运行优先级。
又比如,电子设备可根据后台应用的使用频率和运行时长确定后台应用的运行优先级。例如,电子设备可预先建立应用的使用频率和运行时长与运行优先级的预设映射关系,从而电子设备可根据后台应用的使用频率、运行时长和该预设映射关系,确定后台应用的运行优先级。
本申请实施例提供一种应用管控装置,包括:
信息获取模块,用于获取用于识别前台应用的运行场景的场景信息;
场景识别模块,用于根据所述场景信息,对所述前台应用的运行场景进行识别;
暂停运行模块,用于若所述前台应用的运行场景为预设运行场景,则控制后台应用暂停执行相应的任务。
在一可选地实施例中,所述场景信息包括运行场景信号,所述场景识别模块,用于:根据所述运行场景信号,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景信息还包括应用运行信息,所述场景识别模块,用于: 根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景信息还包括设备状态信息,所述场景识别模块,用于:根据所述运行场景信号、所述应用运行信息和所述设备状态信息,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景识别模块,用于:将所述场景信息输入运行场景评分模型中,得到运行场景评分;根据所述运行场景评分,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述暂停运行模块,用于:当存在多个后台应用时,确定所述预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;根据所述需求系统资源和所述前台占用系统资源确定待补系统资源;根据所述待补系统资源和所述当前剩余系统资源确定需要释放的释放系统资源;根据所述释放系统资源和每个后台应用占用的后台占用系统资源,从所述多个后台应用中确定需要暂停运行的目标后台应用;控制所述目标后台应用暂停执行相应的任务。
在一可选地实施例中,所述暂停运行模块,用于:根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级,从所述多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
在一可选地实施例中,所述后台应用的运行优先级根据所述后台应用的使用参数确定。
请参阅图3,图3为本申请实施例提供的应用管控装置的结构示意图。应用管控装置200包括:信息获取模块201、场景识别模块202和暂停运行模块203。
信息获取模块201,用于获取用于识别前台应用的运行场景的场景信息;
场景识别模块202,用于根据场景信息,对前台应用的运行场景进行识别;
暂停运行模块203,用于若前台应用的运行场景为预设运行场景,则暂停运行后台应用。
在一可选地实施例中,场景信息包括运行场景信号,场景识别模块202,可以用于:根据运行场景信号,对前台应用的运行场景进行识别。
在一可选地实施例中,场景信息还包括应用运行信息,场景识别模块202,可以用于:根据运行场景信号和应用运行信息,对前台应用的运行场景进行识别。
在一可选地实施例中,场景信息还包括设备状态信息,场景识别模块202,可以用于:根据运行场景信号、应用运行信息和设备状态信息,对前台应用的运行场景进行识别。
在一可选地实施例中,场景识别模块202,可以用于:将场景信息输入运行场景评分模型中,得到运行场景评分;根据运行场景评分,对前台应用的运行场景进行识别。
在一可选地实施例中,暂停运行模块203,可以用于:当存在多个后台应用时,确定预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;根据需求系统资源和前台占用系统资源确定待补系统资源;根据待补系统资源和当前剩余系统资源确定需要释放的释放系统资源;根据释放系统资源和每个后台应用占用的后台占用系统资源,从多个后台应用中确定需要暂停运行的目标后台应用;暂停运行目标后台应用。
在一可选地实施例中,暂停运行模块203,可以用于:根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级从低到高的顺序,从多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
在一可选地实施例中,后台应用的运行优先级根据后台应用的使用参数确定。
应当说明的是,本申请实施例提供的应用管控装置200与上文实施例中的应用管控方法属于同一构思,其具体实现过程详见以上相关实施例,此处不再赘述。
本申请实施例提供一种存储介质,其上存储有计算机程序,当其存储的计算机程序在本申请实施例提供的电子设备的处理器上执行时,使得电子设备的处理器执行以上任一适于电子设备的应用管控方法中的步骤。其中,存储介质可以是磁碟、光盘、只读存储器(Read Only Memory,ROM)或者随机存取器(Random Access Memory,RAM)等。
本申请实施例提供一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行:
获取用于识别前台应用的运行场景的场景信息;
根据所述场景信息,对所述前台应用的运行场景进行识别;
若所述前台应用的运行场景为预设运行场景,则控制后台应用暂停执行相应的任务。
在一可选地实施例中,所述场景信息包括运行场景信号,所述处理器用于执行:
根据所述运行场景信号,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景信息还包括应用运行信息,所述处理器用于执行:
根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述场景信息还包括设备状态信息,所述处理器用于执行:
根据所述运行场景信号、所述应用运行信息和所述设备状态信息,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述处理器用于执行:
将所述场景信息输入运行场景评分模型中,得到运行场景评分;
根据所述运行场景评分,对所述前台应用的运行场景进行识别。
在一可选地实施例中,所述处理器用于执行:
当存在多个后台应用时,确定所述预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;
根据所述需求系统资源和所述前台占用系统资源确定待补系统资源;
根据所述待补系统资源和所述当前剩余系统资源确定需要释放的释放系统资源;
根据所述释放系统资源和每个后台应用占用的后台占用系统资源,从所述多个后台应用中确定需要暂停运行的目标后台应用;
控制所述目标后台应用暂停执行相应的任务。
在一可选地实施例中,所述处理器用于执行:
根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级,从所述多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
在一可选地实施例中,所述后台应用的运行优先级根据所述后台应用的使用参数确定。
本申请还提供一种电子设备,请参照图4,电子设备300包括处理器301和存储器302等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本申请实施例中的处理器301可以是通用处理器,比如ARM架构的处理器。
存储器302中存储有计算机程序,其可以为高速随机存取存储器,还可以为非易失性存储器,比如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件等。相应地,存储器302还可以包括存储器控制器,以提供处理器301对存储器302的访问。处理器301通过执行存储器302中的计算机程序,用于执行:
获取用于识别前台应用的运行场景的场景信息;
根据场景信息,对前台应用的运行场景进行识别;
若前台应用的运行场景为预设运行场景,则暂停运行后台应用。
在一可选地实施例中,场景信息包括运行场景信号,处理器301执行根据场景信息,对前台应用的运行场景进行识别时,可以执行:根据运行场景信号,对前台应用的运行场景进行识别。
在一可选地实施例中,场景信息还包括应用运行信息,处理器301执行根据运行场景信号,对前台应用的运行场景进行识别时,可以执行:根据运行场景信号和应用运行信息,对前台应用的运行场景进行识别。
在一可选地实施例中,场景信息还包括设备状态信息,处理器301执行根据运行场景信号和应用运行信息,对前台应用的运行场景进行识别时,可以执行:根据运行场景信号、应用运行信息和设备状态信息,对前台应用的运行场景进行识别。
在一可选地实施例中,处理器301执行根据场景信息,对前台应用的运行场景进行识别时,可以执行:将场景信息输入运行场景评分模型中,得到运行场景评分;根据运行场景评分,对前台应用的运行场景进行识别。
在一可选地实施例中,处理器301执行暂停运行后台应用时,可以执行:当存在多个后台应用时,确定预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;根据需求系统资源和前台占用系统资源确定待补系统资源;根据待补系统资源和当前剩余系统资源确定需要释放的释放系统资源;根据释放系统资源和每个后台应用占用的后台占用系统资源,从多个后台应用中确定需要暂停运行的目标后台应用;暂停运行目标后台应用。
在一可选地实施例中,处理器301执行根据释放系统资源和每个后台应用占用的后台占用系统资源从多个后台应用中确定需要暂停运行的目标后台应用时,可以执行:根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级从低到高的顺序,从多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
在一可选地实施例中,后台应用的运行优先级根据后台应用的使用参数确定。
以上对本申请所提供的一种应用管控方法、装置、存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

Claims (20)

  1. 一种应用管控方法,其中,包括:
    获取用于识别前台应用的运行场景的场景信息;
    根据所述场景信息,对所述前台应用的运行场景进行识别;
    若所述前台应用的运行场景为预设运行场景,则控制后台应用暂停执行相应的任务。
  2. 根据权利要求1所述的应用管控方法,其中,所述场景信息包括运行场景信号,所述根据所述场景信息,对所述前台应用的运行场景进行识别,包括:
    根据所述运行场景信号,对所述前台应用的运行场景进行识别。
  3. 根据权利要求2所述的应用管控方法,其中,所述场景信息还包括应用运行信息,所述根据所述运行场景信号,对所述前台应用的运行场景进行识别,包括:
    根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别。
  4. 根据权利要求3所述的应用管控方法,其中,所述场景信息还包括设备状态信息,所述根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别,包括:
    根据所述运行场景信号、所述应用运行信息和所述设备状态信息,对所述前台应用的运行场景进行识别。
  5. 根据权利要求1所述的应用管控方法,其中,所述根据所述场景信息,对所述前台应用的运行场景进行识别,包括:
    将所述场景信息输入运行场景评分模型中,得到运行场景评分;
    根据所述运行场景评分,对所述前台应用的运行场景进行识别。
  6. 根据权利要求1至5任一项所述的应用管控方法,其中,所述控制后台应用暂停执行相应的任务,包括:
    当存在多个后台应用时,确定所述预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;
    根据所述需求系统资源和所述前台占用系统资源确定待补系统资源;
    根据所述待补系统资源和所述当前剩余系统资源确定需要释放的释放系统资源;
    根据所述释放系统资源和每个后台应用占用的后台占用系统资源,从所述多个后台应用中确定需要暂停运行的目标后台应用;
    控制所述目标后台应用暂停执行相应的任务。
  7. 根据权利要求6所述的应用管控方法,其中,所述根据所述释放系统资源和每个后台应用占用的后台占用系统资源从所述多个后台应用中确定需要暂停运行的目标后台应用,包括:
    根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级,从所述多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
  8. 根据权利要求7所述的应用管控方法,其中,所述后台应用的运行优先级根据所述后台应用的使用参数确定。
  9. 一种应用管控装置,其中,包括:
    信息获取模块,用于获取用于识别前台应用的运行场景的场景信息;
    场景识别模块,用于根据所述场景信息,对所述前台应用的运行场景进行识别;
    暂停运行模块,用于若所述前台应用的运行场景为预设运行场景,则控制后台应用暂停执行相应的任务。
  10. 根据权利要求9所述的应用管控装置,其中,所述场景信息包括运行场景信号, 所述场景识别模块,用于:根据所述运行场景信号,对所述前台应用的运行场景进行识别。
  11. 根据权利要求10所述的应用管控装置,其中,所述场景信息还包括应用运行信息,所述场景识别模块,用于:根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别。
  12. 一种存储介质,其中,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行权利要求1至8任一项所述的应用管控方法。
  13. 一种电子设备,其中,所述电子设备包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行:
    获取用于识别前台应用的运行场景的场景信息;
    根据所述场景信息,对所述前台应用的运行场景进行识别;
    若所述前台应用的运行场景为预设运行场景,则控制后台应用暂停执行相应的任务。
  14. 根据权利要求13所述的电子设备,其中,所述场景信息包括运行场景信号,所述处理器用于执行:
    根据所述运行场景信号,对所述前台应用的运行场景进行识别。
  15. 根据权利要求14所述的电子设备,其中,所述场景信息还包括应用运行信息,所述处理器用于执行:
    根据所述运行场景信号和所述应用运行信息,对所述前台应用的运行场景进行识别。
  16. 根据权利要求15所述的电子设备,其中,所述场景信息还包括设备状态信息,所述处理器用于执行:
    根据所述运行场景信号、所述应用运行信息和所述设备状态信息,对所述前台应用的运行场景进行识别。
  17. 根据权利要求13所述的电子设备,其中,所述处理器用于执行:
    将所述场景信息输入运行场景评分模型中,得到运行场景评分;
    根据所述运行场景评分,对所述前台应用的运行场景进行识别。
  18. 根据权利要求13至17任一项所述的电子设备,其中,所述处理器用于执行:
    当存在多个后台应用时,确定所述预设运行场景对应的需求系统资源、前台应用运行所占用的前台占用系统资源、每个后台应用占用的后台占用系统资源以及当前剩余系统资源;
    根据所述需求系统资源和所述前台占用系统资源确定待补系统资源;
    根据所述待补系统资源和所述当前剩余系统资源确定需要释放的释放系统资源;
    根据所述释放系统资源和每个后台应用占用的后台占用系统资源,从所述多个后台应用中确定需要暂停运行的目标后台应用;
    控制所述目标后台应用暂停执行相应的任务。
  19. 根据权利要求18所述的电子设备,其中,所述处理器用于执行:
    根据每个后台应用占用的后台占用系统资源、释放系统资源和后台应用的运行优先级,从所述多个后台应用中确定需要暂停运行的目标后台应用,其中,目标后台应用占用的系统资源不少于释放系统资源。
  20. 根据权利要求19所述的电子设备,其中,所述后台应用的运行优先级根据所述后台应用的使用参数确定。
PCT/CN2022/140832 2022-04-20 2022-12-21 应用管控方法、装置、存储介质以及电子设备 WO2023202127A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210420372.4A CN114780218A (zh) 2022-04-20 2022-04-20 应用管控方法、装置、存储介质及电子设备
CN202210420372.4 2022-04-20

Publications (1)

Publication Number Publication Date
WO2023202127A1 true WO2023202127A1 (zh) 2023-10-26

Family

ID=82430678

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/140832 WO2023202127A1 (zh) 2022-04-20 2022-12-21 应用管控方法、装置、存储介质以及电子设备

Country Status (2)

Country Link
CN (1) CN114780218A (zh)
WO (1) WO2023202127A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114780218A (zh) * 2022-04-20 2022-07-22 Oppo广东移动通信有限公司 应用管控方法、装置、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108664329A (zh) * 2018-05-10 2018-10-16 努比亚技术有限公司 一种资源配置方法、终端及计算机可读存储介质
CN109408223A (zh) * 2018-03-13 2019-03-01 广东欧珀移动通信有限公司 资源配置方法、装置、终端及存储介质
CN110457125A (zh) * 2019-08-05 2019-11-15 深圳传音控股股份有限公司 终端应用的冻结方法、终端设备及存储介质
CN111666140A (zh) * 2020-05-28 2020-09-15 北京百度网讯科技有限公司 资源调度方法、装置、设备和存储介质
US20210311783A1 (en) * 2018-06-08 2021-10-07 Samsung Electronics Co., Ltd. Electronic device for processing background task by using external input and storage medium thereof
CN114780218A (zh) * 2022-04-20 2022-07-22 Oppo广东移动通信有限公司 应用管控方法、装置、存储介质及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9032413B2 (en) * 2011-09-01 2015-05-12 Microsoft Technology Licensing, Llc Decoupling background work and foreground work
CN104699218B (zh) * 2013-12-10 2019-04-19 华为终端(东莞)有限公司 一种任务管理方法及设备
CN107544842B (zh) * 2017-08-25 2019-02-05 Oppo广东移动通信有限公司 应用程序处理方法和装置、计算机设备、存储介质
CN107562539B (zh) * 2017-08-25 2020-08-18 Oppo广东移动通信有限公司 应用程序处理方法和装置、计算机设备、存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408223A (zh) * 2018-03-13 2019-03-01 广东欧珀移动通信有限公司 资源配置方法、装置、终端及存储介质
CN108664329A (zh) * 2018-05-10 2018-10-16 努比亚技术有限公司 一种资源配置方法、终端及计算机可读存储介质
US20210311783A1 (en) * 2018-06-08 2021-10-07 Samsung Electronics Co., Ltd. Electronic device for processing background task by using external input and storage medium thereof
CN110457125A (zh) * 2019-08-05 2019-11-15 深圳传音控股股份有限公司 终端应用的冻结方法、终端设备及存储介质
CN111666140A (zh) * 2020-05-28 2020-09-15 北京百度网讯科技有限公司 资源调度方法、装置、设备和存储介质
CN114780218A (zh) * 2022-04-20 2022-07-22 Oppo广东移动通信有限公司 应用管控方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN114780218A (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
AU2020233755B2 (en) Controlling display performance
WO2019174474A1 (zh) 卡顿信息获取方法、装置及终端
WO2021008543A1 (zh) 一种资源调度的方法和电子设备
US9104476B2 (en) Opportunistic multitasking of VOIP applications
US11568588B2 (en) Controlling display performance using display statistics and feedback
CN113347466B (zh) 一种数据处理方法、装置和存储介质
WO2021104178A1 (zh) 一种动态消息推送方法、系统和汽车诊断服务器
CN111597042A (zh) 业务线程运行方法、装置、存储介质及电子设备
WO2023202127A1 (zh) 应用管控方法、装置、存储介质以及电子设备
WO2019201340A1 (zh) 处理器核心调度方法、装置、终端及存储介质
WO2020063041A1 (zh) 多核处理器的调度方法、装置、终端及存储介质
TWI539273B (zh) 用於減少電力消耗之並行網路應用程式排程技術
WO2021037228A1 (zh) 一种系统应用的管理方法及装置
CN110377140B (zh) 唤醒操作系统的方法、装置、终端及存储介质
WO2023279829A1 (zh) 消息延迟检测方法、装置、电子设备及存储介质
CN112131029A (zh) 广播处理方法、装置、计算机设备及存储介质
CN110515736B (zh) 限制后台对象的方法、装置、终端及存储介质
CN117435355A (zh) 一种数据处理方法、及相关设备
CN116233234A (zh) 消息推送方法、装置、服务器及存储介质
Goldberg et al. Multiple independent processes
AU2013205570A1 (en) Opportunistic multitasking

Legal Events

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

Ref document number: 22938345

Country of ref document: EP

Kind code of ref document: A1