Application recommendation method and apparatus, electronic device, and storage medium

By calculating the weight values ​​and ratings of terminal application usage data and user feedback data, the problem of inaccurate recommendations after headphones are plugged into the phone has been solved, resulting in application recommendations that are more in line with user habits and improving the user experience.

CN113918757BActive Publication Date: 2026-01-23HUIZHOU TCL MOBILE COMM CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202111182199.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-10-11
Publication Date
2026-01-23
Estimated Expiration
2041-10-11

AI Technical Summary

Technical Problem

Current mobile phones often recommend social apps after headphones are plugged in, and the system cannot adjust this in a timely manner, which affects the user experience.

Method used

By acquiring application usage data and user feedback data from the terminal, the weight value and rating data of each application are calculated, and application recommendations are made when the headphones are connected based on the rating data.

Benefits of technology

It improves the accuracy of app recommendations, making the recommended apps more in line with users' habits, avoids recommending social apps, and optimizes the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113918757B_ABST
    Figure CN113918757B_ABST
Patent Text Reader

Abstract

The application discloses an application recommendation method and device, electronic equipment and a storage medium. The method comprises the following steps: acquiring application use data of a terminal in each target time period and feedback data of a user to a recommended application; determining a first weight value of each target application according to the number of times that each target application in the application use data is started in all target time periods; determining a second weight value of each target application according to the feedback result of the user to each target application in the feedback data; and determining score data of each target application according to the first weight value and the second weight value; and when the access of a headset is detected, performing application recommendation according to the score data of each target application. By adopting the embodiment of the application, the recommended application can be more in line with the use habit of the user, and the situation that the recommended application is mostly a social application that is also commonly used outside the target time period can be avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing technology, and in particular to an application recommendation method, apparatus, electronic device, and storage medium. Background Technology

[0002] Many mobile phones on the market now have the function of recommending frequently used apps after plugging in headphones, but most phones only recommend audio or video related apps. For example, Nubia phones recommend audio or video related applications when headphones are plugged in while the phone is in silent mode.

[0003] However, the recommended apps after plugging in headphones are mostly social apps that are frequently used even outside of headphone use, such as WeChat, and the system cannot adjust the recommended apps in a timely manner, affecting the user experience. Summary of the Invention

[0004] The purpose of this invention is to provide an application recommendation method, apparatus, electronic device, and storage medium to solve at least some of the problems mentioned above.

[0005] In a first aspect, to achieve the above objectives, embodiments of the present invention provide an application recommendation method applied to a terminal, comprising:

[0006] Acquire application usage data of the terminal and user feedback data on recommended applications within each target time period, wherein the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal;

[0007] Based on the number of times each target application is opened in all the target time periods in the application usage data, a first weight value is determined for each target application, and the target applications include applications that meet preset opening conditions.

[0008] Based on the user feedback results for each of the target applications in the feedback data, a second weight value for each of the target applications is determined;

[0009] Based on the first weight value and the second weight value, the corresponding score data for each target application is determined;

[0010] When the connection of the headphones is detected, application recommendations are made based on the rating data of each target application.

[0011] Furthermore, the step of determining the first weight value of each target application based on the number of times each target application is opened in all target time periods from the application usage data includes:

[0012] The application uses data that is divided into a first dataset and a second dataset;

[0013] According to the preset weight calculation formula, the third weight value of the first dataset and the fourth weight value of the second dataset are determined.

[0014] Based on the third weight value and the number of times each target application in the first dataset is opened during all the target time periods, a fifth weight value for each target application is determined.

[0015] Based on the fourth weight value and the number of times each target application in the second dataset is opened during all target time periods, a sixth weight value for each target application is determined.

[0016] Based on the fifth weight value and the sixth weight value, a first weight value is determined for each of the target applications.

[0017] Furthermore, prior to the step of dividing the application usage data into a first dataset and a second dataset, the application recommendation method further includes:

[0018] Filter out abnormal data from the application usage data to obtain filtered application usage data;

[0019] Based on preset time conditions, the filtered application usage data is subjected to a first screening process to obtain application usage data that meets the preset time conditions.

[0020] Furthermore, after the step of performing a first screening process on the filtered application usage data according to preset time conditions to obtain application usage data that meets the preset time conditions, the application recommendation method further includes:

[0021] Based on preset data volume conditions, the application usage data that meets the preset time conditions is subjected to a second filtering process to obtain application usage data that meets the preset data volume conditions.

[0022] Furthermore, the step of filtering out abnormal data in the application usage data to obtain filtered application usage data includes:

[0023] Obtain the start and stop timestamps of each target application in the application usage data for each target time period;

[0024] Based on the start and stop timestamps of each target application, determine the usage duration of each target application within each target time period;

[0025] The application usage data corresponding to the target application whose usage time is less than the first preset time and the application usage data corresponding to the target application whose usage time is greater than the second preset time are filtered to obtain the filtered application usage data.

[0026] Furthermore, the step of determining the second weight value of each target application based on the user's feedback results for each target application in the feedback data includes:

[0027] Based on the user's feedback to each of the target applications, the weight value of each target application, and the preset feedback value corresponding to the feedback results, a second weight value for each target application is determined.

[0028] Furthermore, the step of determining the corresponding scoring data for each of the target applications based on the first weight value and the second weight value includes:

[0029] Multiply the first weight value by the second weight value to obtain the final weight value;

[0030] The number of times each target application is opened within all target time periods is multiplied by the final weight value to determine and obtain the score data corresponding to each target application.

[0031] Furthermore, the step of multiplying the number of times each target application is activated within all target time periods by the final weight value to determine and obtain the corresponding score data for each target application includes:

[0032] Filter out target applications whose number of times they are opened is less than a preset threshold in all target time periods to obtain multiple filtered target applications;

[0033] The filtered target applications are multiplied by the final weight value to determine and obtain the score data corresponding to each filtered target application.

[0034] Furthermore, the step of recommending applications based on the rating data of each target application when the connection of headphones is detected includes:

[0035] The filtered targets are then sorted in reverse order using their respective scoring data.

[0036] When an earphone connection is detected, the top N target applications will be recommended; where N ≥ 1 and is an integer.

[0037] Furthermore, the step of recommending the top N target applications when the connection of headphones is detected includes:

[0038] When the connection of the headphones is detected, the time interval between the time the headphones were connected and the time of the last application recommendation is determined;

[0039] When the time interval is greater than a preset time threshold, the top N target applications will be recommended for application recommendation.

[0040] Furthermore, the step of recommending the top N target applications when the time interval is greater than a preset time threshold includes:

[0041] When the time interval is greater than a preset time threshold, it is detected whether the current display interface of the terminal is the desktop;

[0042] When the terminal is currently displaying a desktop interface, the top N target applications will be recommended.

[0043] In a second aspect, to address the same technical problem, embodiments of the present invention provide an application recommendation device applied to a terminal, comprising:

[0044] The data acquisition module acquires application usage data of the terminal and user feedback data on recommended applications within each target time period. The target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal.

[0045] The first determining module is used to determine a first weight value for each target application based on the number of times each target application is opened in all target time periods in the application usage data, wherein the target applications include applications that meet preset opening conditions.

