Application keep-alive method and device and storage medium
By obtaining user portraits and determining the keep-alive strategy of the application software based on them, the problem of failure to effectively consider user needs in the prior art is solved, and the application keep-alive effect that improves the user experience while saving memory and reducing power consumption is achieved.
Patent Information
- Application Number
- CN202311568155.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-21
- Publication Date
- 2025-05-30
AI Technical Summary
When maintaining the application software running in the background, the prior art fails to effectively take into account the actual needs of different users for each application software, which causes the operating system to shut down the application software that users still need to use, reducing the user's user experience.
By obtaining the user's user portrait, determine whether the application software is an application software that is to be kept alive or to be checked based on the user portrait, and enable or close its background operation permissions to ensure that the system does not check and kill the application software that is kept alive.
It realizes the maintenance of application software according to the actual needs of users, saves memory, reduces power consumption, and improves user experience.
Smart Images

Figure CN120066600A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of electronic technology, and particularly to a method, device, and storage medium for application keep-alive. Background Art
[0002] With the increasing development of electronic technology, the application software in electronic devices has become more and more diverse. When a user uses an electronic device, multiple application software can run in the background to perform some tasks. Since the application software running in the background will also occupy the memory space of the electronic device and increase the power consumption of the electronic device, in order to ensure the performance of the electronic device, the operating system can kill the application software running in the background.
[0003] At present, an electronic device can perform keep-alive processing on some specific application software so that the specific application software can not be killed by the operating system when running in the background. However, the method of performing keep-alive processing on some specific application software does not take into account the actual needs of different users for each application software. In the actual application scenario, the operating system may still close the application software that the user still needs to run in the background, thus reducing the user experience. Summary of the Invention
[0004] A method, device, and storage medium for application keep-alive provided by this application aim to solve the problem of reduced user experience caused by the application software required by the user being closed by the system.
[0005] To achieve the above object, this application adopts the following technical solutions:
[0006] First aspect: This application provides an application keep-alive method. The electronic device obtains the user portrait corresponding to the application software by responding to the operation of the user switching the application software to run in the background. According to the user portrait, it determines whether the application software is an application software to be kept alive or an application software to be killed. When it is determined that the application software is an application software to be kept alive, the background running permission corresponding to the application software is enabled, so that the electronic device does not kill the application software running in the background; when it is determined that the application software is an application software to be killed, the background running permission corresponding to the application software is closed, so that the electronic device kills the application software running in the background.
[0007] The application keep-alive method provided by this application performs keep-alive on the application software based on the user portrait, taking into account the actual needs of different users for various application software. It can save memory and reduce power consumption while taking into account the actual needs of different users, keep alive the application software that the user needs to use, and improve the user experience.
[0008] In a possible implementation, the electronic device may obtain user data reported by an application software in response to the user switching the application software to run in the background; and generate a user profile corresponding to the application software according to the user data.
[0009] In a possible implementation, the electronic device may obtain user data reported by an application software at a preset collection frequency in response to the user switching the application software to run in the background. Thus, when the user data is updated, the electronic device can obtain the updated user data and generate a corresponding user profile based on the updated user data.
[0010] In a possible implementation, the application software is a payment software. The electronic device may obtain user data reported by the payment software in response to the user switching the payment software to run in the background. The user data includes that the user is a merchant user or the user is a buyer user. According to the user data, a user profile corresponding to the user data is generated, including: when the user data includes that the user is a merchant user, a merchant profile corresponding to the user data is generated according to the user data; or when the user data includes that the user is a buyer user, a buyer profile corresponding to the user data is generated according to the user data.
[0011] In a possible implementation, the electronic device may obtain the behavior information of the user with respect to an application software in response to the user switching the application software to run in the background; and generate a user profile corresponding to the application software according to the behavior information of the user with respect to the application software.
[0012] In a possible implementation, the electronic device may obtain the usage frequency of the user with respect to an application software in response to the user switching the application software to run in the background. A user profile corresponding to the application software is generated according to the usage frequency of the user with respect to the application software, thereby improving the accuracy of the user profile.
[0013] In a possible implementation, the electronic device may obtain the usage frequency of the user with respect to an application software and the status information of the functions associated with the application software in response to the user switching the application software to run in the background. The functions associated with the application software include a voice broadcast function and / or a positioning function. Thus, the electronic device can generate a user profile corresponding to the application software according to the usage frequency of the user with respect to the application software and the status information of the functions associated with the application software.
[0014] In one possible implementation, the electronic device can determine, based on the user portrait, that the application software is the application software to be kept alive or the application software to be killed within a preset time period corresponding to the user portrait. When the application software is the application software to be kept alive, the background running permission corresponding to the application software is enabled within the preset time period so that the system does not kill the application software running in the background. Since the preset time period corresponding to the user portrait is taken into consideration when determining that the application software is the application software to be kept alive or the application software to be killed, the determined keep-alive strategy can be more in line with the user's needs and improve the user's experience.
[0015] Second aspect: The present application provides an electronic device, comprising: a processor and a memory; the memory is used to store program code and transmit the program code to the processor; the processor is used to execute the steps of an application keeping alive method as described above according to the instructions in the program code.
[0016] A third aspect: The present application provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of an application keeping alive method as described above are implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 An interface diagram of an application software running in the foreground provided in an embodiment of the present application;
[0018] Figure 2 A schematic diagram of a multi-task management interface provided in an embodiment of the present application;
[0019] Figure 3 A schematic diagram of switching between foreground and background operation of an application software provided in an embodiment of the present application;
[0020] Figure 4 A schematic diagram of adding an application lock to application software provided in an embodiment of the present application;
[0021] Figure 5 A schematic diagram of an application keep-alive strategy corresponding to different user profiles provided in an embodiment of the present application;
[0022] Figure 6 A schematic diagram of a scenario for unlocking an application lock provided in an embodiment of the present application;
[0023] Figure 7 A software structure block diagram of an electronic device according to an embodiment of the present application;
[0024] Figure 8 A timing diagram of an application keep-alive method provided in an embodiment of the present application;
[0025] Figure 9 The flowchart of an application keep-alive method provided by an embodiment of the present application;
[0026] Figure 10 The flowchart of a payment software keep-alive method provided by an embodiment of the present application. Specific embodiments
[0027] Terms such as "first", "second", and "third" in the description, claims, and drawings of the present application are used to distinguish different objects, rather than to limit a specific order.
[0028] In the embodiments of the present application, words such as "exemplary" or "for example" are used to represent examples, illustrations, or explanations. Any embodiment or design solution described as "exemplary" or "for example" in the embodiments of the present application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present relevant concepts in a specific manner.
[0029] When a user uses an electronic device, multiple application software can run in the background. The application software running in the background can perform some tasks, such as receiving notifications, playing music, etc., and these tasks can be executed without disturbing the user. However, in some cases, the application software running in the background may also affect the performance of the electronic device. Therefore, in order to avoid the application software running in the background from affecting the performance of the electronic device, the operating system can kill the application software running in the background when the memory is insufficient or the power consumption is large.
[0030] At the same time, the electronic device can perform keep-alive processing on some application software based on a certain application keep-alive strategy to protect it from being killed when the operating system kills the application software running in the background. However, the current application keep-alive strategy is usually to perform keep-alive at the application software level. For example, for chat software with a wide audience and being widely used, it can be default keep-alive on each electronic device, while for payment software, it is default not to be keep-alive on each electronic device. In this case, when the payment software runs in the background for a period of time, the system can automatically kill it. The current application keep-alive strategy does not take into account the actual needs of different users for each application software. In the actual application scenario, the system may still close the application software that the user still needs to use, thereby reducing the user experience.
[0031] Based on this, the present application provides an application keep-alive method. In this method, the electronic device determines the application software that needs to be kept alive by obtaining the user portrait of the user, and protects it from being killed by the system. The application keep-alive method provided by the present application keeps the application software alive based on the user portrait. Considering the actual needs of different users for various application software, it can save memory and reduce power consumption while taking into account the actual needs of different users, keep the application software that the user needs to use alive, and improve the user experience.
[0032] It should be noted that the user information (including but not limited to the user's behavior information, user registration information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in the present application are all information and data authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions.
[0033] During the operation of the application software configured on the electronic device, it can be divided into foreground operation and background operation. Figure 1 Taking the payment application as an example, a schematic diagram of the interface of the application software in the foreground operation is shown.
[0034] As Figure 1 shown, the user can click on the payment software icon 1101 in the user interface 1100 to open the payment software and enter the display interface 1200 of the payment software. At this time, the payment software is the application software running in the foreground, and the user can directly interact with the payment software running in the foreground. For example, click on the scan code icon 1201, receive and pay icon 1202, or card package icon 1203, etc. in the display interface 1200. For the application software running in the background, its interface is invisible to the user.
[0035] After the user opens the first application software, the first application software will run in the foreground of the electronic device. If the user then opens the second application software, at this time the first application software will switch from the foreground to the background, and the second application software will run in the foreground of the electronic device. If the user needs to view the application software running in the background, the application software running in the background can be displayed through the multitasking management interface.
[0036] As Figure 2 shown, this figure is a schematic diagram of a multitasking management interface provided by an embodiment of the present application. The travel software 1300, video software 1301, and payment software 1302 shown in the multitasking management interface are all application software running in the background. The user can view the application software running in the background by swiping left and right. For the application software running in the background, the user cannot directly interact with it.
[0037] The user can switch the running state of the application software between the foreground and the background by clicking on the application software displayed in the multitasking management interface. Exemplarily, as Figure 3 shown, when the user clicks on the payment software 1302 in the multitasking management interface, the payment software running in the background can be switched to the foreground for the user to interact with the payment software.
[0038] In this application, the electronic device can, in response to the user's operation of switching the payment software from the foreground to the background, obtain the user portrait of the user, and determine, based on the user portrait, whether the payment software is the application software to be kept alive corresponding to the user portrait. If the payment software is the application software to be kept alive corresponding to the user portrait, the payment software is processed to be kept alive so that the system protects it from being killed when killing the application software running in the background; if the payment software does not belong to the application software to be kept alive corresponding to the user portrait, the system can close the payment software when killing the application software running in the background.
[0039] In a possible implementation manner, if the payment software is the application software to be kept alive corresponding to the user portrait, when the payment software is running in the background, the system can add an application lock to the payment software, as Figure 4 shown. This figure is a schematic diagram of adding an application lock to an application software provided by an embodiment of this application.
[0040] Exemplarily, after the system adds an application lock to the payment software, when the user views the application software running in the background, it can be seen that a lock icon 1500 is displayed in the upper right corner of the payment software, indicating that the payment software is the application software to be kept alive. When the system kills the application software running in the background, it will protect the payment software so that the payment software is not killed by the system, and only kills the non-application software to be kept alive.
[0041] In this application, considering that different users may have different requirements for the same application software, it is determined whether the application software is the application software to be kept alive corresponding to the user portrait through the user portrait of the user. Exemplarily, for the merchant user corresponding to the merchant portrait, it may be necessary to keep the payment software open for a long time to obtain payment information in a timely manner, while for the buyer user corresponding to the buyer portrait, it may only be necessary to temporarily use the payment software for payment and does not require the payment software to run in the background for a long time.
[0042] When the merchant user switches the payment software from the foreground to the background, the operating system can obtain the merchant portrait and, based on the merchant portrait, determine the payment software as the application software to be kept alive, and then process the payment software to be kept alive. For example Figure 5As shown in , the merchant user's electronic device will add an application lock to the payment software to protect it from being killed by the system. When the buyer user switches the payment software from the foreground to the background, the operating system can obtain the buyer's portrait and, based on the buyer's portrait, determine the payment software as an application to be killed and do not process the payment software. For example, Figure 5 As shown in , the electronic device of the buyer user has not added an application lock to the payment software. Therefore, when the system detects and kills the application software running in the background, the payment software can be detected and killed.
[0043] In a possible implementation, the user can manually unlock the application lock corresponding to the payment software, such as Figure 6 As shown, this figure is a schematic diagram of a scenario for unlocking an application lock provided by an embodiment of the present application. For example, the user can unlock the application lock corresponding to the payment software by dragging downward, and the lock icon 1500 in the upper right corner of the payment software disappears. Therefore, when the system subsequently detects and kills the application software running in the background, the payment software can be detected and killed.
[0044] At the same time, the electronic device can update the user's user portrait in response to the user's operation of releasing the application lock, and the updated user portrait can indicate that the payment software is to be detected and killed. Exemplarily, based on the merchant user's merchant portrait, the payment software can be determined as the application software to be kept alive. In this case, if the merchant user manually releases the application lock of the payment software, the electronic device can update the user's user portrait in response to the user's operation of releasing the application lock of the payment software, that is, update the user's merchant portrait to the buyer portrait, so that when the user subsequently switches the payment software from the foreground to the background, the electronic device can not keep the payment software alive based on the buyer portrait.
[0045] In the present application, the operating system of the electronic device may be arranged in layers. Figure 7 The software structure diagram of the electronic device is shown, such as Figure 7 As shown, the operating system of the electronic device comprises an application layer and an application framework layer from top to bottom. Figure 7 Other layers of the operating system are not shown.
[0046] The application layer can include a series of application packages. Figure 7 As shown, the application package may include payment software, food delivery software, taxi-hailing software, power-saving wizard software, etc. In the present application, the power-saving wizard software may be used to obtain a user portrait of the user, and after obtaining the user portrait of the user, the keep-alive strategy of each application software running in the background may be adjusted according to the user portrait.
[0047] The application framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. For example, Figure 7 As shown, the application framework layer may include a Content Provider, a computing engine module, a sensing module, etc. Among them, the Content Provider is used to store and obtain data, and make this data accessible to applications.
[0048] In this application, the power-saving wizard software can query the user portrait of the user through the Content Provider. The sensing module is used to obtain and store user data. The computing engine module can be used to obtain user data from the sensing module, generate a user portrait based on the user data, and send the corresponding user portrait to the power-saving wizard software in response to the user portrait query request sent by the power-saving wizard software.
[0049] Figure 8 Combined with the power-saving wizard software, the computing engine module, the sensing module and the application software, the implementation process of the application software keep-alive method will be introduced.
[0050] Exemplarily, the application software is payment software.
[0051] S101. The user portrait query unit in the power-saving wizard software sends a user portrait query request to the computing engine module in response to the operation of the user switching the application software to run in the background.
[0052] The electronic device starts the power-saving wizard software in response to the operation of the user starting the power-saving wizard software. It should be noted that the power-saving wizard software can also be in a default startup state. For example, the power-saving wizard software can be default to start automatically when the device is powered on, without the need for user operation to start.
[0053] When the power-saving wizard software is in the startup state, the user portrait query unit in the power-saving wizard software can send a user portrait query request to the computing engine module in response to the operation of the user switching the application software to run in the background, so as to obtain the user portrait of the user.
[0054] Among them, the user portrait, also known as the user role, is a user image constructed through data tags. It is obtained by abstracting the specific information of the user into tags and concretizing the user image using these tags. Exemplarily, the user portrait in this application may include, but is not limited to, merchant portraits, rider portraits, driver portraits, and buyer portraits, etc. Among them, the user corresponding to the merchant portrait can be a merchant user, the user corresponding to the rider portrait can be a rider user, the user corresponding to the driver portrait can be a driver user, and the user corresponding to the buyer portrait can be a buyer user.
[0055] S102. The learning middle platform unit of the computing engine module responds to the user portrait query request and queries the user data from the data middle platform storage unit of the perception module.
[0056] In an embodiment of the present application, the user data stored in the data center storage unit may be provided by application software. Exemplarily, the user data may be obtained through S201-S202.
[0057] S201. Application software sends user data to a data collection unit.
[0058] Users will generate various data when using application software. The application software can generate user data based on the data generated by the user when using the application software, and provide the user data to the data acquisition unit in the perception module with the user's authorization or with full authorization from all parties.
[0059] When the application software is payment software, the payment software can determine the identity of the user based on the user's usage of the payment software or registration information, and generate user data corresponding to the user. For example, the user data may include but is not limited to whether the user is a merchant user, or whether the user is an active merchant user, etc.
[0060] In one example, if the user is a merchant user, when using the payment software, he can register and fill in relevant information on the payment software in advance, so that the payment software can verify and authenticate the identity information of the merchant user on the basis of the user's authorization or full authorization by all parties, so as to improve the security of transactions between the merchant user and the buyer user. Similarly, when a non-merchant user uses the payment software, he can also perform real-name authentication on the basis of the non-merchant user's authorization or full authorization by all parties, so as to ensure the transaction security of both parties.
[0061] Thus, the payment software can obtain relevant information of the user who uses the payment software to determine whether the user is a merchant user. If the user is a merchant user, the payment software can send the user data that the user is a merchant user to the data collection unit in the electronic device perception module, so that the subsequent electronic device can generate a merchant portrait based on this user data, and use the merchant portrait as the user portrait corresponding to the user; if the user is a non-merchant user, for example, the user is a buyer user, the payment software can send the user data that the user is a buyer user to the data collection unit in the electronic device perception module, so that the subsequent electronic device can generate a buyer portrait based on this user data, and use the buyer portrait as the user portrait corresponding to the user.
[0062] Since user data may change over time, for example, a user may change from a merchant user to a buyer user, or from a buyer user to a merchant user. To improve the accuracy of user portraits, in a possible implementation, the application software may actively provide user data to a data collection unit of the electronic device at a preset collection frequency, or the application software may send user data to the data collection unit in response to a user data collection request sent by the data collection unit.
[0063] It should be noted that the preset collection frequency in this application can be set according to specific needs, and the preset collection frequency in this application is not specifically limited. The exemplary application software can send user data to the data collection unit of the electronic device once a day, or send user data to the data collection unit once a week, etc. The higher the preset collection frequency, the more accurate the user data, and the more accurate the user profile subsequently constructed based on the user data.
[0064] In one possible implementation, the payment software can determine the user data through the user's relevant registration information and adjust the user's data based on the user's usage of the payment software to improve the accuracy of the user portrait.
[0065] Exemplarily, when the payment software determines that the user is a merchant user through the user's relevant registration information, on this basis, the payment software can determine whether the merchant is an active merchant by obtaining the frequency of the merchant user using the payment software to collect payment operations. For example, if the merchant user uses the payment software to collect payment frequency exceeding the first threshold, it is determined that the user is an active merchant user; if the merchant user uses the payment software to collect payment frequency between the second threshold and the first threshold, it is determined that the user is a merchant user, but an inactive merchant user. Among them, the first threshold is greater than the second threshold.
[0066] S202. The data collection unit sends user data to the data middle platform storage unit.
[0067] After the data collection unit obtains the user data sent by the application software, the user data can be sent to the data middle platform storage unit for storage.
[0068] In a possible implementation, the user data is obtained by collecting user behavior information through a data collection unit. The user behavior information may include but is not limited to the frequency of the user using the payment software, whether the user has enabled the voice broadcast function, or whether the user has enabled the positioning function.
[0069] S103. The data center storage unit in the perception module sends user data to the learning center unit in the computing engine module. After obtaining the user data, the learning center unit can execute S104. The learning center unit generates a user portrait based on the user data.
[0070] After the learning center unit in the computing engine module obtains the user data of the application software from the data center storage unit, it can generate a user portrait corresponding to the application software based on the user data.
[0071] In a possible implementation, the user data is data such as whether the user provided by the application software is a merchant user. The learning center unit can generate a merchant portrait based on the user data that the user is a merchant user, or generate a buyer portrait based on the user data that the user is not a merchant user.
[0072] In a possible implementation, the user data can be the user's behavior information.
[0073] In an example, the user's behavior information can include, but is not limited to, the usage frequency of the application software by the user. The learning center unit obtains the frequency of the user using the payment software. If the frequency of the user using the payment software exceeds the third threshold, a merchant portrait corresponding to the user can be generated and used as the user portrait of the user. Among them, the merchant portrait is used to indicate that the corresponding user is a merchant user.
[0074] In another example, the user's behavior information includes information such as the frequency of the user using the payment software and whether the user has enabled the voice broadcast function. The learning center unit can generate a user portrait of the user based on the frequency of the user using the payment software and information such as whether the user has enabled the voice broadcast function.
[0075] If the frequency of the user using the payment software exceeds the fourth threshold and the voice broadcast function is enabled, a merchant portrait is generated and used as the user portrait of the user.
[0076] Among them, the fourth threshold can be less than or equal to the third threshold. Because in general application scenarios, while merchant users are using the payment software to receive payments, they will also enable the voice broadcast function of the payment software so that merchant users can know that they have successfully received the customer's remittance information through voice broadcast.
[0077] S105. The learning center unit of the computing engine module sends the user portrait to the user portrait query unit in the power saving wizard software. After obtaining the user portrait, the user portrait query unit can execute S106. The user portrait query unit sends the user portrait to the application startup management unit.
[0078] S107. The application startup management unit in the power-saving wizard software adjusts the keep-alive policy of the application software based on the user profile sent by the learning middleware unit.
[0079] After the application startup management unit in the power-saving wizard software obtains the user profile of the user, it can process each application software running in the background according to the user profile.
[0080] Exemplarily, when the application startup management unit determines, based on the user profile, that the application software is the application software to be kept alive, the application startup management unit can enable the background running permission corresponding to the application software, so that the electronic device does not kill the application software running in the background. When the application startup management unit determines, based on the user profile, that the application software is the application software to be killed, the application startup management unit can disable the background running permission corresponding to the application software, so that the electronic device can kill the application software running in the background.
[0081] For the payment software, if the user profile corresponding to the payment software is a merchant profile, the payment software can be determined as the application software to be kept alive, and the payment software can be kept alive, that is, the background running permission corresponding to the payment software is enabled, so as to avoid it being closed when the system cleans up the application software running in the background, and improve the reach rate of the collection voice broadcast. If the user profile corresponding to the payment software is not a merchant profile, for example, the user profile corresponding to the payment software is a buyer profile, the payment software can be determined as the application software to be killed, and when the system kills the application software running in the background, the system is allowed to close the payment software.
[0082] In a possible implementation manner, the power-saving wizard software can determine, based on the user profile sent by the learning middleware unit, that the application software is the application software to be kept alive or the application software to be killed within the preset time period corresponding to the user profile. When the application software is the application software to be kept alive, within the preset time period, the background running permission corresponding to the application software is enabled, so that the system does not kill the application software running in the background.
[0083] Wherein, the preset time period is the time period when the user needs the application software to be in a running state. Within the preset time period, the application software to be kept alive corresponding to the user profile is kept alive; outside the preset time period range, the application software to be kept alive corresponding is treated as a general application software, that is, when the system kills the application software running in the background, the application software can be killed.
[0084] In the embodiment of the present application, the preset time period corresponding to the merchant user is taken into consideration. The payment software can be treated as the application software to be kept alive within the preset time period corresponding to the merchant user, and the background running permission corresponding to the payment software can be enabled; outside the preset time period, the payment software can be treated as the application software to be checked and killed, and the background running permission corresponding to the payment software can be closed.
[0085] For example, if the business hours of a merchant user are from 8 am to 9 pm, in this case, the electronic device can obtain the business hours set by the merchant and use the time period from 8 am to 9 pm as the preset time period corresponding to the merchant user. Then, during the time period from 8 am to 9 pm, even if the merchant user has not operated the application software to be kept alive for a long time, the system will not treat it as a killing target when checking and killing the application software running in the background, so that it can run in the background for a long time. In the two time periods from midnight to 8 am and from 9 pm to midnight, the system can treat it as an application software to be checked and killed.
[0086] The application keeping alive method provided in the embodiment of the present application can determine the application software to be kept alive according to the actual needs of the user for the application software and taking into account the actual usage time of the user, so that the determined application software to be kept alive is more in line with the user's needs and more user-friendly, and can improve the user's usage experience while saving memory and reducing power consumption.
[0087] In one possible implementation, the user's behavior information may include the user's operation of adding an application lock or releasing an application lock on the payment software. The data collection unit may respond to the user's operation of adding an application lock or releasing an application lock on the payment software, obtain the user data of the user adding an application lock or releasing the application lock on the payment software, and send the user data to the data middle platform storage unit.
[0088] In one example, the learning middle platform unit in the computing engine can generate a user portrait of a merchant painter as the user based on the user data of the user adding an application lock to the payment software; and generate a buyer portrait as the user portrait of the user based on the user data of the user unlocking the application lock of the payment software.
[0089] On this basis, in order to improve the accuracy of generating user portraits, the user portrait of the user can be generated in combination with the user data of whether the user turns on the voice broadcast function. Exemplarily, the learning middle platform unit in the computing engine can generate a merchant painter as the user portrait of the user based on the two user data that the user adds an application lock to the payment software and turns on the voice broadcast function; based on the two user data that the user unlocks the application lock of the payment software and turns off the voice broadcast function, a buyer portrait is generated as the user portrait of the user.
[0090] In another example, after the data middle platform storage unit stores the user data provided by the payment software that the user is a merchant user, the data collection unit sends the data that the user unlocks the application lock of the payment software to the data middle platform storage unit. The data middle platform storage unit can update the stored user data, for example, updating the user data that the user is a merchant user to the user data that the user unlocks the application lock of the payment software. The learning middle platform unit in the computing engine can generate a buyer portrait based on the user data that the user unlocks the application lock of the payment software, and use the buyer portrait as the user portrait of the user. At the same time, if the learning middle platform unit has generated a merchant portrait based on the user data that the user is a merchant user, the learning middle platform unit can update the user portrait, for example, updating the merchant portrait to the buyer portrait.
[0091] Similarly, after the user data provided by the payment software that the user is a buyer user is stored in the data middle platform storage unit, the data collection unit sends the data that the user adds an application lock to the payment software to the data middle platform storage unit, and the data middle platform storage unit can update the stored user data, for example, updating the user data that the user is a buyer user to the user data that the user adds an application lock to the payment software, so that the learning middle platform unit in the computing engine can generate a merchant portrait based on the user data that the user adds an application lock to the payment software, and use the merchant portrait as the user portrait of the user. At the same time, when the learning middle platform unit has generated a buyer portrait based on the user data that the user is a buyer user, the learning middle platform unit can update the user portrait, for example, updating the buyer portrait to the merchant portrait.
[0092] It should be noted that the application keep-alive method provided in this application can be applied to various application software. The above description of payment software is only an example, and this application does not specifically limit the type of application software. Exemplarily, the application software can also be a food delivery software or a taxi-hailing software. The food delivery software can determine whether the user belongs to a merchant user, a customer user, or a rider user based on the user's usage of the food delivery software or registration information; the taxi-hailing software can determine whether the user belongs to a driver user or a passenger user based on the user's usage of the taxi-hailing software or registration information.
[0093] In one example, the application software is a food delivery software, and the user portrait is a rider portrait. The rider portrait can indicate that the corresponding rider user has a need to use the food delivery software and positioning function for a long time, that is, the rider user may need to use the food delivery software to obtain information about related orders, use the positioning function for navigation, and deliver the order-related items to the customer user. When the user portrait is a rider portrait, the power saving wizard software can treat the food delivery software as an application software to be kept alive and enable the background running permission of the food delivery software.
[0094] In one example, the application software is a ride-hailing software, and the user profile is a driver profile. The driver profile can indicate that the corresponding driver user has a long-term need to use the ride-hailing software and the positioning function. That is, the driver user may need to use the ride-hailing software to obtain information about relevant orders and navigate based on the positioning function to pick up and drop off passengers. Furthermore, when the user profile is a driver profile, the power-saving wizard software can regard the ride-hailing software as the application software to be kept alive, enable the background running permission of the ride-hailing software, and protect it from being killed by the system.
[0095] In one example, for the buyer user corresponding to the buyer profile, they may only need to temporarily use payment software, ride-hailing software, or food delivery software, etc. That is, the buyer user may not need to keep the payment software, ride-hailing software, or food delivery software open for a long time. They only need to open them when using them. Furthermore, based on the buyer profile, the power-saving wizard software can regard the payment software, ride-hailing software, or food delivery software, etc., as the application software to be killed, and close the background running permission of the payment software, ride-hailing software, or food delivery software, etc.
[0096] In this application, the same user can correspond to different user profiles, that is, a user can have one or more user profiles at the same time. Exemplarily, the user profiles corresponding to user A can be a driver profile and a merchant profile. The application software to be kept alive corresponding to the driver profile can include the ride-hailing software, and the application software to be kept alive corresponding to the merchant profile can include the payment software. Furthermore, the application software to be kept alive corresponding to this user A can include the ride-hailing software and the payment software, etc. The user profiles corresponding to user B can be a driver profile and a buyer profile, then the application software to be kept alive corresponding to user B can include the ride-hailing software, etc.
[0097] An application keeping-alive method provided by this application can, by responding to the operation of the user switching the application software to the background, obtain the user profile of the user, and determine the category of the application software running in the background according to the user profile, that is, determine whether the application software running in the background belongs to the application software to be kept alive or the application software to be killed. After determining the category of the application software, the application software to be killed can be killed, and the application software to be kept alive can be kept alive. That is, when the application software is the application software to be kept alive, enable the background running permission corresponding to the application software, so that the electronic device does not kill the application software running in the background; when the application software is the application software to be killed, close the background running permission corresponding to the application software, so that the electronic device kills the application software running in the background.
[0098] The method provided by this application can enable the application software to be kept alive determined according to the user profile to continue running in the background when the system performs killing. Furthermore, it can save memory and reduce power consumption while taking into account the actual needs of different users, keep alive the application software that the user needs to use, and improve the user experience.
[0099] The following will introduce an application keep-alive method provided by this application in conjunction with Figure 9 and will introduce an application keep-alive method provided by this application. Figure 9 FIG. is a flowchart of an application keep-alive method provided by an embodiment of this application, which may include S301-S304.
[0100] S301. Obtain a user profile of the user.
[0101] Among them, the user profile of the user may be generated according to the user data provided by the application software, may be generated by the electronic device according to the user's behavior information, or may be generated by the electronic device on the basis of the user data provided by the application software in combination with the user's behavior information.
[0102] In a possible implementation manner, the electronic device may generate a user profile of the user according to the usage situation of the application software by the user, that is, according to the user's behavior information.
[0103] Exemplarily, when the application software is a food delivery software, the behavior information of the user obtained by the electronic device may include that the user uses the food delivery software to receive an order, the user uses the food delivery software to place an order, or the user uses the food delivery software to receive a delivery order service.
[0104] If the electronic device detects that the user uses the food delivery software to receive an order, a merchant profile may be constructed for the user; if the electronic device detects that the user uses the food delivery software to place an order, a customer profile may be constructed for the user; if the electronic device detects that the user uses the food delivery software to receive a delivery order service, a rider profile may be constructed for the user.
[0105] On this basis, to improve the accuracy of the user profile, the electronic device may obtain the frequency of the user using the food delivery software for related operations and generate a user profile of the user. Exemplarily, the electronic device may generate a corresponding user profile based on the frequency of the user using the food delivery software to place an order or the frequency of the user using the food delivery software to receive a delivery order service.
[0106] In another possible implementation manner, the electronic device may generate a user profile of the user according to the usage situation of the application software by the user and the usage situation of related functions.
[0107] Exemplarily, when the application software is a food delivery software, the behavior information of the user obtained by the electronic device may include the user using the food delivery software to receive an order, the user using the food delivery software to place an order, or the user using the food delivery software to accept the operation of the delivery order service, as well as information such as whether the user has enabled voice broadcast and whether the Global Positioning System (GPS) is enabled.
[0108] Generally, for merchant users, in order to timely know whether the customer has made a payment operation or timely obtain order information so as to be able to provide corresponding services to the customer on time, they usually turn on the voice broadcast function of the electronic device. Thus, when the merchant receives new order information, the electronic device will prompt the user to process the new order in time through voice, and the voice prompt can be "You have received a new order, please process it in time" and so on.
[0109] In the embodiments of the present application, the electronic device can implement functions such as the above-mentioned voice broadcast through an audio module, a speaker, and an application processor, etc.
[0110] Among them, the audio module is used to convert digital audio information into an analog audio signal for output, and is also used to convert analog audio input into digital audio signals. The audio module can be set in the processor, or some functional modules of the audio module can be set in the processor. The speaker is used to convert the audio electrical signal into a sound signal. The electronic device can listen to the hands-free voice broadcast through the speaker.
[0111] For rider users, in order to timely perform the operation of accepting the delivery order service, they can turn on the voice broadcast function of the electronic device. Thus, when there is a new delivery task, the processor of the electronic device can perform voice broadcast through the audio module (not limited to speakers, etc.) to prompt the rider user to timely accept the delivery order service, etc. At the same time, in order to complete the delivery task, rider users usually turn on the GPS function in the electronic device so that they can complete the delivery task according to the navigation route.
[0112] The electronic device provided in the embodiment of the present application may include a mobile communication module, a wireless communication module, etc. The mobile communication module may provide solutions for wireless communications such as 2G / 3G / 4G / 5G applied to the electronic device. The wireless communication module may provide solutions for wireless communications such as wireless local area networks (WLAN), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared technology (IR), etc. applied to the electronic device.
[0113] In the embodiment of the present application, the rider user can use the wireless communication module or the mobile communication module in the electronic device to obtain delivery tasks through the electronic device at any time and place, and perform operations for accepting delivery orders. At the same time, combined with GPS provided by the wireless communication module, the relevant delivery tasks are completed using the navigation function.
[0114] S302. Determine whether the application software is the application software to be kept alive according to the user portrait of the user.
[0115] In the case where the application software is the application software to be kept alive, S303 can be executed: perform a keep-alive process on the application software to be kept alive running in the background. If the application software is the application software to be killed, S304 can be executed: do not perform a keep-alive process on the application software to be killed.
[0116] The keep-alive method provided by the present application can determine the actual needs of the user for the application software based on the user portrait, and perform a keep-alive process on the application software in a targeted manner, which can improve the user experience while saving memory and reducing power consumption.
[0117] To facilitate further understanding of the application keep-alive method provided by the embodiment of the present application, the following takes the application keep-alive method applied to a payment software as an example, and combines Figure 10 the shown flowchart to give an overall exemplary introduction to the application keep-alive method. As Figure 10 shown, this figure is a flowchart of a payment software keep-alive method provided by the embodiment of the present application, including S401-S407.
[0118] S401. The power-saving wizard software sends a function of subscribing to the behavior change of the payment software to the computing engine module.
[0119] Among them, the power-saving wizard software is a power-saving software that improves the standby time of electronic devices and saves power by controlling some power-consuming hardware and settings, and intelligently reminding users to close currently power-consuming programs, maliciously started background services, etc.
[0120] When the user turns on the power-saving wizard software, the power-saving wizard software sends a function of subscribing to payment software behavior changes to the computing engine module. By subscribing to the function of payment software behavior changes, it can be detected whether the user profile corresponding to the payment software has been updated.
[0121] S402. The computing engine module feedbacks information on whether the subscription is successful to the power-saving wizard software according to whether it supports the function of subscribing to payment software behavior changes. If the computing engine module supports the function of subscribing to payment software behavior changes, then execute S403. The computing engine module subscribes to the function of user data update corresponding to the payment software from the perception module. If the computing engine module does not support the function of subscribing to payment software behavior changes, then execute S407. The relevant services of the power-saving wizard software do not take effect, and regularly send the function of subscribing to payment software behavior changes to the computing engine module. So that the computing engine module can support the function of subscribing to payment software behavior changes after upgrading.
[0122] If the computing engine module supports the function of subscribing to payment software behavior changes, the computing engine module can subscribe to the function of user data update corresponding to the payment software from the perception module. By subscribing to the function of user data update corresponding to the payment software, when the user data corresponding to the payment software is updated, the updated user data can be obtained in a timely manner.
[0123] S404. The payment software sends user data to the perception module.
[0124] The payment software sending user data to the perception module may include, but is not limited to, whether the user belongs to a merchant user or whether the user belongs to an active merchant user.
[0125] Exemplarily, after the payment software sends the user data that the user is a merchant user to the perception module, the payment software updates the user data, that is, the payment software updates the user data to that the user belongs to a buyer user, then the payment software can continue to send the user data that the user belongs to a buyer user to the perception module to update the previously sent user data.
[0126] In a possible implementation manner, the payment software can regularly send user data to the perception module so that the computing engine module can update the user profile in a timely manner when the user data is updated.
[0127] S405. The computing engine module sends the user profile generated based on the user data to the power-saving wizard software.
[0128] S406. The power-saving wizard software sets the background running permission corresponding to the payment software based on the user profile.
[0129] Exemplarily, based on the merchant profile, the power-saving wizard software can enable the background running permission corresponding to the payment software, so that the payment software will not be closed by the system even when running in the background. At the same time, it improves the voice broadcast reach rate of the payment software when running in the background, that is, when the merchant user receives a payment message when the payment software is in the background running state, a voice broadcast message will be received.
[0130] If the user profile of the user does not belong to the merchant profile, the power-saving wizard software can close the background running permission corresponding to the payment software based on the user profile of the user. Thus, when the system kills the background running application software, this payment software can be closed as an application software that the user does not need to use temporarily to save memory and reduce power consumption.
[0131] It should be noted that the application preservation method provided in this application can be applied to various application software. The above description of the payment software is only an example, and this application does not specifically limit the type of application software. Exemplarily, the application software can also be a food delivery software or a taxi-hailing software, etc.
[0132] In summary, the application preservation method provided in this application determines the application software to be preserved according to the user profile, can be user-oriented, and perform preservation processing on the application software to be preserved in a targeted manner, can meet the actual needs of users, and can improve the user experience while saving memory and reducing power consumption.
[0133] This embodiment also provides a computer-readable storage medium, which includes instructions. When the above instructions run on an electronic device, the electronic device is made to execute Figure 8 、 Figure 9 and Figure 10 the relevant method steps in to implement the method in the above embodiment.
[0134] The above is only the specific implementation manner of this application, but the protection scope of this application is not limited thereto. Any changes or substitutions within the technical scope disclosed in this application should be covered by the protection scope of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claimed rights.
Claims
1. An application keep-alive method, characterized in that, it includes: Upon receiving an operation where the user switches the application software to run in the background, obtain the user profile corresponding to the application software; Based on the user profile, determine whether the application software is an application software to be kept alive or an application software to be killed; When the application software is an application software to be kept alive, enable the background running permission corresponding to the application software, so that the electronic device does not kill the application software running in the background; When the application software is an application software to be killed, disable the background running permission corresponding to the application software, so that the electronic device kills the application software running in the background.
2. The method according to claim 1, characterized in that, the step of upon receiving an operation where the user switches the application software to run in the background, obtaining the user profile corresponding to the application software includes: Upon receiving an operation where the user switches the application software to run in the background, obtain the user data reported by the application software; Based on the user data, generate the user profile corresponding to the application software.
3. The method according to claim 2, characterized in that, the step of upon receiving an operation where the user switches the application software to run in the background, obtaining the user data reported by the application software includes: Upon receiving an operation where the user switches the application software to run in the background, obtain the user data reported by the application software at a preset collection frequency.
4. The method according to claim 2, characterized in that, when the application software is a payment software, the step of upon receiving an operation where the user switches the application software to run in the background, obtaining the user data reported by the application software includes: Upon receiving an operation where the user switches the payment software to run in the background, obtain the user data reported by the payment software, where the user data includes that the user is a merchant user or the user is a buyer user; the step of based on the user data, generating the user profile corresponding to the user data includes: When the user data includes that the user is a merchant user, generate the merchant profile corresponding to the user data based on the user data; or, When the user data includes that the user is a buyer user, generate the buyer profile corresponding to the user data based on the user data.
5. The method according to claim 1, characterized in that, the step of upon receiving an operation where the user switches the application software to run in the background, obtaining the user profile corresponding to the application software includes: Upon receiving an operation where the user switches the application software to run in the background, obtain the behavior information of the user with respect to the application software; Based on the behavior information of the user with respect to the application software, generate the user profile corresponding to the application software.
6. The method according to claim 5, characterized in that, the step of upon receiving an operation where the user switches the application software to run in the background, obtaining the behavior information of the user with respect to the application software includes: Upon receiving an operation where the user switches the application software to run in the background, obtain the usage frequency of the user with respect to the application software; the step of based on the behavior information of the user with respect to the application software, generating the user profile corresponding to the application software includes: Generate a user profile corresponding to the application software according to the usage frequency of the user for the application software.
7. The method according to claim 5, wherein, the obtaining of the behavior information of the user for the application software in response to the operation of the user switching the application software to run in the background includes: in response to the operation of the user switching the application software to run in the background, obtaining the usage frequency of the user for the application software and the status information of the functions associated with the application software, where the functions associated with the application software include a voice broadcast function and / or a positioning function; the generating of the user profile corresponding to the application software according to the behavior information of the user for the application software includes: generating a user profile corresponding to the application software according to the usage frequency of the user for the application software and the status information of the functions associated with the application software.
8. The method according to claim 1, wherein, the determining of the application software as an application software to be kept alive or an application software to be killed according to the user profile includes: determining the application software as an application software to be kept alive or an application software to be killed within a preset time period corresponding to the user profile according to the user profile; when the application software is an application software to be kept alive, the enabling of the background running permission corresponding to the application software, so that the system does not kill the application software running in the background includes: when the application software is an application software to be kept alive, within the preset time period, enabling the background running permission corresponding to the application software, so that the system does not kill the application software running in the background.
9. An electronic device, wherein, the electronic device includes: a processor and a memory; the memory is used for storing program codes and transmitting the program codes to the processor; the processor is used for executing the steps of an application keep-alive method according to any one of claims 1-8 according to the instructions in the program codes.
10. A computer-readable storage medium, wherein, a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of an application keep-alive method according to any one of claims 1-8 are implemented.
Citation Information
Patent Citations
Application process searching and killing method and device of application program
CN111611020A
Method and equipment for accelerating running of application program
CN114942800A
Application management method and device, terminal and storage medium
CN116700832A
Mode switching method and apparatus, electronic device and chip system
WO2023000772A1