[0046] The second determining module is used to determine a second weight value for each of the target applications based on the user's feedback results for each of the target applications in the feedback data;

[0047] The third determining module is used to determine the scoring data corresponding to each of the target applications based on the first weight value and the second weight value.

[0048] The application recommendation module is used to recommend applications based on the rating data of each target application when the connection of the headphones is detected.

[0049] In a third aspect, in order to solve the same technical problem, embodiments of the present invention provide an electronic device including a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor, the memory being coupled to the processor, and the processor executing the computer program implementing the steps in the application recommendation method described above.

[0050] In a fourth aspect, in order to solve the same technical problem, embodiments of the present invention provide a computer-readable storage medium storing a computer program, wherein, when the computer program is executed, it controls the device where the computer-readable storage medium is located to perform the steps in any of the above-described application recommendation methods.

[0051] This invention provides an application recommendation method, apparatus, electronic device, and storage medium. The method determines the weight value of each target application based on the application usage data of the terminal within each target time period and the user's feedback data on the recommended applications. Based on the weight value of each target application, it determines the rating data of each target application. This enables application recommendation based on the determined rating data when the connection of headphones is detected, making the recommended applications more in line with the user's usage habits and avoiding the situation where the recommended applications are mostly social applications that are frequently used outside the target time period. Attached Figure Description

[0052] Figure 1 This is a flowchart illustrating an application recommendation method provided in an embodiment of the present invention;

[0053] Figure 2 This is a schematic diagram of a process for determining the second weight value of each target application according to an embodiment of the present invention;

[0054] Figure 3 This is another flowchart illustrating the application recommendation method provided in this embodiment of the invention;

[0055] Figure 4 This is a schematic diagram illustrating an application scenario recommended by an embodiment of the present invention;

[0056] Figure 5 This is a schematic diagram of an application recommendation device provided in an embodiment of the present invention;

[0057] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention;

[0058] Figure 7 This is another structural schematic diagram of the electronic device provided in the embodiment of the present invention. Detailed Implementation

[0059] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0060] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.

[0061] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.

[0062] Please see Figure 1 , Figure 1 This is a flowchart illustrating an application recommendation method provided in an embodiment of the present invention, such as... Figure 1 As shown, the application recommendation method provided in this embodiment of the invention includes steps 101 to 105;

[0063] Step 101: Obtain application usage data of the terminal and user feedback data on recommended applications within each target time period.

[0064] In this embodiment, the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal. Application usage data includes the names of applications used by the terminal during the target time period. For example, if the terminal used three applications sequentially during the target time period: WeChat, Youku, and QQ, then the application usage data would be: the first application used was WeChat, the second was Youku, and the third was QQ.

[0065] The user feedback data for the recommended applications includes feedback results and no feedback results. For example, a feedback result (True) means that the user opened the application during the time the application was recommended (e.g., 10 seconds), while a no feedback result (False) means that the user did not open any application during the time the application was recommended (e.g., 10 seconds).

[0066] Step 102: Determine the first weight value of each target application based on the number of times each target application is opened in all target time periods in the application usage data.

[0067] In this embodiment, the target application includes applications that meet preset activation conditions. These preset activation conditions are pre-set by the user. Specifically, the application meeting the preset activation conditions can be the first application to be activated, one of the first two applications to be activated, or one of the first N applications to be activated, where N ≥ 1 and is an integer. Those skilled in the art can set different preset activation conditions according to different application scenarios; therefore, no limitation is made to the preset activation conditions here. This embodiment mainly focuses on the first application to be activated.

[0068] It should be noted that for each target application, as long as it has been turned on within a target time period, regardless of how many times it has been turned off and restarted, it is defined as having been turned on once, that is, the number of times it has been turned on is 1.

[0069] In this embodiment, step 102 specifically includes: dividing the application usage data into a first dataset and a second dataset; determining a third weight value for the first dataset and a fourth weight value for the second dataset according to a preset weight calculation formula; determining a fifth weight value for each target application based on the third weight value and the number of times each target application in the first dataset is opened during all target time periods; determining a sixth weight value for each target application based on the fourth weight value and the number of times each target application in the second dataset is opened during all target time periods; and determining a first weight value for each target application based on the fifth weight value and the sixth weight value.

[0070] In this embodiment, the application usage data is divided according to a pre-set time interval, thereby dividing the application usage data into a new dataset that has been used recently, i.e., the first dataset, and an old dataset that has been used outside the pre-set time interval, i.e., the second dataset. For example, if the pre-set time interval is within 30 days, then the application usage data used within 30 days is the new dataset, i.e., the first dataset, and the application usage data used before 30 days is the old dataset, i.e., the second dataset.

[0071] In this embodiment, the preset time interval is not limited to the aforementioned 30 days, but can also be set to 20 days or 10 days. The specific value can be limited according to the actual application scenario, and no specific limitation is made here.

[0072] In a preferred embodiment, the preset weight calculation formula is defined as:

[0073]

[0074] Where a is the data size of the new dataset, i.e., the first dataset, and b is the total data size.

[0075] Based on the aforementioned preset weight calculation formula, the third weight value of the new dataset (i.e., the first dataset) can be obtained. The fourth weight value of the old dataset (i.e., the second dataset) is then calculated using the following formula:

[0076] oldDataWeighted=1-newDataWeighted;

[0077] Using the above calculation formula, we can obtain the third weight value of the new dataset (first dataset) and the fourth weight value of the old dataset (second dataset).

[0078] In this embodiment, the step of determining the fifth weight value of each target application based on the third weight value and the number of times each target application in the first dataset is opened in all target time periods specifically includes: multiplying the third weight value of the new dataset (first dataset) by the number of times each target application in the new dataset (first dataset) is opened in all target time periods to obtain the fifth weight value of each target application.

[0079] Similarly, the step of determining the sixth weight value of each target application based on the fourth weight value and the number of times each target application in the second dataset is opened in all target time periods specifically includes: multiplying the fourth weight value of the old dataset (second dataset) by the number of times each target application in the old dataset (second dataset) is opened in all target time periods to obtain the sixth weight value of each target application.

[0080] Furthermore, the step of determining the first weight value of each target application based on the fifth weight value and the sixth weight value specifically includes: adding the fifth weight value of each target application to the sixth weight value corresponding to each target application to obtain the first weight value of each target application.

[0081] As an optional embodiment, in order to reduce the amount of data computation and improve computational efficiency, this embodiment performs data standardization processing on the number of times each target application is opened in all target time periods, such as interval scaling processing, to scale the number of times each target application is opened in all target time periods to [0.1,1], thereby reducing the amount of data computation, saving a lot of computing resources, and thus improving computational efficiency.

[0082] Specifically, the Java implementation of the interval scaling process is as follows (this example mainly performs interval scaling on the number of times the first target application is opened within all target time periods):

[0083] private HashMap<String,Float>dataZoom(HashMap<String,Float>dataMap,Float minSection,Float

[0084] maxSection){

[0085] Object[]values=dataMap.values().toArray();

[0086] Arrays.sort(values);

[0087] float min=(Float)values[0];

[0088] float max=(Float)values[values.length-1];

[0089] if(max==min){

[0090] for(Map.Entry<String,Float>entry:dataMap.entrySet()){

[0091] dataMap.put(entry.getKey(),1.0f);

[0092] }

[0093] return dataMap;

[0094] }

[0095] for(Map.Entry<String,Float>entry:dataMap.entrySet()){

[0096] dataMap.put(entry.getKey(),minSection+

[0097] (entry.getValue()-min) / (max-min)*(maxSection-minSection));

[0098] }

[0099] return dataMap;

[0100] }

[0101] The input variables `minSection` are 0.1, `maxSection` is 1, and `dataMap` represents the number of times each target application was opened across all target time periods, in the form of `{"appA": 5", "appB": 6", "appC": 0}`. This means that in the dataset across 11 target time periods, three target applications appeared: appA, appB, and appC. In five target time periods, appA was the first application opened, and in another six, appB was the first application opened. AppC was not the first application opened by the user in any target time period. The output value `dataMap` is a Map after range scaling; in this example, the output is `{"appA": 0.85", "appB": 1", "appC": 0.1}`.

[0102] It should be noted that if there is a target application firstApp that is opened first within a certain target time period, such as appA_appC, then the number of times "appA", "appB", and "appC" are opened in all target time periods is {"appA": 4.5", "appB": 6", "appC": 0.5}.

[0103] The methods for range scaling are not limited to those mentioned above; other methods capable of range scaling can also be used, which are not limited here.

[0104] In some embodiments, before the step of dividing the application usage data into a first dataset and a second dataset, the method further includes: filtering out abnormal data in the application usage data to obtain filtered application usage data; and performing a first screening process on the filtered application usage data according to preset time conditions to obtain application usage data that meets the preset time conditions.

[0105] The step of filtering abnormal data in the application usage data to obtain filtered application usage data includes: obtaining the start timestamp and stop timestamp of each target application in the application usage data within each target time period; determining the usage duration of each target application within each target time period based on the start timestamp and stop timestamp of each target application; filtering the application usage data corresponding to target applications whose usage duration is less than a first preset duration, and the application usage data corresponding to target applications whose usage duration is greater than a second preset duration, to obtain filtered application usage data.

[0106] In one embodiment, due to abnormal situations such as accidental app touches or apps being opened but not used, the usage time of the target app may be too short or too long. Therefore, by obtaining the usage time of each target app in all app usage data, data with usage time less than a first preset time (e.g., 3 seconds) or greater than a second preset time (e.g., 6 hours) in each target time period can be filtered out. This can filter out abnormal data in app usage data and avoid affecting the accuracy of app recommendations, thus reducing the user experience.

[0107] It should be noted that the first preset duration is not limited to the 3 seconds mentioned above, but can also be 1 second, 2 seconds or 5 seconds, etc. The second preset duration is not limited to the 6 hours mentioned above, but can also be 3 hours, 4 hours or 8 hours, etc. The specific setting of the first and second preset durations needs to be set according to the specific application scenario, and no specific limitation is made here.

[0108] In another embodiment, since application usage data is stored on the terminal, to prevent a large amount of application usage data from consuming the terminal's storage resources, a first filtering process is needed on the filtered application usage data. Because data from six months ago is more timely than data from six months ago, the preset time condition is set to six months, thereby filtering out data from six months ago and reducing the consumption of terminal storage resources. In this embodiment, the specific method of the first filtering process is as follows: based on the timestamp of the earphone being unplugged within each target time period in the application usage data and the timestamp of the earphone being unplugged within the current target time period, the interval between the two is calculated, and application usage data with an interval longer than six months is filtered out, resulting in application usage data that meets the preset time condition.

[0109] It should be noted that the preset time condition is not limited to the aforementioned six months, but can also be three months, four months, five months or six months. The specific setting of the preset time condition needs to be set according to the specific application scenario, and no specific limitation is made here.

[0110] Optionally, after the step of performing a first filtering process on the filtered application usage data according to preset time conditions to obtain application usage data that meets the preset time conditions, the method further includes: performing a second filtering process on the application usage data that meets the preset time conditions according to preset data volume conditions to obtain application usage data that meets the preset data volume conditions.

[0111] To further reduce the storage resources occupied on the terminal, this embodiment also needs to consider the amount of application usage data that meets the preset time conditions. By performing a second filtering process on the amount of application usage data that meets the preset time conditions according to the preset data volume conditions, excess data is filtered out, so that the application usage data after the second filtering process meets the preset data volume conditions, such as 300 data entries. That is, the terminal is limited to retaining application usage data of each target application within 300 target time periods.

[0112] It should be noted that the preset data volume is not limited to the 300 records mentioned above. It can also be 200, 400, or 500 records. The specific data volume of the preset data volume needs to be set according to the specific storage space of the terminal, and no specific limit is made here.

[0113] Step 103: Determine the second weight value of each target application based on the user feedback results for each target application in the feedback data.

[0114] In this embodiment, step 103 specifically includes: determining a second weight value for each target application based on the user's feedback results to each target application, the weight value of each target application itself, and a preset feedback value corresponding to the feedback results.

[0115] In this embodiment, the user's feedback results for each target application include a first feedback result, a second feedback result, a third feedback result, a fourth feedback result, and a fifth feedback result. The preset feedback values ​​correspond one-to-one with the feedback results of each target application, including a first feedback value corresponding to the first feedback result, a second feedback value corresponding to the second feedback result, a third feedback value corresponding to the third feedback result, a fourth feedback value corresponding to the fourth feedback result, and a fifth feedback value corresponding to the fifth feedback result.

[0116] The target application's own weight value is the second weight value determined last time. That is, each time the second weight value of each target application is determined based on the user's feedback to each target application, the target application's own weight value, and the preset feedback value corresponding to the feedback result, the second weight value of each target application is stored and will replace the target application's own weight value.

[0117] For details, please see Figure 2 , Figure 2 This is a flowchart illustrating a method for determining the second weight value of each target application according to an embodiment of the present invention, such as... Figure 2 As shown, when the feedback result is True, the second weight value of the recommended target application should be increased based on the original weight value; when the feedback result is False, the second weight value of the recommended target application should be decreased based on the original weight value. Figure 2 As shown, through analysis of a large amount of user feedback data and application usage data, it was determined that when the feedback result is False, the first application used in the most recent target time period is the recommended target application, and the current interface displays the desktop (i.e., the first feedback result), it can be assumed that the user did not click on the recommended target application within the timeout and remained on the desktop, but the application they wanted to open was the recommended target application. In this case, the second weight value of the recommended target application should not be reduced, and may even be increased. For example, let value* = positiveValue2, that is, multiply the weight value of the recommended target application by the first feedback value positiveValue2 = 1.05, and use the product as the second weight value of the recommended target application. When the feedback result is False, but the application used in the most recent target time period includes the recommended target application, but it is not the first application opened (i.e., the second feedback result), the second weight value of the recommended target application should not be reduced, but the original value should be retained. For example, let value* = 1, that is, multiply the weight value of the recommended target application by the second feedback value 1, and use the product as the second weight value of the recommended target application.

[0118] Please continue reading Figure 2To increase the speed of negative feedback response, a maximum upper limit for the second weight value is set (e.g., a maximum upper limit of 1.5), and a weight threshold is set (e.g., a weight threshold of 1.25). When the feedback result is False, the recommended target application is not found among the applications used in the most recent target time period, and the second weight value of the recommended target application is greater than the weight threshold of 1.25 (i.e., the third feedback result), the decay of the second weight value of the target application is increased. For example, let value* = negativeValue1, that is, multiply the weight value of the recommended target application by the third feedback value negativeValue1 = 0.8, and use the product as the second weight value of the recommended target application. When the feedback result is False, the recommended target application is not found among the applications used in the most recent target time period, and the second weight value of the recommended target application is less than or equal to the weight threshold of 1.25, the response is as follows: When the threshold is 1.25 (i.e., the fourth feedback result), negative feedback is performed with a normal decay rate. For example, let value* = negativeValue2, which means multiplying the recommended target application's own weight value by the fourth feedback value negativeValue2 = 0.9, and using the product as the second weight value of the recommended target application. When the feedback result is True, and the first application used in the most recent target time period is the recommended target application (i.e., the fifth feedback result), positive feedback is performed with a normal increase rate. For example, let value* = positiveValue1, which means multiplying the recommended target application's own weight value by the fifth feedback value positiveValue1 = 1.1, and using the product as the second weight value of the recommended target application. After calculating the second weight value value of the recommended target application, the value is stored locally and used as the target application's own weight value.

[0119] It should be noted that when the feedback result is True, and the first application used in the most recent target time period is not the recommended target application, but the second application is the recommended target application, it is assumed that the user was using other applications when plugging in headphones, and only opened the recommended target application after returning to the desktop. Therefore, when calculating the number of times each target application is opened in all target time periods, we cannot only focus on the first application, but also need to pay attention to the recommended target application. Therefore, in this application usage data, let firstApp = firstApp + "_" + recommendedApp, that is, add a suffix to the first application (the suffix is ​​the name of the recommended application, such as appA_appC mentioned in the above embodiment), and use the application name with the added suffix as the name of the first application firstApp.

[0120] Understandably, if the target application is frequently used outside the target time period, its second weight value can be reduced; if the target application is only used within the target time period, no action is taken or its second weight value is increased.

[0121] Step 104: Determine the corresponding scoring data for each target application based on the first weight value and the second weight value.

[0122] In this embodiment, the number of times each target application is opened is determined using a weighted Apriori algorithm, and the rating data corresponding to each target application can be determined based on a first weight value and a second weight value. Specifically, step 104 includes: multiplying the first weight value and the second weight value to obtain a final weight value; multiplying the number of times each target application is opened in all target time periods by the final weight value to determine and obtain the rating data corresponding to each target application.

[0123] In this embodiment, since the original weighted Apriori algorithm mines frequent itemsets of multiple target applications, while this embodiment only recommends one target application, it only needs to mine a single frequent itemset. Therefore, to minimize the consumption of terminal computing resources and improve algorithm execution efficiency, this embodiment only controls the weighted Apriori algorithm to mine a single frequent itemset (i.e., the first frequent itemset, a set consisting of multiple target applications that were first opened). Specifically, the method is as follows: First, count the number of times each target application was used in all target time periods in the application usage data. Then, iterate through each target time period in the application usage data and count the number of times each target application appears, appCounts. After the statistics are completed, calculate the target application's score, appScore, based on the final weight value appWeighted obtained by multiplying the first weight value and the second weight value: appScore = appCounts * appWeighted.

[0124] It should be noted that the algorithm for mining frequent sets of multiple target applications is not limited to the Apriori algorithm mentioned above, but can also be other algorithms, such as the weighted FP-Growth algorithm. Therefore, no limitation is made on the algorithm for mining frequent sets of multiple target applications.

[0125] The step of multiplying the number of times each target application is opened within all target time periods by the final weight value to determine and obtain the score data corresponding to each target application includes: filtering target applications whose number of times they are opened within all target time periods is less than a preset threshold to obtain multiple filtered target applications; and multiplying each filtered target application by the final weight value to determine and obtain the score data corresponding to each filtered target application.

[0126] In this embodiment, the preset number threshold can be 2, 3, or 4 times. The specific threshold is not limited here. By filtering out target applications that are opened less than the preset number threshold in all target time periods, the amount of data in the final frequently used itemset can be effectively reduced, thereby further reducing the consumption of terminal computing resources.

[0127] Step 105: When the connection of the headphones is detected, application recommendations are made based on the rating data of each target application.

[0128] Since the above embodiments mainly calculate the rating data of the first target application opened within each target time period, the target application with the highest rating data is recommended as the recommended application based on the rating data of these target applications. This can make the recommended applications more in line with the user's usage habits and avoid the situation where the recommended applications are mostly social applications that are also commonly used outside the target time period.

[0129] In this embodiment, step 105 specifically includes: sorting the rating data corresponding to each of the filtered target applications in reverse order; when the connection of the headphones is detected, recommending the top N target applications; where N ≥ 1 and is an integer.

[0130] This embodiment sorts the rating data of each filtered target application in reverse order, which facilitates application recommendation by the terminal and improves the efficiency of application recommendation.

[0131] The step of recommending the top N target applications when a headset connection is detected includes: determining the time interval between the headset connection time and the last application recommendation time when a headset connection is detected; and recommending the top N target applications when the time interval is greater than a preset time threshold.

[0132] In this embodiment, the preset time threshold can be 1 minute, 2 minutes, or 5 minutes. The threshold needs to be set according to the actual application scenario and is not limited here. By determining the time interval between the time the headphones are connected and the time of the last application recommendation each time the connection is detected, the frequency of application recommendations can be reduced for users who plug and unplug headphones frequently in a short period of time, thus optimizing the user experience.

[0133] Optionally, the step of recommending the top N target applications when the time interval is greater than a preset time threshold includes: when the time interval is greater than the preset time threshold, detecting whether the current display interface of the terminal is the desktop; when the current display interface of the terminal is the desktop, recommending the top N target applications.

[0134] In this embodiment, application recommendations are only made when the terminal is on the desktop. That is, if the user is on the interface of another application when the headphones are plugged in, the application recommendations will be made after the user returns to the desktop. This way, the application currently being used on the terminal is not affected, and the user experience is further optimized.

[0135] The above embodiments mainly recommend one target application. The following embodiments will be used to further illustrate the recommendation of two target applications. Please refer to [link / reference]. Figure 3 , Figure 3 This is another flowchart illustrating the application recommendation method provided in this embodiment of the invention, such as... Figure 3 As shown, the application recommendation method provided in this embodiment of the invention includes steps 301 to 319;

[0136] Step 301: Obtain application usage data of the terminal and user feedback data on recommended applications within each target time period.

[0137] In this embodiment, the application usage data includes the application names of the first target application, the second target application, the third target application, and the fourth target application. For example, the first target application is "TikTok", the second target application is "QQ", the third target application is "WeChat", and the fourth target application is "YouTube". The user's feedback data on the recommended applications includes the opening status of the first target application, the second target application, the third target application, and the fourth target application within a set time. For example, if the user clicks on the recommended target application within 10 seconds (such as the recommended target application being either "TikTok" or "WeChat"), the feedback data is determined to be True; otherwise, the feedback data is False.

[0138] Step 302: Obtain the start timestamp and stop timestamp of each target application in the application usage data for each target time period.

[0139] In this embodiment, the terminal stores 10 target time periods. Since this embodiment mainly recommends two target applications, the start and stop timestamps of the first two opened target applications are obtained in each of the 10 target time periods. For example, in the first time period, the first opened target application is "WeChat" with a start timetamp of 10:00 AM and a stop timetamp of 5:00 PM. The second opened target application is "TikTok" with a start timetamp of 5:00 PM and a stop timetamp of 6:00 PM. In the second time period, the first opened target application is "YouTube" with a start timetamp of 9:00 AM and a stop timetamp of 11:00 AM. The second opened target application is "QQ" with a start timetamp of 11:00 AM and a stop timetamp of 11:01 AM.

[0140] Step 303: Determine the usage duration of each target application within each target time period based on the start and stop timestamps of each target application.

[0141] Based on the start and stop timestamps of the first two target applications opened within each time period, the usage duration of each target application within each target time period can be determined. For example, in the first time period, the usage duration of "WeChat" is 7 hours and the usage duration of "TikTok" is 1 hour; in the second time period, the usage duration of "YouTube" is 2 hours and the usage duration of "QQ" is 1 minute.

[0142] Step 304: Filter the application usage data corresponding to the target application whose usage time is less than the first preset time and the application usage data corresponding to the target application whose usage time is greater than the second preset time to obtain the filtered application usage data.

[0143] In this embodiment, since the first preset duration is 2 minutes and the second preset duration is 6 hours, and the usage time of "WeChat" in the first time period is 7 hours, which is longer than the second preset duration of 6 hours, it can be determined that the usage of "WeChat" in the first time period is abnormal. Therefore, it is determined that "WeChat" was accidentally opened and not used during the first time period, and the application usage data of "WeChat" in the first time period will be filtered out. Similarly, since the usage time of "QQ" in the second time period is 1 minute, which is shorter than the first preset duration of 2 minutes, it can be determined that the usage of "QQ" in the second time period is abnormal. Therefore, it is determined that "QQ" was accidentally opened and quickly closed during the second time period, and the application usage data of "QQ" in the second time period will be filtered out.

[0144] Step 305: Based on preset time conditions, perform a first screening process on the filtered application usage data to obtain application usage data that meets the preset time conditions.

[0145] In this embodiment, the first filtering process filters out application usage data stored on the terminal from six months ago, thereby using time-sensitive application usage data from the past six months as the calculation object, which can improve the accuracy of application recommendations and thus improve the user experience.

[0146] Step 306: Based on preset data volume conditions, perform a second filtering process on the application usage data that meets the preset time conditions to obtain application usage data that meets the preset data volume conditions.

[0147] Furthermore, in order to reduce the storage resources occupied by the terminal, this embodiment also needs to perform a second filtering process on the application usage data stored in the terminal to filter out the application usage data corresponding to the target time period that exceeds the limit, and only retain the application usage data corresponding to the most recent 300 target time periods. This can effectively reduce the storage resources occupied by the terminal, avoid affecting the normal use of the terminal, and further improve the user experience.

[0148] Step 307: Divide the application data into a first dataset and a second dataset.

[0149] In this embodiment, in order to make the recommended target applications respond to users' usage habits in a timely manner, and considering that recent application usage data can better reflect users' recent behavior, the application usage data is divided into new data and old data, and the weight of new data is increased while the weight of old data is decreased. This makes the recommended applications more in line with users' usage habits, avoids the situation where the recommended applications are mostly social applications that are frequently used outside the target time period, and further improves the user experience.

[0150] Specifically, application usage data within the last 30 days is defined as new data, and application usage data within the last 30 days to six months is defined as old data. If the target time period in the new data is less than a threshold such as 5, then it will not be classified as new data, so as to avoid affecting users' usual habits due to too little data.

[0151] Step 308: Determine the third weight value of the first dataset and the fourth weight value of the second dataset according to the preset weight calculation formula.

[0152] Step 309: Based on the third weight value and the number of times each target application in the first dataset is opened during all target time periods, determine the fifth weight value of each target application.

[0153] In this embodiment, the third weight value is multiplied by the range scaling value of the number of times each target application in the new data is opened in all target time periods to obtain the fifth weight value with a smaller amount of data for each target application in the new data.

[0154] Step 310: Based on the fourth weight value and the number of times each target application in the second dataset is opened during all target time periods, determine the sixth weight value of each target application.

[0155] Similarly, the fourth weight value is multiplied by the range scaling value of the number of times each target application in the old data is activated in all target time periods to obtain the sixth weight value with a smaller amount of data for each target application in the old data.

[0156] By scaling the number of times each target application is activated across all target time periods, the computational load can be effectively reduced, thereby significantly improving computational efficiency.

[0157] Step 311: Determine the first weight value for each of the target applications based on the fifth weight value and the sixth weight value.

[0158] Adding the fifth weight value of each target application in the new data to the sixth weight value of each target application in the old data yields the first weight value of each target application.

[0159] Step 312: Determine the second weight value of each target application based on the user's feedback results to each target application, the weight value of each target application itself, and the preset feedback value corresponding to the feedback results.

[0160] Based on the five feedback results mentioned in the above embodiments, the corresponding five feedback values, and the weight values ​​of each target application stored in the terminal (i.e., the second weight values ​​obtained in the last calculation), the second weight values ​​of each target application can be obtained.

[0161] Step 313: Multiply the first weight value and the second weight value to obtain the final weight value.

[0162] Step 314: Filter out target applications whose number of times they are opened is less than a preset threshold in all target time periods to obtain multiple filtered target applications.

[0163] In this embodiment, by filtering out target applications that are opened less than a preset threshold number of times within all target time periods, the amount of data in the final frequently used itemset can be effectively reduced, thereby further reducing the consumption of terminal computing resources.

[0164] Step 315: Multiply each of the filtered target applications by the final weight value to determine and obtain the score data corresponding to each of the filtered target applications.

[0165] Step 316: Sort the filtered targets in reverse order according to their respective scoring data.

[0166] By sorting the rating data in reverse order, we can obtain the top two target apps. For example, the first target app is "TikTok" and the second target app is "WeChat".

[0167] Step 317: When the connection of the headphones is detected, determine the time interval between the time when the headphones are connected and the time when the application recommendation was last performed.

[0168] By detecting the time interval between the last app recommendation, we can avoid having too short intervals between app recommendations, which could negatively impact user experience.

[0169] Step 318: When the time interval is greater than a preset time threshold, detect whether the current display interface of the terminal is the desktop.

[0170] Step 319: When the terminal is currently displaying a desktop, recommend the top N target applications.

[0171] App recommendations are only made when the device is on the home screen. That is, if the user is on another app while headphones are plugged in, the app recommendation will wait until the user returns to the home screen before being made. This way, the app currently being used on the device is not affected, and the user experience is further optimized.

[0172] Please see Figure 4 , Figure 4 This is a schematic diagram illustrating an application scenario for application recommendation according to an embodiment of the present invention. In this embodiment, since the main purpose is to recommend two target applications to the user, when the connection of headphones is detected and the current display interface of the terminal is the desktop, the top two target applications will be recommended. Figure 4 As shown, "TikTok" and "WeChat" are recommended to users.

[0173] It should be noted that the area for displaying app recommendations is not limited to, for example... Figure 4 The image shown is located at the bottom of the terminal screen, but it can also be displayed at the top, left, or right of the terminal screen. The specific display method needs to be set according to the actual application scenario, and there are no restrictions here.

[0174] In summary, the application recommendation method provided by this invention includes acquiring application usage data of the terminal and user feedback data on recommended applications within each target time period. Then, based on the number of times each target application is opened across all target time periods in the application usage data, a first weight value is determined for each target application. Next, based on user feedback data on each target application, a second weight value is determined for each target application. Finally, based on the first and second weight values, rating data for each target application is determined. When headphone access is detected, application recommendations are made based on the rating data of each target application. By employing this invention, recommended applications can better align with user habits, avoiding situations where recommended applications are primarily social applications frequently used even outside the target time period.

[0175] Based on the method described in the above embodiments, this embodiment will further describe it from the perspective of an application recommendation device. The application recommendation device can be implemented as an independent entity or integrated into an electronic device, such as a terminal, which may include mobile phones, tablets, etc.

[0176] Please see Figure 5 , Figure 5 This is a schematic diagram of an application recommendation device provided in an embodiment of the present invention, such as... Figure 5 As shown, the application recommendation device 500 provided in this embodiment of the invention includes:

[0177] The data acquisition module 501 acquires application usage data of the terminal and user feedback data on recommended applications within each target time period.

[0178] In this embodiment, the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal.

[0179] The first determining module 502 is used to determine a first weight value for each target application based on the number of times each target application is opened in all target time periods in the application usage data.

[0180] In this embodiment, the target application includes applications that meet preset activation conditions.

[0181] Optionally, the first determining module 502 is specifically configured to: divide the application usage data into a first dataset and a second dataset; determine a third weight value for the first dataset and a fourth weight value for the second dataset according to a preset weight calculation formula; determine a fifth weight value for each target application based on the third weight value and the number of times each target application in the first dataset is opened during all target time periods; determine a sixth weight value for each target application based on the fourth weight value and the number of times each target application in the second dataset is opened during all target time periods; and determine a first weight value for each target application based on the fifth weight value and the sixth weight value.

[0182] Furthermore, the first determining module 502 is specifically used to: filter abnormal data in the application usage data to obtain filtered application usage data; and perform a first screening process on the filtered application usage data according to preset time conditions to obtain application usage data that meets the preset time conditions.

[0183] Furthermore, the first determining module 502 is specifically used to: perform a second filtering process on the application usage data that meets the preset time conditions according to preset data volume conditions, so as to obtain application usage data that meets the preset data volume conditions.

[0184] Preferably, the first determining module 502 is further configured to: obtain the start timestamp and stop timestamp of each target application in the application usage data within each target time period; determine the usage duration of each target application within each target time period based on the start timestamp and stop timestamp of each target application; filter the application usage data corresponding to the target application whose usage duration is less than a first preset duration, and the application usage data corresponding to the target application whose usage duration is greater than a second preset duration, to obtain the filtered application usage data.

[0185] The second determining module 503 is used to determine a second weight value for each of the target applications based on the user's feedback results for each of the target applications in the feedback data.

[0186] In this embodiment, the second determining module 503 is specifically used to: determine the second weight value of each target application based on the user's feedback results to each target application, the weight value of each target application itself, and the preset feedback value corresponding to the feedback results.

[0187] The third determining module 504 is used to determine the scoring data corresponding to each of the target applications based on the first weight value and the second weight value.

[0188] In this embodiment, the third determining module 504 is specifically used to: multiply the first weight value and the second weight value to obtain the final weight value; multiply the number of times each target application is opened in all target time periods by the final weight value to determine and obtain the scoring data corresponding to each target application.

[0189] Optionally, the third determining module 504 is further configured to: filter target applications whose number of times they are opened is less than a preset threshold in all target time periods, to obtain multiple filtered target applications; multiply each of the filtered target applications by the final weight value to determine and obtain the score data corresponding to each of the filtered target applications.

[0190] The application recommendation module 505 is used to recommend applications based on the rating data of each target application when the connection of the headphones is detected.

[0191] In this embodiment, the application recommendation module 505 is specifically used to: sort the rating data corresponding to each of the filtered target applications in reverse order; when the connection of the headphones is detected, recommend the target applications ranked in the top N; where N≥1 and is an integer.

[0192] Furthermore, the application recommendation module 505 is specifically used to: when the connection of the headphones is detected, determine the time interval between the time of the headphones connection and the time of the last application recommendation; when the time interval is greater than a preset time threshold, recommend the target applications ranked in the top N items.

[0193] Furthermore, the application recommendation module 505 is specifically used to: when the time interval is greater than a preset time threshold, detect whether the current display interface of the terminal is the desktop; when the current display interface of the terminal is the desktop, recommend the target applications ranked in the top N items.

[0194] In specific implementation, the above modules and / or units can be implemented as independent entities, or they can be arbitrarily combined and implemented as the same or several entities. For the specific implementation of the above modules and / or units, please refer to the previous method embodiments. For the specific beneficial effects that can be achieved, please also refer to the beneficial effects in the previous method embodiments, which will not be repeated here.

[0195] Additionally, please see Figure 6 , Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. The electronic device can be a mobile terminal such as a smartphone, tablet computer, or other similar device. Figure 6 As shown, the electronic device 600 includes a processor 601 and a memory 602. The processor 601 and the memory 602 are electrically connected.

[0196] The processor 601 is the control center of the electronic device 600. It connects various parts of the electronic device through various interfaces and lines. By running or loading the application program stored in the memory 602 and calling the data stored in the memory 602, it performs various functions of the electronic device 600 and processes data, thereby monitoring the electronic device 600 as a whole.

[0197] In this embodiment, the processor 601 in the electronic device 600 loads the instructions corresponding to the processes of one or more applications into the memory 602 according to the following steps, and the processor 601 runs the applications stored in the memory 602 to realize various functions:

[0198] Acquire application usage data of the terminal and user feedback data on recommended applications within each target time period, wherein the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal;

[0199] Based on the number of times each target application is opened in all the target time periods in the application usage data, a first weight value is determined for each target application, and the target applications include applications that meet preset opening conditions.

[0200] Based on the user feedback results for each of the target applications in the feedback data, a second weight value for each of the target applications is determined;

[0201] Based on the first weight value and the second weight value, the corresponding score data for each target application is determined;

[0202] When the connection of the headphones is detected, application recommendations are made based on the rating data of each target application.

[0203] The electronic device 600 can implement the steps in any embodiment of the application recommendation method provided in the embodiments of the present invention. Therefore, it can achieve the beneficial effects that any application recommendation method provided in the embodiments of the present invention can achieve, as detailed in the preceding embodiments, and will not be repeated here.

[0204] Please see Figure 7 , Figure 7 This is another structural schematic diagram of the electronic device provided in the embodiments of the present invention, such as... Figure 7 As shown, Figure 7 A specific structural block diagram of an electronic device provided in an embodiment of the present invention is shown. This electronic device can be used to implement the application recommendation method provided in the above embodiments. The electronic device 700 can be a mobile terminal such as a smartphone or a laptop computer.

[0205] RF circuit 710 is used to receive and transmit electromagnetic waves, converting electromagnetic waves into electrical signals and vice versa, thereby enabling communication with communication networks or other devices. RF circuit 710 may include various existing circuit elements used to perform these functions, such as antennas, radio frequency transceivers, digital signal processors, encryption / decryption chips, Subscriber Identity Module (SIM) cards, memory, etc. RF circuit 710 can communicate with various networks such as the Internet, corporate intranets, and wireless networks, or communicate with other devices via wireless networks. The aforementioned wireless networks may include cellular telephone networks, wireless local area networks (WLANs), or metropolitan area networks (MANs). The aforementioned wireless networks may use various communication standards, protocols, and technologies, including but not limited to Global System for Mobile Communication (GSM), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (WCDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Wireless Fidelity (Wi-Fi) (such as IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, and / or IEEE 802.11n), Voice over Internet Protocol (VoIP), Worldwide Interoperability for Microwave Access (Wi-Max), other protocols for email, instant messaging, and short messages, and any other suitable communication protocols, including those that have not yet been developed.

[0206] The memory 720 can be used to store software programs and modules, such as the program instructions / modules corresponding to the recommended method in the above embodiment. The processor 780 executes various functional applications and data processing by running the software programs and modules stored in the memory 720, that is, it realizes the following functions:

[0207] Acquire application usage data of the terminal and user feedback data on recommended applications within each target time period, wherein the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal;

[0208] Based on the number of times each target application is opened in all the target time periods in the application usage data, a first weight value is determined for each target application, and the target applications include applications that meet preset opening conditions.

[0209] Based on the user feedback results for each of the target applications in the feedback data, a second weight value for each of the target applications is determined;

[0210] Based on the first weight value and the second weight value, the corresponding score data for each target application is determined;

[0211] When the connection of the headphones is detected, application recommendations are made based on the rating data of each target application.

[0212] Memory 720 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, memory 720 may further include memory remotely located relative to processor 780, which can be connected to electronic device 700 via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0213] The input unit 730 can be used to receive input digital or character information, and to generate keyboard, mouse, joystick, optical, or trackball signal inputs related to user settings and function control. Specifically, the input unit 730 may include a touch-sensitive surface 731 and other input devices 732. The touch-sensitive surface 731, also known as a touch display screen or touchpad, can collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near the touch-sensitive surface 731), and drive the corresponding connection device according to a pre-set program. Optionally, the touch-sensitive surface 731 may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch position and the signal generated by the touch operation, and transmits the signal to the touch controller; the touch controller receives touch information from the touch detection device, converts it into touch point coordinates, sends it to the processor 780, and can receive and execute commands sent by the processor 780. In addition, the touch-sensitive surface 731 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the touch-sensitive surface 731, the input unit 730 may also include other input devices 732. Specifically, other input devices 732 may include, but are not limited to, one or more of the following: physical keyboard, function keys (such as volume control buttons, power buttons, etc.), trackball, mouse, joystick, etc.

[0214] Display unit 740 can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces of electronic device 700. These graphical user interfaces can be composed of graphics, text, icons, video, and any combination thereof. Display unit 740 may include display panel 741, optionally configured as LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), or other similar forms. Further, touch-sensitive surface 731 may cover display panel 741. When touch-sensitive surface 731 detects a touch operation on or near it, it transmits the information to processor 780 to determine the type of touch event. Subsequently, processor 780 provides corresponding visual output on display panel 741 according to the type of touch event. Although in the figures, touch-sensitive surface 731 and display panel 741 are implemented as two separate components to achieve input and output functions, in some embodiments, touch-sensitive surface 731 and display panel 741 can be integrated to achieve input and output functions.

[0215] The electronic device 700 may also include at least one sensor 750, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor can adjust the brightness of the display panel 741 according to the ambient light level, and the proximity sensor can generate an interruption when the flip is closed or shut down. As a type of motion sensor, a gravity acceleration sensor can detect the magnitude of acceleration in various directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that recognize the phone's posture (such as landscape / portrait switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc. Other sensors that may be configured in the electronic device 700, such as gyroscopes, barometers, hygrometers, thermometers, and infrared sensors, will not be described in detail here.

[0216] Audio circuitry 760, speaker 761, and microphone 762 provide an audio interface between the user and electronic device 700. Audio circuitry 760 converts received audio data into electrical signals and transmits them to speaker 761, where speaker 761 converts them into sound signals for output. Conversely, microphone 762 converts collected sound signals into electrical signals, which are then received by audio circuitry 760, converted back into audio data, and processed by processor 780. The audio data is then transmitted via RF circuitry 710 to, for example, another terminal, or output to memory 720 for further processing. Audio circuitry 760 may also include an earphone jack to facilitate communication between peripheral headphones and electronic device 700.

[0217] Electronic device 700, through transmission module 770 (e.g., Wi-Fi module), can help users receive requests, send information, etc., providing users with wireless broadband internet access. Although transmission module 770 is shown in the figure, it is understood that it is not an essential component of electronic device 700 and can be omitted as needed without changing the essence of the invention.

[0218] The processor 780 is the control center of the electronic device 700. It connects to various parts of the phone via various interfaces and lines, and performs various functions and processes data of the electronic device 700 by running or executing software programs and / or modules stored in the memory 720, and by calling data stored in the memory 720, thereby providing overall monitoring of the electronic device. Optionally, the processor 780 may include one or more processing cores; in some embodiments, the processor 780 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may also not be integrated into the processor 780.

[0219] The electronic device 700 also includes a power supply 790 (such as a battery) that supplies power to various components. In some embodiments, the power supply may be logically connected to the processor 780 through a power management system, thereby enabling functions such as managing charging, discharging, and power consumption through the power management system. The power supply 790 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.

[0220] Although not shown, the electronic device 700 also includes cameras (such as front-facing cameras and rear-facing cameras), Bluetooth modules, etc., which will not be described in detail here. Specifically, in this embodiment, the display unit of the electronic device is a touch screen display, and the mobile terminal also includes a memory and one or more programs, wherein one or more programs are stored in the memory and configured to be executed by one or more processors. One or more programs contain instructions for performing the following operations:

[0221] Acquire application usage data of the terminal and user feedback data on recommended applications within each target time period, wherein the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal;

[0222] Based on the number of times each target application is opened in all the target time periods in the application usage data, a first weight value is determined for each target application, and the target applications include applications that meet preset opening conditions.

[0223] Based on the user feedback results for each of the target applications in the feedback data, a second weight value for each of the target applications is determined;

[0224] Based on the first weight value and the second weight value, the corresponding score data for each target application is determined;

[0225] When the connection of the headphones is detected, application recommendations are made based on the rating data of each target application.

[0226] In practice, the above modules can be implemented as independent entities or combined in any way to be implemented as the same or several entities. For the specific implementation of the above modules, please refer to the previous method implementation examples, which will not be repeated here.

[0227] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor. Therefore, embodiments of the present invention provide a storage medium storing a plurality of instructions that can be loaded by a processor to execute the steps of any embodiment of the application recommendation method provided by the embodiments of the present invention.

[0228] The storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.

[0229] Since the instructions stored in the storage medium can execute the steps in any embodiment of the application recommendation method provided in the embodiments of the present invention, the beneficial effects that any application recommendation method provided in the embodiments of the present invention can achieve can be realized, as detailed in the preceding embodiments, and will not be repeated here.

[0230] The foregoing has provided a detailed description of an application recommendation method, apparatus, electronic device, and storage medium provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the methods and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application. Moreover, those skilled in the art can make several improvements and modifications without departing from the principles of this invention, and these improvements and modifications are also considered to be within the scope of protection of this invention.

Claims

1. An application recommendation method, characterized in that, Applied to terminals, including: Acquire application usage data of the terminal and user feedback data on recommended applications within each target time period, wherein the target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal; Based on the number of times each target application is opened in all the target time periods in the application usage data, a first weight value is determined for each target application, and the target applications include applications that meet preset opening conditions. Based on the user feedback results for each of the target applications in the feedback data, a second weight value for each of the target applications is determined; The step of determining the second weight value of each target application based on the user feedback results for each target application in the feedback data includes: Based on the user feedback results for each target application, the weight value of each target application, and the preset feedback value corresponding to the feedback results, a second weight value for each target application is determined; wherein, the user feedback results for each target application include a first feedback result, a second feedback result, a third feedback result, a fourth feedback result, and a fifth feedback result, and the preset feedback value corresponds one-to-one with the feedback results of each target application, including a first feedback value corresponding to the first feedback result, a second feedback value corresponding to the second feedback result, a third feedback value corresponding to the third feedback result, a fourth feedback value corresponding to the fourth feedback result, and a fifth feedback value corresponding to the fifth feedback result; Based on the first weight value and the second weight value, the corresponding score data for each target application is determined; When the connection of the headphones is detected, application recommendations are made based on the rating data of each target application.

2. The application recommendation method as described in claim 1, characterized in that, The step of determining a first weight value for each target application based on the number of times each target application is opened in all target time periods from the application usage data includes: The application uses data that is divided into a first dataset and a second dataset; According to the preset weight calculation formula, the third weight value of the first dataset and the fourth weight value of the second dataset are determined. Based on the third weight value and the number of times each target application in the first dataset is opened during all the target time periods, a fifth weight value for each target application is determined. Based on the fourth weight value and the number of times each target application in the second dataset is opened during all target time periods, a sixth weight value for each target application is determined. Based on the fifth weight value and the sixth weight value, a first weight value is determined for each of the target applications.

3. The application recommendation method as described in claim 2, characterized in that, Prior to the step of dividing the application's data into a first dataset and a second dataset, the application recommendation method further includes: Filter out abnormal data from the application usage data to obtain filtered application usage data; Based on preset time conditions, the filtered application usage data is subjected to a first screening process to obtain application usage data that meets the preset time conditions.

4. The application recommendation method as described in claim 3, characterized in that, After the step of performing a first screening process on the filtered application usage data according to preset time conditions to obtain application usage data that meets the preset time conditions, the application recommendation method further includes: Based on preset data volume conditions, the application usage data that meets the preset time conditions is subjected to a second filtering process to obtain application usage data that meets the preset data volume conditions.

5. The application recommendation method as described in claim 3, characterized in that, The step of filtering out abnormal data in the application usage data to obtain filtered application usage data includes: Obtain the start and stop timestamps of each target application in the application usage data for each target time period; Based on the start and stop timestamps of each target application, determine the usage duration of each target application within each target time period; The application usage data corresponding to the target application whose usage time is less than the first preset time and the application usage data corresponding to the target application whose usage time is greater than the second preset time are filtered to obtain the filtered application usage data.

6. The application recommendation method as described in claim 1, characterized in that, The step of determining the corresponding scoring data for each target application based on the first weight value and the second weight value includes: Multiply the first weight value by the second weight value to obtain the final weight value; The number of times each target application is opened within all target time periods is multiplied by the final weight value to determine and obtain the score data corresponding to each target application.

7. The application recommendation method as described in claim 6, characterized in that, The step of multiplying the number of times each target application is opened within all target time periods by the final weight value to determine and obtain the score data corresponding to each target application includes: Filter out target applications whose number of times they are opened is less than a preset threshold in all target time periods to obtain multiple filtered target applications; The filtered target applications are multiplied by the final weight value to determine and obtain the score data corresponding to each filtered target application.

8. The application recommendation method as described in claim 7, characterized in that, The step of recommending applications based on the rating data of each target application when the connection of the headphones is detected includes: The filtered targets are then sorted in reverse order using their respective scoring data. When an earphone connection is detected, the top N target applications will be recommended; where N ≥ 1 and is an integer.

9. The application recommendation method as described in claim 8, characterized in that, The step of recommending applications based on the top N ranked target applications when the connection of headphones is detected includes: When the connection of the headphones is detected, the time interval between the time the headphones were connected and the time of the last application recommendation is determined; When the time interval is greater than a preset time threshold, the top N target applications will be recommended for application recommendation.

10. The application recommendation method as described in claim 9, characterized in that, The step of recommending the top N target applications when the time interval is greater than a preset time threshold includes: When the time interval is greater than a preset time threshold, it is detected whether the current display interface of the terminal is the desktop; When the terminal is currently displaying a desktop interface, the top N target applications will be recommended.

11. An application recommendation device, characterized in that, Applied to terminals, including: The data acquisition module acquires application usage data of the terminal and user feedback data on recommended applications within each target time period. The target time period is the time from when the earphone is connected to the terminal until the earphone is disconnected from the terminal. The first determining module is used to determine a first weight value for each target application based on the number of times each target application is opened in all target time periods in the application usage data, wherein the target applications include applications that meet preset opening conditions. The second determining module is used to determine a second weight value for each of the target applications based on the user's feedback results for each of the target applications in the feedback data; The step of determining the second weight value of each target application based on the user feedback results for each target application in the feedback data includes: Based on the user feedback results for each target application, the weight value of each target application, and the preset feedback value corresponding to the feedback results, a second weight value for each target application is determined; wherein, the user feedback results for each target application include a first feedback result, a second feedback result, a third feedback result, a fourth feedback result, and a fifth feedback result, and the preset feedback value corresponds one-to-one with the feedback results of each target application, including a first feedback value corresponding to the first feedback result, a second feedback value corresponding to the second feedback result, a third feedback value corresponding to the third feedback result, a fourth feedback value corresponding to the fourth feedback result, and a fifth feedback value corresponding to the fifth feedback result; The third determining module is used to determine the scoring data corresponding to each of the target applications based on the first weight value and the second weight value. The application recommendation module is used to recommend applications based on the rating data of each target application when the connection of the headphones is detected.

12. An electronic device, characterized in that, The method includes a processor, a memory, and a computer program stored in the memory and configured to be executed by the processor, the memory being coupled to the processor, and the processor executing the computer program to implement the steps of the application recommendation method as described in any one of claims 1 to 10.

13. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein, when the computer program is executed, it controls the device on which the computer-readable storage medium resides to perform the steps of the application recommendation method as described in any one of claims 1 to 10.

Citation Information

Patent Citations

  • Adaptive weight combination recommendation algorithm

    CN107133836A

  • Information scoring method and device and storage medium

    CN107729542A

  • Application analysis method and device, electronic equipment and computer readable storage medium

    CN113157766A