Icon sequence determination method and related device

By applying recall algorithms and decision tree models to optimize icon sorting in electronic devices, the problem of users finding it difficult to quickly locate application service icons on the interface is solved, resulting in more efficient icon search and improved user experience.

CN121680685APending Publication Date: 2026-03-17HONOR DEVICE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411270512.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-10
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

On electronic device interfaces, users need to spend a lot of time finding the icons of the applications and services they need, especially when the target icon is not found, resulting in low interaction efficiency and a poor user experience.

Method used

The ranking of application services is determined by a recall algorithm. Based on user intent and historical usage preferences, application service icons that match the user intent are displayed first. The icon ranking is optimized by using a multi-dimensional recall algorithm and a decision tree model.

Benefits of technology

It improves the speed and efficiency with which users can find the icons of the applications and services they need, thus enhancing the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121680685A_ABST
    Figure CN121680685A_ABST
Patent Text Reader

Abstract

The invention provides an icon sequence determination method and a related device, and the method is implemented, an electronic device can recall application services through recall algorithms of different dimensions, and determines the icon sequence according to the weight of each recall algorithm and the weight of each application service under each dimension. Obtaining the total weight of the adaptation degree of the application service and the current intention of the user, and sorting the recalled application services based on the total weight of each application service to obtain a sorting result; afterwards, the electronic equipment can determine the display sequence of all the application service icons in any door interface in combination with the sorting result so as to ensure that the application service icons with the higher adaptation degree with the current intention of the user can be displayed preferentially, and the user can find the needed application service icons in any door interface more quickly and conveniently.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of terminal information transmission, and in particular to a method and related apparatus for determining icon order. Background Technology

[0002] With the continuous development of electronic information technology, mobile phones, tablets, and other electronic devices have become indispensable products in our daily lives, work, and entertainment. To facilitate office work while using these devices, users can now drag and drop elements on the interface to display multiple application service icons. Users can then drag and drop elements onto the corresponding application service icon and release to transfer the element to the application service associated with that icon, causing the electronic device to display the corresponding application service interface.

[0003] However, after users drag and drop elements on the interface, they need to spend a significant amount of time finding the application service icon they need from among the multiple application service icons displayed on the electronic device's screen. Especially when the currently displayed application service icon does not include the one the user needs, the user has to switch between displayed application service icons multiple times to find the desired icon. This operation method is inefficient and seriously affects the user experience. Summary of the Invention

[0004] The purpose of this application is to provide a method and related apparatus for determining the order of icons. Implementing this method, an electronic device can recall application services using recall algorithms of different dimensions. Based on the weights of each recall algorithm and the weight of each application service in each dimension, a total weight indicating the degree of fit between the application service and the user's current intent is obtained. Then, the recalled application services are sorted based on the total weight of each application service to obtain a sorting result. Subsequently, the electronic device can combine this sorting result to determine the display order of each application service icon in the "Anywhere Door" interface, ensuring that application service icons with a higher degree of fit to the user's current intent are displayed first, making it easier for the user to quickly find the application service icon they need in the "Anywhere Door" interface.

[0005] The aforementioned and other objectives will be achieved through the features described in the independent claims. Further implementations are illustrated in the dependent claims, the specification, and the drawings.

[0006] In a first aspect, this application provides a method for determining the order of icons, characterized by comprising: responding to a user's first operation on a target element in a first interface, obtaining a first set of application services, the first set of application services including multiple application services recommended based on the user's intent on the target element; obtaining a second set of application services and a sorting result of the application services in the second set of application services, the sorting result being determined by the historical launch records of each application service in the second set of application services; displaying a second interface, the second interface including multiple first application service icons and the target element, the multiple application services corresponding to the multiple first application service icons being included in both the first set of application services and the second set of application services, the display order of the multiple first application service icons in the second interface being determined based on the sorting result of all application services in the second set of application services.

[0007] In this method, the first interface can be any user interface displayed on an electronic device, such as the home screen, the application interface of the "Notes" application, etc. The application interface can be any other user interface, and this application does not limit it to any other type of user interface.

[0008] The target element can be any type of element in the first interface, specifically any one of the following: image, text, audio file, video file, or document file. This application does not limit this.

[0009] The first operation can be used to select the target element. Optionally, the first operation can be an operation of long-pressing and dragging the target element information to the side of the first interface (i.e., the side of the display screen).

[0010] As the target element undergoes the first operation, the electronic device can determine that the user has a need to activate the "Anywhere Door" function and transmit the target element to an application service through the "Anywhere Door" interface. Therefore, the electronic device can analyze the type and specific content of the target element to determine the user's intent corresponding to that target element. For example, if the target element is text and contains location information, the electronic device can infer that the user may need to navigate to that location, search for information around that location, or book a ticket to that location, among other user intents. As another example, if the target element is text and contains a QR code, the electronic device can determine that the user may need to use... Users may use QR codes to pay, or they may need to use WeChat to scan a QR code to enter a mini-program, or Taobao to scan a QR code to view product information, among other user intentions.

[0011] After determining the user intent corresponding to the target element, the electronic device can identify multiple application services corresponding to the user intent, resulting in the aforementioned first set of application services. It should be understood that the electronic device cannot determine the matching degree between each application service icon and the user intent at this point. Therefore, based on its historically collected event tracking data, and according to the usage of each application service reflected in the event tracking data, the electronic device can determine a second set of application services and the sorting result of all application services within this second set from all available application services. During the user's use of the electronic device, whenever the user launches any application service, the electronic device records a piece of event tracking data corresponding to this launched application service. This event tracking data can record characteristic information such as the name of the launched application service, the time and location of the launch, and whether Wi-Fi was connected at the time of launch. When using event tracking data to obtain the application services included in the second application service, the electronic device can learn the user's usage preferences from multiple recorded event tracking data, and determine the application services in the second application service set and the degree of adaptation of each application service to the user's usage preferences based on the user's usage preferences, and sort the application services in the second application service set based on the degree of adaptation of each application service to the user's usage preferences; among them, the application services with a higher degree of adaptation to the user's usage preferences are ranked higher.

[0012] Therefore, after obtaining the second set of application services and sorting the application services therein, if some or all of the application services in the first set of application services also exist in the second set of application services, the electronic device can sort these application services based on the sorting results of these application services in the second set of application services and display the corresponding applications on the arbitrary door interface according to the sorting results.

[0013] By implementing this method, the application services in the first set of application services can be displayed in an orderly manner on the interface according to the degree of matching between each application service and the user's current intent. The application service icon corresponding to the application service with a higher degree of matching with the user's intent is displayed at the top, so that the application service that truly matches the user's current intent can be found by the user as quickly as possible, so that the user can transfer the dragged elements to the application service that needs to be started more quickly.

[0014] In conjunction with the first aspect, in one possible implementation, any one of the plurality of first application service icons is used to transmit the target element to the application service corresponding to the aforementioned first application service icon.

[0015] In conjunction with the first aspect, in one possible implementation, the ranking result is determined based on the degree of matching between multiple application services in the second application service set and user preferences.

[0016] In this embodiment, the dimensions considered when selecting application services from all available application services provided by the electronic device may include application services recently used by the user (within the last three days), application services recently used by the user (on the current day or within the last 24 hours), application services the user habitually uses during the current time period (i.e., the time period when the user drags the target element), application services used by the user under the influence of various factors such as user history, interests, and geography, and application services used by the user in certain specific scenarios. These dimensions all reflect, to some extent, the user's usage preferences for application services throughout the entire use of the electronic device, or the user's usage preferences for application services within the time period, current environment, or current scenario mentioned when the "Anywhere Door" function is activated. Sorting application services according to their degree of matching with user preferences makes it easier for application services ranked higher in the second application service set to match the user's actual intent, thereby ensuring that application services truly matching the intent are displayed at the top of the second interface.

[0017] In conjunction with the first aspect, in one possible implementation, the application services in the second application service set are retrieved through multiple recall algorithms. Any two of the multiple recall algorithms use different recall dimensions. Each of the multiple recall algorithms corresponds to an algorithm weight, which characterizes the predictive ability of the recall algorithm for user intent. Each application service retrieved by any of the multiple recall algorithms corresponds to a service weight, which characterizes the degree of matching between the application service and user preferences under the recall dimension used by the recall algorithm. The ranking result of the application services in the second application service set is determined based on the service weight of each application service in the second application service set under the recall dimension used by each of the multiple recall algorithms, and the algorithm weight of each of the multiple recall algorithms.

[0018] In this embodiment, the electronic device can employ multiple recall algorithms based on different dimensions to recall application services, obtaining the application services in the second application service set and the ranking results of each application service in the second application service set. Each recall algorithm and the application services recalled under the dimensions used by that algorithm are assigned corresponding weights. The electronic device can obtain a total weight reflecting the degree of fit between the application service and the user's current intent based on the weights of each recall algorithm and the weights of each application service under each dimension. Then, the recalled application services are ranked based on the total weight of each application service to obtain the aforementioned ranking result. The total weight of any application service reflects the degree of matching between the application service and the user's intent across multiple dimensions, and this matching degree is more accurate.

[0019] In conjunction with the first aspect, in one possible implementation, the application services in the second set of application services are retrieved through one or more of the first, second, third, and fourth recall algorithms. The first recall algorithm uses a recall dimension of application services whose launch count is greater than a threshold or whose launch count ranks in the top k within the last few days. The second recall algorithm uses a recall dimension of application services launched within the last few hours. The third recall algorithm uses a recall dimension of application services launched in the same scenario as the current scenario. The fourth recall algorithm uses a recall dimension of application services launched within the same time period as the current time period within the last few days. Here, k is an integer greater than 1.

[0020] In this embodiment, the algorithm weights of each recall algorithm can be set to fixed values ​​by the electronic device, or they can be updated as the data tracking points are updated. Subsequent embodiments will describe this in detail. For the first recall algorithm, the electronic device can assign corresponding service weights to application services based on the number of times users have used each application service within the last 3 days (or the entire running time if the electronic device's running time is less than 3 days), with application services with higher usage frequency having higher service weights. For the second recall algorithm, the electronic device can assign corresponding service weights to application services based on the interval between the most recent launch time of each application service and the current time, with application services with shorter time intervals having higher service weights. For the third recall algorithm, the electronic device can determine the service weights of each application service based on the current scenario (the scenario in which the electronic device is located when the user performs the first operation on the target element) and the user's usage of each application service in similar historical scenarios.

[0021] Optionally, if the recall algorithm used by the electronic device does not rely on scene information (such as current time, current location, etc.) of the user dragging the target element, for example, if the electronic device only uses the first recall algorithm and / or the second recall algorithm to recall application services, the second set of application services can be something that was already determined and existed in the electronic device before the user dragged the target element. Of course, the electronic device can also respond in real-time to the user's dragging operation on the target element, and then use the recall algorithm to recall the application services to obtain the second set of application services.

[0022] Optionally, the electronic device is currently in a first operating phase, which is a phase where the electronic device's operating time is less than or equal to a first time threshold or the number of data points collected by the electronic device is less than or equal to a first data threshold. The multiple recall algorithms may include the first recall algorithm, the second recall algorithm, and the third recall algorithm. In the first operating phase, since the electronic device collects very little data points, it can combine the data points collected in this phase to recall application services only from three dimensions: "application services recently used by the user," "application services used by the user on the current day," and "application services used by the user in the current scenario" (corresponding to the first recall algorithm, the second recall algorithm, and the third recall algorithm, respectively).

[0023] Optionally, the electronic device is currently in a second operating phase. This second operating phase occurs when the electronic device's operating time is greater than a first time threshold but less than a second time threshold, or when the amount of embedded data collected by the electronic device is greater than a first data threshold but less than or equal to the second time threshold. The multiple recall algorithms may include the first recall algorithm, the second recall algorithm, the third recall algorithm, and the fourth recall algorithm. In the second operating phase, since the amount of embedded data collected by the electronic device is relatively larger than in the first operating phase, the electronic device can combine the embedded data collected in this phase to recall application services from four dimensions: "application services recently used by the user," "application services used by the user on the current day," "application services used by the user in the current scenario," and "application services used by the user in the current time period" (corresponding to the first, second, third, and fourth recall algorithms, respectively).

[0024] Optionally, the first time threshold is 3 days, and the first data threshold is 2000.

[0025] Optionally, the number threshold can be 50, and the value of k can be 20 or other values. This application does not limit this value.

[0026] In conjunction with the first aspect, in one possible implementation, the application services in the second set of application services are retrieved through one or more of the first, second, third, and fifth recall algorithms. The first recall algorithm uses the following recall dimension: application services whose launch count is greater than a threshold or whose launch count ranks in the top k within the most recent days. The second recall algorithm uses the following recall dimension: application services launched within the most recent hours. The third recall algorithm uses the following recall dimension: application services launched by the user in the same scenario as the current scenario. The fifth recall algorithm uses a decision tree to retrieve application services used by the user. The decision tree is trained using data collected within the most recent N days, where N is greater than a number of days threshold and k is an integer greater than 1.

[0027] In this embodiment, the algorithm weights of each recall algorithm can be set to fixed values ​​by the electronic device, or they can be updated as the data points are updated. Subsequent embodiments will describe this in detail. Specific information about the first, second, and third recall algorithms can be found in the foregoing description and will not be repeated here. The decision tree used by the fifth recall algorithm can be a decision tree trained based on the depth and decision rules set by the electronic device according to the collected data points and specific requirements for the algorithm's effectiveness. This application does not limit this specific decision tree.

[0028] Optionally, if the recall algorithm used by the electronic device does not rely on scene information (such as current time, current location, etc.) of the user dragging the target element, for example, if the electronic device only uses the first recall algorithm and / or the second recall algorithm to recall application services, the second set of application services can be something that was already determined and existed in the electronic device before the user dragged the target element. Of course, the electronic device can also respond in real-time to the user's dragging operation on the target element, and then use the recall algorithm to recall the application services to obtain the second set of application services.

[0029] Optionally, the electronic device is currently in a first operating phase, which is a phase in which the operating time of the electronic device is less than or equal to a first time threshold or the number of embedded data points collected by the electronic device is less than or equal to a first data threshold. The multiple recall algorithms may include the first recall algorithm, the second recall algorithm, and the third recall algorithm.

[0030] Optionally, the electronic device is currently in a third operating phase, which is a phase where the electronic device's operating time exceeds a second time threshold or the amount of embedded data collected by the electronic device exceeds a second data threshold. The multiple recall algorithms may include the first recall algorithm, the second recall algorithm, the third recall algorithm, and the fifth recall algorithm. In the third operating phase, since the electronic device collects more embedded data than in the second operating phase, the electronic device can combine the embedded data collected in this phase to recall application services from four dimensions: "application services recently used by the user," "application services used by the user on the current day," "application services used by the user in the current scenario," and "application services used by the user using a decision tree" (corresponding to the first, second, third, and fifth recall algorithms, respectively).

[0031] Optionally, the decision tree used in the fifth recall algorithm is a CART decision tree.

[0032] Optionally, the second time threshold is 7 days, and the second data threshold is 5000.

[0033] Optionally, the number threshold can be 50, and the value of k can be 20 or other values. This application does not limit this value.

[0034] In conjunction with the first aspect, in one possible implementation, the plurality of recall algorithms includes a first recall algorithm, the algorithm weight of which is determined based on the number of times the application service launched during the first runtime period ranks in the top M positions in the test application service set. The test application service set consists of application services recalled based on the tracking data collected during the second runtime period under the recall dimension used by the first recall algorithm. The ranking result of the application services in the test service set is determined by the historical launch records of each application service during the second runtime period, which precedes the first runtime period.

[0035] It is understandable that recall algorithms based on different dimensions have different abilities to predict user intent. For multi-path recall prediction algorithms, when a recall algorithm based on a certain dimension has a better ability to predict user intent than other recall algorithms, the corresponding algorithm weight should also be greater than the corresponding weight of other recall algorithm models.

[0036] Therefore, in this application, to verify the predictive ability of the first recall algorithm for user intent, the electronic device can divide the historically collected event tracking data into test data (i.e., event tracking data collected during the first runtime period) and verification data (i.e., event tracking data collected during the second time period). The electronic device can combine the test data to recall application services under the recall dimension adopted by the first algorithm, and use the ranking of the application services launched in the verification data in the set of application services recalled by the first recall algorithm to reflect the strength of the recall algorithm model's ability to predict user intent. If the application service launched during the first runtime period ranks in the top M positions in the set of test application services, it means that the first recall algorithm has successfully predicted user intent once. The more times the first recall algorithm successfully predicts, the better its ability to predict user intent, and the higher its algorithm weight.

[0037] Optionally, the electronic device can determine the algorithm weight of each recall algorithm by combining the number of successful tests corresponding to all the recall algorithms it uses.

[0038] Optional. The value of M can be any one of 6, 7, or 8, or other values; this application does not limit this value.

[0039] In conjunction with the first aspect, in one possible implementation, the second interface further includes a plurality of second application service icons, wherein the plurality of application services corresponding to the plurality of second application service icons are included in the first application service set but not in the second application service set, and the plurality of second application service icons are displayed in the second interface after the plurality of first application service icons.

[0040] Understandably, application services not present in the second set of application services are likely those that do not closely match the user's intent. Therefore, in this embodiment, even if the portal recommends multiple application services corresponding to the multiple second application service icons based on the target element, the electronic device can adaptively display them after the multiple first application service icons, so as to display the first application icons that are more closely matched to the intent as high up on the second interface as possible.

[0041] In a second aspect, this application provides an electronic device comprising: one or more processors and a memory; the memory being coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, wherein the one or more processors invoke the computer instructions to cause the electronic device to perform the method of the first aspect or any possible implementation thereof.

[0042] Thirdly, this application provides a chip system applied to an electronic device, the chip system including one or more processors, the processors being configured to invoke computer instructions to cause the electronic device to perform a method as described in the first aspect or any possible implementation thereof.

[0043] Fourthly, this application provides a computer-readable storage medium including instructions that, when executed on an electronic device, cause the electronic device to perform the method as described in the first aspect or any possible implementation thereof.

[0044] Fifthly, this application provides a computer program product containing instructions that, when the computer program product is run on an electronic device, cause the electronic device to perform the method as described in the first aspect or any possible implementation thereof. Attached Figure Description

[0045] Figure 1 An architecture diagram of a decision tree model provided in an embodiment of this application;

[0046] Figure 2 A schematic diagram illustrating the process of transmitting information based on an arbitrary door interface, provided in an embodiment of this application;

[0047] Figure 3 A flowchart illustrating a method for determining icon order as provided in an embodiment of this application;

[0048] Figure 4 This application provides a schematic diagram illustrating a process for recalling and prioritizing application services.

[0049] Figure 5 This application provides a schematic diagram illustrating a process scenario for determining the ranking result of application services.

[0050] Figure 6 A schematic diagram of a scenario for displaying an arbitrary door interface provided in an embodiment of this application;

[0051] Figure 7 A schematic diagram illustrating the process of updating the algorithm weights of a recall algorithm, provided in an embodiment of this application;

[0052] Figure 8 A software architecture diagram of an electronic device provided in an embodiment of this application;

[0053] Figure 9 This is a structural diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0054] The terminology used in the following embodiments of this application is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. As used in the specification and appended claims of this application, the singular expressions “a,” “an,” “the,” “the,” “the,” and “this” are intended to include the plural expressions as well, unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in this application refers to and includes any or all possible combinations of one or more of the listed items.

[0055] To facilitate understanding, the relevant terms involved in the embodiments of this application will be introduced below.

[0056] (1) Any Door Function

[0057] In this application, the "Anywhere Door Function" is an interactive method provided by an electronic device based on the user's needs for cross-application and cross-device information transmission. Specifically, it can be a functional user interface provided by the electronic device based on the user's needs for cross-device or cross-application information transmission, also known as the "Anywhere Door Interface." In some embodiments of this application, this function can also be called "Smart Transfer." As its name suggests, under any interface displayed by the electronic device, when the user needs to transmit information across applications, the user only needs to select the information, long-press the left mouse button on the information element in the interface, and drag it to the edge of its window. The electronic device will then perform a three-dimensional transformation of the original interface displayed on the screen, creating a visual effect of the original interface pushing inward, and display the application service icon recommended by the electronic device for that element on the side of the screen (i.e., the Anywhere Door Interface, for details, please refer to the relevant descriptions in the subsequent embodiments, which will not be repeated here). Afterward, the user places the dragged information element on the icon and releases it to transmit the information element to the application service corresponding to the icon and start the corresponding application service function so that the electronic device displays the corresponding application service interface.

[0058] In this application, an application (APP) installed in an electronic device may have multiple application services. In the Any Door interface provided in this application, the service icons of the applications displayed may include some or all of the application service icons provided by the same application (APP), and this application does not limit this.

[0059] (2) Data embedding

[0060] In this application, the data collected can be data collected when a user starts (or uses, hereinafter the same) an application service. The application service can be any application service provided by any application installed on the electronic device. The application service can be started by dragging and dropping the aforementioned element onto the application service icon contained in the door and then releasing it, or by clicking the application icon normally to enter the main interface of the application and then clicking the controls or function options in the interface one by one to start the corresponding application service, or by other start methods (such as voice start). This application does not limit this.

[0061] During a user's use of an electronic device, whenever the user launches any application service, the electronic device records a data point corresponding to that application service launch. The features contained in this data point may include, but are not limited to, the features shown in Table 1 below:

[0062] Table 1 - Tags included in the embedded data

[0063]

[0064]

[0065] Understandably, the event tracking data recorded by electronic devices can reflect a user's personal preferences when using application services to some extent. For example, suppose multiple event tracking data points all indicate that the user launched the application at 8:00 AM. The provided ride code service only had a small amount of event tracking data indicating that the user activated the radio service provided by the app and the search service provided by the app's music at 8:00 AM. This suggests that the user activated the radio service provided by the app and the search service provided by the app's music at 8:00 AM. The provided ride code service may better meet user needs for public transportation; furthermore, multiple data points indicate that users will turn on [the app / service] when their electronic devices are connected to the in-vehicle terminal. The navigation service provided only showed a small portion of the data points indicating that the app's music search service and WeChat chat service were activated when the electronic device was connected to the in-vehicle terminal. This suggests that when the electronic device was connected to the in-vehicle terminal, The navigation service provided may better meet user needs.

[0066] In some embodiments, the electronic device may contain application services for which the electronic device cannot generate application service icons. Therefore, optionally, the electronic device can perform data cleaning on the historically collected event tracking data and delete event tracking data where the application service indicated by the label cannot generate an application service icon.

[0067] Therefore, in this embodiment, when a user drags and transmits an element using the "Anywhere Door" function, the multiple application service icons displayed on the electronic device can be sorted according to the historically stored event tracking data of the electronic device. Specifically, the electronic device can determine multiple application services that the user may need to use based on the content of the element, and predict the matching degree between these multiple application services (hereinafter referred to as application service set S1) and the user's intent based on the time, location, etc. of the user's dragging of the element (i.e., some or all of the feature items contained in the event tracking data) and the historically stored event tracking data, and sort them from high to low according to the matching degree. The application service set S1 can be intersected with the multiple application services recalled by the "Anywhere Door" function (hereinafter referred to as application service set S2, which is the actual application service set) to obtain at least one application service that exists in both application service set S2 and application service set S1 (hereinafter referred to as application service set S3, S3∈S1, S2, and ideally S2∈S1, S2∩S1=S2=S3). When a user drags an element using the "Anywhere Door" function, the electronic device can display the corresponding application service icons in application service set S2 on the side. The application service icons in application service set S3 will be displayed from top to bottom according to their order in application service set S1. The application service icons of other application services in application service set S2 (i.e., application services other than application service set S3; if S2∩S1=S2=S3, then there are no application services in application service set S2 other than application service set S3) can be randomly displayed after them.

[0068] In this way, the icons of the various application services recalled by the AnyDoor can be displayed in the interface in an orderly manner according to the degree of matching between each application service and the user's current intent (for example, the application service icon corresponding to the application service with a higher degree of matching with the user's intent is displayed at the top), so that the application service that truly matches the user's current intent can be found by the user as quickly as possible, so that the user can transfer the dragged elements to the application service that needs to be launched more quickly.

[0069] (3) Cold start phase and normal phase

[0070] In this application, the entire operation process of the electronic device after it leaves the factory can be divided into two stages: the cold start stage and the normal stage. These two stages can be divided according to the amount of embedded data acquired by the electronic device.

[0071] The cold start phase can be considered the initial operational phase after the electronic device leaves the factory. During this phase, the number of data points collected by the electronic device can range from 0 to 5000, and the duration can be 0 to 7 days. Optionally, in some embodiments, the cold start phase can be divided into a first cold start phase and a second cold start phase based on the amount of data collected, wherein:

[0072] In the first cold start phase, the electronic device collects relatively little data, specifically 0 to 2000 records. Based on the usage habits of most users, this phase generally lasts about 3 days. That is, after the electronic device leaves the factory and is used by the user for 3 days, the user may launch the application service a total of 2000 times. The electronic device will also collect one data point for each application service launch, resulting in 2000 data points.

[0073] In the second cold start phase, the electronic device collects more data points than in the first cold start phase, ranging from 2,000 to 5,000. Based on the usage habits of most users, this phase generally lasts about 4 days. That is, in the approximately 7 days after the electronic device leaves the factory and is put into use by the user, the user may launch the application service a total of 5,000 times (including the 2,000 data points collected in the first cold start phase). The electronic device will also collect one data point for each application service launch, for a total of 5,000 data points.

[0074] The normal operation phase can be considered the new operating phase that begins immediately after the cold start phase of the electronic device. During this phase, the electronic device collects more than 5,000 data points. Based on the usage habits of most users, this phase generally begins 7 days after the electronic device leaves the factory and is put into user use, and can continue until the end of the electronic device's lifespan.

[0075] (4) Recall sorting algorithm

[0076] Recall and ranking algorithms are the most commonly used algorithms in recommendation tasks. They can quickly filter out targets that a user may be interested in from multiple objects, while the ranking stage accurately ranks these targets to meet the user's personalized needs. These two steps work together to form the core process of a recommendation system.

[0077] The recall and sorting algorithm consists of two phases: recall and sorting.

[0078] The recall phase is responsible for filtering out targets that the user may be interested in from multiple objects. In this embodiment, when a user attempts to drag an element to trigger the electronic device to display any doorway, the electronic device can combine historically collected event tracking data and use multiple recall channels, including recently popular recall, recently used recall, time-based recall, decision tree recall, and contextualized recall, to recall the application service. Wherein:

[0079] ① The recent popularity recall algorithm can be used to recall users who have used application services frequently in the last few days (e.g., the last three days).

[0080] For example, suppose an electronic device has 100 applications installed that provide various services. The device can collect event tracking data from the past three days and use this data to calculate the number of times each application service was launched within those three days. The higher the launch count, the greater the weight of each service. Optionally, the device can sort the 100 applications by their respective weights and identify the top-ranked services (e.g., those with launch counts between 1 and 20) as those requiring recall. Alternatively, the device can set a threshold (e.g., 30) to identify applications with launch counts greater than or equal to this threshold as those requiring recall.

[0081] ②The recently used recall algorithm can be used to recall the application services that a user has recently used within the same day.

[0082] For example, suppose an electronic device has 100 applications installed, providing various services. The device can collect event tracking data from the past day or the past 24 hours. Based on this data, it calculates the time interval between the most recent (the shortest interval between startup and current) launch time and the current time for each application service. Application services with shorter intervals between their most recent launch time and the current time have higher weights. Understandably, if an application service hasn't launched in the past 24 hours, its weight can be set to 0. In some embodiments, the electronic device can divide the past 24 hours into multiple time periods (e.g., every 30 minutes), and calculate the time period to which each application service's most recent launch time belongs. Application services with the shortest interval between their current and current time periods have higher weights. The electronic device can then rank the 100 applications by their respective weights and identify the top-ranked applications (e.g., ranked 1 to 20) as those requiring recall.

[0083] ③ The time-based bucket recall algorithm can be used to recall application services that users have used in the current time period within the most recent days (at least 3 days).

[0084] The premise of the time-based bucketing recall algorithm is to divide the 24 hours of a day into multiple time periods of fixed length. For example, the 24 hours can be divided into 48 time periods, each half hour long, i.e., 00:00-0:30 is one time period, 00:30-1:00 is another, and so on. Assuming an electronic device has 100 applications installed, and the user attempts to display a "door" by dragging an element between 12:00 and 12:30, the electronic device can use at least three days of historical tracking data to count the applications launched by the user during the 12:00-12:30 time period, and count the number of times each application was launched within that time period. The more times an application was launched within that time period, the higher its weight. Similarly, the electronic device can rank the 100 applications according to their weights and identify the top-ranked applications (e.g., ranked 1 to 20) as those requiring recall. Understandably, since the time-based bucket recall algorithm can only achieve good results when a sufficient amount of data has been collected, in this embodiment of the application, the time-based bucket recall algorithm can be applied to the cold start phase of electronic devices.

[0085] ④ The decision tree recall algorithm can be used to recall application services by combining multiple factors such as user history, interests, and preferences.

[0086] Figure 1This example illustrates a decision tree model trained on historically acquired event tracking data by an electronic device. All leaf nodes of the decision tree (e.g., nodes 104-107) correspond to a weight. The electronic device can analyze the historically collected event tracking data. For any application service, it starts from the root node 101 and first determines whether the application service was launched today. If so, it proceeds to node 102; otherwise, it proceeds to node 103. For application services launched today, the electronic device further determines at node 102 whether the number of launches in the past three days is greater than or equal to 50. If it is greater than or equal to 50, it proceeds to node 104 and assigns the weight 0.4 corresponding to node 104 as the weight of the application service; if it is less than or equal to 5... If the number of launches is 0, the system proceeds to node 105 and obtains the weight 0.3 corresponding to node 104 as the weight of the application service. For application services not launched today, the electronic device further determines at node 103 whether the number of launches of the application service during the entire operation of the electronic device is greater than or equal to 1000. If it is greater than or equal to 1000, the system proceeds to node 106 and obtains the weight 0.2 corresponding to node 106 as the weight of the application service. If it is less than or equal to 1000, the system proceeds to node 107 and obtains the weight 0.1 corresponding to node 107 as the weight of the application service. Assuming the electronic device can provide 100 application services, after determining the weight corresponding to each application service using the decision tree model, the electronic device can sort the 100 application services according to the weights of each application service and identify the top-ranked application services (e.g., ranked 1 to 20) as the application services to be recalled. Similarly, the decision tree recall algorithm only achieves good results when there is a sufficient amount of collected data. Therefore, in this embodiment, the time-based bucket recall algorithm is applicable to the normal operation of the electronic device. Understandable. Figure 1 The decision tree model shown is only an example. In actual application scenarios, electronic devices can generate decision trees of different depths and decision rules according to the amount of collected embedded data and the specific requirements for the algorithm effect. This application does not limit this.

[0087] ⑤ Contextualized recall algorithms can be used to recall application services by combining users' historical behavior and the context in which the historical behavior occurred.

[0088] Specifically, electronic devices can infer user preferences for application services in specific scenarios based on collected event tracking data. Contextualized recall algorithms can cover scenarios where the electronic device is connected to other devices via Bluetooth, scenarios where a user uses a particular application service less frequently but with relatively regular usage, and scenarios where a user is likely to use another application after using one. For example, on a weekend afternoon when the electronic device is connected to Wi-Fi with network name SSID1 and network address BSSID1, the video search service provided by the video application is activated multiple times. However, when the electronic device is not connected to Wi-Fi or it is not a weekend afternoon, the video search service is hardly activated. This indicates that on a weekend afternoon when the user is connected to their home Wi-Fi, the user is accustomed to watching videos at home using their electronic device. In this specific scenario, the video search service may better match the user's current intent. Therefore, in the same scenario, the electronic device can assign a higher weight to the video search service than to other services.

[0089] In other words, suppose there exists a specific scene scene1, which corresponds to multiple feature values ​​[f] 11 f 21 , ...f n1 f Svc1 ](f 11 -f n1 The corresponding features are all partial features contained in the event tracking data, f Svc1 Corresponding to the label in Table 1 above, this indicates that the application service launched in this scenario is Svc1 (the same applies below). If the electronic device collects enough embedded data points in this specific scenario (scene1), then the electronic device can record the mapping relationship between this specific scenario (scene1) and the application service Svc1, indicating that the user is highly likely to use the application service Svc1 in this scenario. Therefore, when the user drags an element to attempt to enter the "anywhere door" interface, the electronic device can obtain the feature value [f] of the current scenario. 1x f 2x …f nx f (n+1)x , ...f mx [f] (that is, all features except label contained in the tracking data at the current feature value), and [f] 1x f 2x …f nx ] and [f 11 f 21 , ...f n1 Compare them, if f 1x =f 11 f 2x =f 21 , ..., f nx =fn1 This means that the current scene of the electronic device is extremely similar to the specific scene1, and the user is very likely to need to use the application service Svc1. In this case, the electronic device can set a larger weight for the application service Svc1.

[0090] It should be noted that in context-based recall algorithms, the number of features used to define a specific scenario is not limited. For example, [weekend, 3 PM, connected to Wi-Fi with network name ssid1 and network address bssid1] can be used to define a scenario, and [located on "Xingfu Road", connected to a vehicle terminal with the name "XXX" via Bluetooth] can also be used to define a scenario. Similarly, assuming there is a specific scenario scene2, this specific scenario scene2 corresponds to multiple feature values ​​[f 12 f 22 f m2 f Svc2 If the electronic device collects enough embedded data points in the specific scenario (scene2), it can record the mapping relationship between scene2 and application service Svc2, indicating that the user is highly likely to use application service Svc2 in scene2. Afterwards, the electronic device can... 1x f 2x f mx ] and [f 12 f 22 f m2 Compare them, if f 1x =f 12 f 2x =f 22 f mx =f m2 This means that the scene the electronic device is currently in is very similar to scene2, and the user is very likely to need to use application service Svc2 as well. In this case, the electronic device can set a larger weight for application service Svc2.

[0091] Assuming that when a user drags an element to attempt to enter an arbitrary door interface, the electronic device obtains the feature value of the current scene as [f] 11 f 21 …f n1 , ...f m1 (excluding label), and it determines two different specific scenes scene3[f] based on historically collected data points. 11 f 21 ,Svc3] and scene4[f 31 f 41 f 51If the scene currently occupied by the electronic device is similar to both scene3 and scene4, then the scene may use either Svc3 or Svc4. To address this, in order to determine the weights of scene3 and scene4 for subsequent prioritization of Svc3 and Svc4, the electronic device can determine the weight of the application service based on the amount of event tracking data collected in both scenes. The more event tracking data collected in a scene, the greater the weight of the corresponding application service. It's understandable that the more scene features a specific scene has, the closer the connection between that specific scene and the application service, and therefore the greater the weight of the application service corresponding to that scene should be set. However, similarly, the more scene features a specific scene has, the less event tracking data the user may collect in that specific scene, and therefore the smaller the weight of the application service may be set. In this case, the electronic device can also determine the weight of the application service based on both the number of scene features corresponding to the specific scene and the amount of event tracking data collected in that scene. Correspondingly, in the current scene, the weights of other application services not mapped to a specific scene can be uniformly set to a smaller value, such as 0.

[0092] Similarly, assuming that the electronic device can provide 100 application services, after determining the weight of each application service using a contextualized recall algorithm, the electronic device can sort the 100 application services according to the weight of each application service, and identify the top-ranked application services (e.g., ranked 1 to 20) as the application services that need to be recalled.

[0093] The task of the ranking phase is to sort the targets selected in the recall phase to meet the user's personalized needs. In this embodiment, after recalling application services through any of the recall channels mentioned above, such as recent popular recall, recent use recall, time-based recall, decision tree recall, and contextual recall, each recall channel recalls application services with corresponding service weights, and each recall channel (algorithm) also has an algorithm weight. In the ranking phase, the electronic device can combine the algorithm weights corresponding to each recall channel and the service weights corresponding to each application service under that recall channel to jointly determine the weight of the application service, and rank the application services according to the total weight of each application service to obtain the ranking result. The application service with the larger the total weight is the application service that matches the user's intent more closely, and its ranking is also higher.

[0094] It should be noted that, in addition to the recall capabilities of the aforementioned recall algorithm, the "AnyDoor" function possesses independent recall logic. It can independently recall application services without relying on the aforementioned recall algorithm and using its own recall logic. However, the "AnyDoor" function cannot accurately sort the recalled application services based on user intent. Therefore, in this application, after the electronic device recalls multiple application services through the "AnyDoor" function, it can sort the recalled application services based on the aforementioned sorting results and display them sequentially on the "AnyDoor" interface. This ensures that application services most closely matching the user's current intent are displayed at the top of the interface, allowing the user to quickly locate the application service they need to launch. This effectively improves the interaction efficiency between the user and the electronic device, enhancing the user experience.

[0095] With the continuous development of electronic information technology, smartphones, tablets, and other smart devices have become indispensable products in our daily lives, work, and entertainment. To facilitate office work while using smart devices, users can currently drag and drop elements from the interface to display multiple application service icons. Users can drag elements onto the corresponding application service icon and release to transfer the element to the application service corresponding to that icon, causing the electronic device to display the relevant application service interface.

[0096] Figure 2 This example illustrates a process by which a user transmits information via an arbitrary door interface.

[0097] like Figure 2 As shown in (A), the user interface 21 can be the application interface of the "Notes" application on the electronic device, or it can be the application interface of other applications; this application does not limit this. The user interface 21 can include text 211, where cursors exist on both sides of the text 211, indicating that the text has been selected by the user. The electronic device can generate text 212 in the interface in response to the user's long-press and drag operation on the text 211. While the user does not release the finger, the text 212 can move with the user's fingertip in the user interface 21, and the text 212 can be displayed on top of the user interface 21, that is, the text 212 can cover any element in the user interface 21. It should be understood that the text content displayed by the text 212 is the same as the image text displayed by the text 211. Optionally, if the text contained in the text 211 is too long, the text content contained in the text 212 can be only a part of the text content contained in the text 211.

[0098] The electronic device can respond to user actions on text 212, such as Figure 2 As shown in (A), the operation of holding down text 212 and dragging it to the right will display as follows: Figure 2User interface 22 is shown in (B) above. Optionally, the electronic device will only display user interface 22 if the user drags text 212 to a distance less than a certain threshold from the right or left edge of the screen. Figure 2 As shown in (B) above, the user interface 22 is the arbitrary door interface mentioned in the foregoing description, which may include sub-interfaces 221, icon areas 222, and text 212. Wherein:

[0099] The elements displayed in sub-interface 221 are identical to those displayed in user interface 21 (except for the status bar). In fact, sub-interface 221 can be considered as the interface obtained by the electronic device after a three-dimensional transformation of all elements (except the status bar) of the original user interface 21. Within user interface 22, sub-interface 221 can create a visual effect on the screen that makes user interface 21 appear to push inwards. Understandably, this "opening" visual effect metaphorically represents the act of transmitting information, which is more intuitive than copying and pasting.

[0100] Icon area 222 can be used to display application service icons recommended by multiple electronic devices based on the user-selected text 212.

[0101] Optionally, each icon in icon area 222 has a corresponding text description below it. This text description can be used to explain the specific application name or application service name corresponding to the icon. Understandably, the text below each application service icon is only to help users understand the specific application or application function corresponding to the icon, but this application does not limit the specific icon style or specific text content.

[0102] It should be noted that, due to the limited display area of ​​electronic devices, the multiple application service icons displayed in icon area 222 can be recommended to the user by the electronic device based on the specific content contained in text 212. For example, when text 212 contains a location, the electronic device can infer that the user may need navigation to that location, or may need to search for information around that location, or may need to use an application that supports purchasing tickets, such as an application... The device can provide a range of services, including ordering tickets to the destination. However, the electronic device cannot determine the degree of match between each application service icon and the user's intent. Therefore, the electronic device will randomly display these services in icon area 222. As shown in icon area 222, the application service icons displayed from top to bottom correspond to the following application services: the system application's collection service, the system application's search service, the system application's editing service, the system application's printing service, etc. The service provides sending friend requests and email sending services.

[0103] Understandably, due to the limited display area of ​​electronic devices, the icon area 222 can display a maximum of 6 application service icons at the same time. However, the electronic device may recommend more than 6 application services to the user based on the specific content contained in the text 212. In this case, the user can also drag the text 212 to the top or bottom of the icon area 222 to make the electronic device update the icons in the icon area.

[0104] Assuming that in user interface 22, none of the six application service icons displayed in icon area 222 correspond to the application services that the user needs to launch, then... Figure 2 As shown in (C), in user interface 23, the user can drag text 212 to the bottom of icon area 222, and the electronic device can respond to the user's operation by updating the icons in icon area 222 (updating by scrolling upwards) and displaying as shown in (C). Figure 2 User interface 24 is shown in (D).

[0105] like Figure 2 As shown in (D), in user interface 24, the icons in icon area 222 have been updated, and it also displays 6 application service icons. The application services corresponding to these 6 application service icons are as follows: The services offered include sending messages to friends, sending emails via email, and creating new events via calendar. The ride-hailing service provided, the navigation service provided by the map and The search service provided. Combined with... Figure 2 As shown in the user interface 22 in (B), the icons for the collection service, search service, editing service, and printing service, which were originally displayed in the icon area 222, are no longer displayed in the icon area 222 due to the update of the icon area 222. However, the icons for the send friend service and send email service have moved upwards due to the update of the icon area 222. The icons for the create schedule service, ride-hailing service, and navigation service have also moved upwards. The application service icon for the provided search service will appear in the application icon area 222. Understandably, the user can continue to place text 212 below the icon area 222 to keep the electronic device updating the application service icon displayed in the icon area 222 until the application service icon for the application service the user needs to launch appears in the icon area 222.

[0106] Here, it is assumed that in the user interface 23, the navigation service corresponding to the application service icon 222a contained in the icon area 222 is the application service that the user needs to launch. Then, as follows... Figure 2As shown in (E), in user interface 25, when a user drags text 212 onto application service icon 222a in icon area 222 and releases it, the electronic device responds to the user's operation by transmitting the text content contained in text 212 to the application service corresponding to the icon and displaying it as shown in (E). Figure 2 User interface 26 is shown in (F).

[0107] like Figure 2 As shown in (F), the user interface 26 is the service interface for the navigation service provided by the application map. It may include a location input box 261. The text information "Nanjing Gulou Hospital" contained in the text 212 dragged by the user has been filled into the location input box 261. The electronic device can automatically search for and plan routes to the location contained in the text information and display the specific navigation route to the location in the user interface 26.

[0108] from Figure 1 As shown in the process, after an electronic device recalls multiple application services through the "Anywhere Door" function, it cannot determine the degree of match between each application service icon and the user's intent. This may result in the application service icon corresponding to the application service that truly matches the current user intent not appearing in the icon area contained in the "Anywhere Door" interface as early as possible. The user needs to keep dragging the content below the icon area so that the electronic device can update the application service icons displayed in the icon area until the application service icon of the application service that the user needs to launch appears in the icon area. This undoubtedly requires the user to spend a lot of time finding the application service icon they need among the multiple application service icons displayed on the interface of the electronic device. The interaction efficiency between the user and the smart device is low, which also seriously affects the user experience.

[0109] To address the shortcomings of the aforementioned methods, this application provides an icon order determination method and related apparatus. Implementing this method, when a user attempts to access the Anywhere Door interface by dragging elements, the electronic device can recall application services through different dimensions (i.e., different recall algorithms). Each dimension and the application services recalled under that dimension are assigned corresponding weights. The electronic device can obtain a total weight reflecting the degree of fit between the application service and the user's current intent based on the weights of each dimension and the weight of each application service under each dimension. Then, based on the total weight of each application service, the recalled application services are sorted to obtain a ranking result. Subsequently, the electronic device can combine this ranking result to determine the display order of the application service icons in the Anywhere Door interface, ensuring that application service icons with a higher degree of fit with the user's current intent are displayed first, making it easier for the user to quickly find the application service icon they need in the Anywhere Door interface.

[0110] First, please refer to the method for determining the icon order provided in this application. Figure 3 .

[0111] Figure 3 A flowchart illustrating a method for determining icon order provided in this application. Figure 3 As shown, this method for determining the icon order can be applied to scenarios where users drag elements to display any door interface on an electronic device. This method may include, but is not limited to:

[0112] S301: The first operation of the user on the target element in the first interface is detected. The electronic device identifies the target element and obtains the user intent corresponding to the target element.

[0113] The aforementioned electronic device may be a mobile phone, tablet computer, wearable device, in-vehicle device, augmented reality (AR) / virtual reality (VR) device, laptop computer, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), etc. This application does not impose any restrictions on the specific type of the electronic device.

[0114] The aforementioned first interface can be any user interface displayed on an electronic device, such as the home screen, the application interface of the "Notes" application, or the application... The application interface can be any other user interface, and this application does not limit it. The target element mentioned above can be any type of element in the first interface, specifically any one of image, text, audio file, video file, and document file, and this application does not limit it.

[0115] The first operation described above can be used to select the target element. Specifically, the first operation can be a long press and drag operation on the target element information to the side of the first interface (i.e., the side of the display screen). Without releasing the finger, the electronic device can move the dragged target element within the first interface, following the user's fingertip.

[0116] As the target element is dragged, the electronic device can determine that the user needs to activate the "Anywhere Door" function and transfer the target element to an application service through the "Anywhere Door" interface. Therefore, the electronic device can analyze the type and specific content of the target element to determine the user's intent corresponding to that target element. For example, if the target element is text and contains location information, the electronic device can infer that the user may need to navigate to that location, search for information about the surrounding area, or book a ticket to that location, among other user intents. As another example, if the target element is text and contains a QR code, the electronic device can determine that the user may need to use... Users may use QR codes to pay, or they may need to use WeChat to scan a QR code to enter a mini-program, or Taobao to scan a QR code to view product information, among other user intentions.

[0117] S302: The electronic device determines the first set of application services corresponding to the aforementioned user intent.

[0118] After determining the user intent corresponding to the target element, the electronic device can identify multiple application services corresponding to the user intent, thus obtaining the aforementioned first set of application services. For example, if the electronic device can infer that the user may need navigation to a certain location, or may need to search for information around a certain location, or may need to book a ticket to that location, then correspondingly, the electronic device can infer that the user may need to activate the navigation service provided by the application map, or other applications. Search services and applications provided The provided services include ticket purchasing and other application services, which constitute the first set of application services mentioned above. For example, if an electronic device can determine that a user might need to use... If a user intends to pay by scanning a QR code, or may need to use WeChat to scan a QR code to access a mini-program, or use Taobao to scan a QR code to view product information, the electronic device can accordingly infer that the user may need to launch an application at this time. Provided QR code scanning services and applications Provided QR code scanning services and applications The provided services include multiple application services such as QR code scanning, which constitute the first set of application services mentioned above.

[0119] Of course, if the target element is of a different type (e.g., an audio file or a video file) or the specific content contained in the target element is different (e.g., the target element contains time information), the user intent determined based on the target element may be different, and thus the number and type of application services contained in the first set of application services determined according to the user intent will also be different. Therefore, this application does not limit the type, number, or application to which the application services contained in the first set of application services belong.

[0120] Optionally, in some embodiments, the user can define one or more application services. Regardless of the type and content of the target element, the electronic device can determine the one or more application services as application services that the user may need to activate. That is, in this case, regardless of the target element, the first set of application services can include the one or more user-defined application services.

[0121] It should be noted that when the electronic device first obtains the first set of application services, it can only determine that the application services in the first set of application services may match the current user's intent. However, at this time, the electronic device cannot determine the strength of the matching degree between each application service and the current user's intent. That is, at this time, the electronic device cannot determine the display order of each application service in the first set of application services in the arbitrary door interface. Therefore, it is necessary to continue to execute the subsequent steps S303-S304.

[0122] S303: The electronic device uses a multi-way recall ranking algorithm to determine a second set of application services and the ranking results of all application services in the second set of application services.

[0123] In this embodiment, the electronic device can recall application services using recall algorithms from different dimensions (i.e., multiple paths). All types of application services recalled through different dimensions constitute all application services in the aforementioned second application service set. Each dimension and the application services recalled under that dimension are assigned corresponding weights. The electronic device can obtain a total weight reflecting the degree of fit between the application service and the user's current intent based on the weights of each dimension and the weight of each application service under each dimension. Then, the recalled application services are sorted based on the total weight of each application service to obtain the aforementioned sorting result.

[0124] Understandably, from the moment an electronic device leaves the factory, every time a user launches any application service through the device, the device collects and stores a corresponding data point. The features contained in each data point can be found in the aforementioned explanation of data collection points, which will not be repeated here. The data points collected and stored by the electronic device can be used to train and update the algorithm model corresponding to the multi-path recall and ranking algorithm. For details, please refer to the subsequent explanations, which will not be elaborated here.

[0125] Specifically, the dimensions relied upon by the multi-path recall and ranking algorithm in the recall phase can include recently popular (application services frequently used by the user in the last three days), recently used (application services used by the user on the current day or in the last 24 hours), application services that the user habitually uses in the current time period (i.e., the time period when the user drags the target element), application services used by the user under the influence of various factors such as user history, interests, and geography, and application services used by the user in certain specific scenarios. These dimensions all reflect, to some extent, the user's usage preferences for application services throughout the entire use of the electronic device, or the user's usage preferences for application services in the time period, current environment, or current scenario when the "Anywhere Door" function is launched. Therefore, after obtaining the aforementioned second set of application services and sorting the application services within it, if some or all of the application services in the aforementioned first set of application services also exist in the aforementioned second set of application services, the electronic device can sort these application services based on the sorting results in the second set of application services and display them in the "Anywhere Door" interface according to the sorting results. Optionally, if the aforementioned first set of application services contains application services that do not exist in the second set of application services, the electronic device can display these application services later in the list.

[0126] Next, combine Figure 4 The process of recalling and ranking application services using the aforementioned multi-way recall and ranking algorithm on electronic devices. For example... Figure 4 As shown, the recall and ranking model 40 is the algorithm model used to implement the aforementioned multi-dimensional recall and ranking of application services. It may include a recall layer 401, a ranking layer 402, and a strategy layer 403.

[0127] The recall layer 401 may include recall algorithm models designed from different dimensions, including the recently popular recall algorithm model 401a, the recently used recall algorithm model 401b, the time-based binning recall algorithm model 401c, the decision tree recall algorithm model 401d, and the contextualized recall algorithm model 401e, wherein:

[0128] The recently popular recall algorithm model 401a employs the algorithm described above, which is used to recall application services that users have used frequently in the past few days (e.g., the last three days). Accordingly, the event tracking data used to train this model can be collected from the last three days. To train the model, the electronic device can obtain event tracking data collected in the last three days and determine the weight of each application service based on the number of times it was launched within those three days. The application service with the higher the number of launches, the greater its weight. When using the recently popular recall algorithm model 401a to recall application services, the electronic device can identify the application services with higher weights as those requiring recall based on the weights of each application service in that dimension. Optionally, the electronic device can select application services ranked by weight from 1 to 20 as those requiring recall in that dimension.

[0129] The algorithm used in the Recently Used Recall Algorithm Model 401b is the recently used recall algorithm described above, which can be used to recall application services recently used by a user within the current day. Correspondingly, the event tracking data used to train this model can be collected on the same day (or within the last 24 hours). After the electronic device obtains the event tracking data collected on the same day, it can use this data to calculate the time interval between the most recent launch time and the current time for each application service. The shorter the time interval between the most recent launch time and the current time, the greater the weight of the application service. Understandably, if an application service has not been launched within the last 24 hours, its corresponding weight can be set to 0. When using the Recently Used Recall Algorithm Model 401b to recall application services, the electronic device can determine the application services with higher weights as those requiring recall based on the weights of each application service in that dimension. Optionally, the electronic device can rank the application services by weight from 1 to 20 and determine them as the application services requiring recall in that dimension.

[0130] The Time-Bottling Recall Algorithm Model 401c employs the same algorithm described above, which can be used to recall application services frequently used by users during the current time period (i.e., the time period when the user drags and drops the target element). Correspondingly, the event tracking data used to train this model can be collected over multiple historical days (at least 3 days). Electronic devices can use this historical event tracking data to count the application services launched by users within the same time period (12:00-12:30) during these days, and to count the total number of launches for each application service during this time period; the application service with the higher the total number of launches, the greater its corresponding weight. When using the Time-Bottling Recall Algorithm Model 401c to recall application services, the electronic device can determine the application services with higher weights as those requiring recall based on the weights of each application service in this dimension. Optionally, the electronic device can select application services ranked by weight from 1 to 20 as the application services requiring recall in this dimension.

[0131] The decision tree recall algorithm model 401d employs the aforementioned decision tree recall algorithm, which can be used to recall application services by combining multiple factors such as user historical behavior, interests, and preferences. Using this algorithm model requires at least 7 days of collected event tracking data to obtain a decision tree (specifically a CART decision tree, where each leaf node in the decision tree corresponds to a weight value) that can objectively reflect the user's historical behavior, interests, and preferences. Therefore, the event tracking data used to train this model can be collected historically for at least 7 days. When using the decision tree recall algorithm model 401d to recall application services, electronic devices can determine the weight of each application service in that dimension (i.e., the weight of the corresponding leaf node in the decision tree, as detailed in the previous section). Figure 1 (The relevant explanations will not be repeated here.) Multiple application services with higher weights are identified as those requiring recall. Optionally, electronic devices can select application services ranked by weight from 1 to 20 as those requiring recall within that dimension.

[0132] The contextualized recall algorithm model 401e employs the aforementioned contextualized recall algorithm, which can be used to recall frequently used application services by users in a given scenario by combining their historical behavior with the context in which that behavior occurred. Specific scenarios involved in the contextualized recall algorithm can include scenarios where electronic devices are connected to other devices via Bluetooth (i.e.,...). Figure 4 (Bluetooth & in-vehicle scenario recall), scenarios where users use a certain application service infrequently but their usage events are relatively regular (i.e.) Figure 4 (Low-frequency scenario recall), scenarios where users are highly likely to use another application after using one application (i.e., Figure 4The recall algorithm (401d) uses a context-based approach, where each context corresponds to at least one application service that a user is highly likely to use in that context. When using the decision tree recall algorithm model 401d to recall application services, the electronic device can compare the current context (i.e., when the user drags the target element) with a specific context. If the comparison is successful, the weight of the application service corresponding to the specific context is increased (e.g., set directly to 1), while the weights of other application services are decreased (e.g., set directly to 0). Similarly, in this dimension, the electronic device can identify multiple application services with higher weights as those requiring recall. Optionally, the electronic device can directly identify the application services corresponding to specific contexts that have successfully matched as those requiring recall. For details, please refer to the explanation; further details are omitted here.

[0133] The sorting layer 402 can be used to calculate the total weight of each application service in the second application service set above, and sort them based on the total weight of each application service to obtain the sorting result mentioned above.

[0134] As explained above, each application service recalled by any recall algorithm model in the recall layer has a corresponding service weight. However, the types of application services recalled by recall algorithms of different dimensions may not be entirely the same, and the degree of correlation between each dimension and the user's intent may also vary. Therefore, to comprehensively determine the matching degree between a certain application service and the user's intent based on multiple dimensions, the electronic device can set different algorithm weights for each recall algorithm model corresponding to each dimension (these weights can be set to a fixed value by the electronic device, or they can be updated as the tracking data is updated, which will be explained later). Therefore, the ranking layer 402 can combine the algorithm weights corresponding to each recall algorithm model it uses with the service weights corresponding to each application service under that recall algorithm model to jointly determine the weight of the application service, and rank the application services according to the total weight of each application service to obtain the ranking result. The application service with the higher the total weight is, the closer it matches the user's intent, and its ranking will be higher.

[0135] It should be noted that since the event tracking data needs to be accumulated gradually during the user's use of the electronic device, and the training of some recall algorithm models in the recall layer 401 has certain requirements for the amount of event tracking data, for example, the time-binding recall algorithm model 401c requires training with at least 3 days of event tracking data, while the decision tree recall model requires training with at least 7 days of event tracking data. Therefore, according to the running time of the electronic device (or according to the amount of event tracking data collected), the entire operation process of the electronic device can be roughly divided into two stages: the cold start stage and the normal stage. The specific division of these two stages can be referred to the previous explanation and will not be repeated here. In different stages, the number and types of recall algorithm models used by the electronic device when recalling application services using multi-path recall algorithms can be different. Among them:

[0136] During the cold start phase, since the electronic device collects very little embedded data, the recall algorithm model used in this phase can include one or more of the following: recently popular recall algorithm model 401a, recently used recall algorithm model 401b, time-based recall algorithm model 401c, and contextualized recall algorithm model 401e. In this phase, the electronic device can set the weight of each of these four recall algorithm models to W. f1 W f2 W f3 W c4 .

[0137] As explained above, the cold start phase can be divided into a first cold start phase and a second cold start phase based on the amount of collected embedded data. Therefore, in an optional implementation, the number and types of recall algorithm models used by the electronic device when recalling application services using a multi-path recall algorithm can be different in the first cold start phase, the second cold start phase, and the normal phase. Specifically:

[0138] In the first cold start phase, because the effectiveness of the time-based bucketing recall algorithm is limited by the small amount of data collected, the recall algorithm models used by electronic devices in this phase can include the recently popular recall algorithm model 401a, the recently used recall algorithm model 401b, and the contextualized recall algorithm model 401e. In this phase, the electronic device can assign a weight of W to each of these four recall algorithm models. c1 W c2 W c3 .

[0139] In the second cold start phase, the amount of data collected by the electronic device increases but remains relatively small, though sufficient for the time-based binning recall algorithm to function effectively. Therefore, the recall algorithm models used by the electronic device in this phase can include the recently popular recall algorithm model 401a, the recently used recall algorithm model 401b, the time-based binning recall algorithm model 401c, and the contextualized recall algorithm model 401e. In this phase, the electronic device can set the weights of these four recall algorithm models to W respectively. c1 W c2 W c3 W c4 (The algorithm weights W corresponding to the most recently used recall algorithm model 401a, the most recently used recall algorithm model 401b, and the time-based recall algorithm model 401c in the second cold start phase) c1 W c2 W c3 The algorithm weight W corresponds to the most recently used recall algorithm model 401a, the most recently used recall algorithm model 401b, and the time-based recall algorithm model 401c in the first cold start phase. c1 W c2 W c3 (They can be different).

[0140] During the normal phase, the electronic device collects sufficient embedded data, which can be considered a new operational phase immediately following the cold start phase. Therefore, the recall algorithm models used by the electronic device in this phase can include the recently popular recall algorithm model 401a, the recently used recall algorithm model 401b, the decision tree recall algorithm model 401d, and the contextualized recall algorithm model 401e. In this phase, the electronic device can set the weights of these four recall algorithm models to W respectively. n1 W n2 W n3 W n4 .

[0141] Understandably, in each of the above stages, the algorithm weight of each recall algorithm model can be a preset value from the electronic device. In this case, W c1 W n1 W can be the same value. c2 W n2 W can be the same value. c4 W n4 The same value can be used. Of course, the electronic device can also continuously update the algorithm weight of each recall algorithm model in each stage as the data collection is carried out. Please refer to the following explanation for details.

[0142] Figure 5This diagram illustrates a scenario where, at different stages, the total weight of an application service is determined by the algorithm weights of various recall algorithm models used by the electronic device and the service weights of each application service under the recall algorithm model. The application services are then sorted according to the total weight of each application service to obtain the sorting result.

[0143] For ease of explanation, it is assumed here that the application services recalled by different recall algorithms in each running stage include the three application services: service1, service2, and service3. Then, as follows... Figure 5 As shown:

[0144] The recently popular recall algorithm corresponds to the aforementioned recently popular recall algorithm model 401a, with a corresponding algorithm weight of W1. This recall algorithm model assigns corresponding service weights to application services based on the number of times users have used each application service in the past few days (e.g., the last three days, or the entire running time if the electronic device's running time is less than three days). Application services with higher total usage in the past few days have higher service weights in the "recently popular" dimension. The model then further recalls three application services, including service1, service2, and service3, based on their service weights in this dimension. In the "recently popular" dimension, the usage counts of service1, service2, and service3 are N1, N2, and N3, respectively, with corresponding service weights of W1 and W2. 11 w 12 w 13 The algorithm weight W1 and the service weight are respectively w 11 w 12 w 13 Different values ​​can be set at different stages of the operation of electronic devices.

[0145] The recently used recall algorithm corresponds to the aforementioned recently used recall algorithm model 401b, with a corresponding algorithm weight of W2. This recall algorithm model assigns corresponding service weights to application services based on the interval between the most recent start time of each application service and the current time. The shorter the interval between the most recent use time and the current time, the higher the service weight under the "recently used" dimension. Similarly, this model can further recall three application services, including service1, service2, and service3, based on their service weights under this dimension. Under the "recently used" dimension, the intervals between the most recent use time and the current time for service1, service2, and service3 are T1, T2, and T3, respectively, with corresponding service weights w2 and w3. 21 w 22 w23 The algorithm weight W2 and the service weight are respectively w 21 w 22 w 23 Different values ​​can be set at different stages of the operation of electronic devices.

[0146] The time-based bucketing recall algorithm corresponds to the aforementioned time-based bucketing recall algorithm model 401c, with a corresponding algorithm weight of W3. This recall algorithm model assigns corresponding service weights to application services based on the number of times each application service is launched within the same time period over several recent days. The more times an application service is launched within the same time period, the higher its service weight under the "time bucketing" dimension. Similarly, this model can further recall three application services, including service1, service2, and service3, based on their service weights under this dimension. Under the "time bucketing" dimension, the number of launches for service1, service2, and service3 within the same time period are N4, N5, and N6, respectively, with corresponding service weights of W3. 31 w 32 w 33 Since electronic devices only use the time-based bucketing recall algorithm during the cold start phase, the algorithm weight W3 corresponds to... Figure 4 W in c3 Of course, since the cold start phase will last for several days, the algorithm weight W3 and the service weight w will be adjusted accordingly. 31 w 32 w 33 During the cold start phase of electronic devices, different values ​​can be set as the embedded data is updated.

[0147] The decision tree recall algorithm corresponds to the aforementioned decision tree recall algorithm model 401d, with a corresponding algorithm weight of W4. This recall algorithm model can assign corresponding service weights to application services based on a CART decision tree trained using long-term event tracking data. The service weight of an application service in the "decision tree" dimension depends on the depth of the decision tree and the decision rules. In the "decision tree" dimension, the service weights corresponding to Service1, Service2, and Service3 are w4, w5, w6, w7, w8, w9 ... 41 w 42 w 43 Since electronic devices only use decision tree recall during normal operation, the algorithm weight W4 corresponds to... Figure 4 W in n3 Similarly, the algorithm weight W4 and the service weight w 41 w 42 w 43During the cold start phase of electronic devices, different values ​​can be set as the embedded data is updated.

[0148] The contextualized recall algorithm corresponds to the aforementioned contextualized recall algorithm model 401e, with a corresponding algorithm weight of W5. This recall algorithm model assigns corresponding service weights to application services based on whether the user application service is used regularly or frequently in specific scenarios. Under the "contextualized" dimension, the service weights corresponding to Service1, Service2, and Service3 are w5, w6, w7, w8, w9 ... 51 w 52 w 53 The algorithm weight W5 and the service weight are respectively w 51 w 52 w 53 Different values ​​can be set at different stages of the operation of electronic devices.

[0149] If the electronic device is in the first cold start phase, and the recall algorithms used include the most recently used recall algorithm, the most recently used recall algorithm, and the contextualized recall algorithm, then after using these three recall algorithms to recall the application service in the first start phase, the total weight W of Service1 will be... ft1 =W1×w 11 +W2×w 21 +W5×w 51 The total weight W of Service2 ft2 =W1×w 12 +W2×w 22 +W5×w 52 The total weight W of Service3 ft3 =W1×w 13 +W2×w 23 +W5×w 53 Then the electronic device can use W... ft1 W ft2 W ft3 The order of application services Service1, Service2, and Service3 recalled in the first startup phase is determined by their size.

[0150] If the electronic device is in the second cold start phase, and the recall algorithms used include the most recently used recall algorithm, the most recently used recall algorithm, the time-based bucketing algorithm, and the contextualized recall algorithm, then after using these four recall algorithms to recall the application service during the cold start phase, the total weight W of Service1 will be... ct1 =W1×w 11 +W2×w 21 +W3×w 31 +W5×w 51 The total weight W of Service2ct2 =W1×w 12 +W2×w 22 +W3×w 32 +W5×w 52 The total weight W of Service3 ct3 =W1×w 13 +W2×w 23 +W3×w 33 +W5×w 53 Then the electronic device can use W... ct1 W ct2 W ct3 The size relationship is used to sort the application services Service1, Service2, and Service3 recalled in the second startup phase.

[0151] If the electronic device is in a normal phase, and the recall algorithms used include the most recently used recall algorithm, the most recently used recall algorithm, the decision tree algorithm, and the contextualized recall algorithm, then after using these four recall algorithms to recall the application service during the cold start phase, the total weight W of Service1 will be... nt1 =W1×w 11 +W2×w 21 +W4×w 41 +W5×w 51 The total weight W of Service2 nt2 =W1×w 12 +W2×w 22 +W4×w 42 +W5×w 52 The total weight W of Service3 nt3 =W1×w 13 +W2×w 23 +W4×w 43 +W5×w 53 Then the electronic device can use W... nt1 W nt2 W nt3 The size order is used to sort the application services Service1, Service2, and Service3 during the normal phase of recall.

[0152] Of course, the types and number of application services recalled can also differ under different dimensions. For example, in the first cold start phase, the application services recalled by the electronic device using the most recently popular recall algorithm and the application services recalled by the most recently used recall algorithm both include application service Service4. Figure 5 (Not shown in the image), Service4's service weights in the "Recently Popular" and "Recently Used" dimensions are w respectively. 14 and w 24However, the application services recalled by the contextualized recall algorithm do not include Service4. Therefore, when calculating the total weight of Service4, we can assume that its service weight in the "contextualized" dimension is 0. Thus, the total weight W of Service4 is... ft4 It can be calculated as W ft4 =W1×w 14 +W2×w 24 +W5×0, that is, W ft4 =W1×w 14 +W2×w 24 .

[0153] Understandably, for application services that require multiple recalls at any stage of an electronic device's operation, the electronic device can adopt... Figure 5 The calculation method shown yields the total weight of each application service recalled by the second application service set, and the application services in the second application service set are sorted based on the total weight of each application service, resulting in the sorting result described above. It can be understood that the total weight of each application service recalled by the second application service set can characterize the degree of matching between that application service and the current user's intent; the higher the total weight, the more likely the application service is the one the user wants to launch after dragging and dropping the aforementioned target element.

[0154] The strategy layer 403 may contain several strategy modules, such as a filtering strategy module 403a, a candidate strategy module 403b, an operation strategy module 403c, and a negative feedback strategy module 403d. In some cases, these strategy modules can be used to perform secondary processing on the number of application services and the ranking results in the second application service combination output by the ranking layer 402. Specifically:

[0155] The filtering strategy module 403a can be used to filter (delete) invalid application services contained in the second application service set. It should be understood that in this embodiment, the recall layer recalls application services based on historically collected event tracking data. Before the current user drags the target element to trigger this recall, the user may have uninstalled an application, or an application may have become unusable due to an update. However, the recall phase may still recall that application service, even though it is now unusable and no longer needs to exist in the second application service set. Therefore, the electronic device can use the filtering strategy module 403a to remove this application service from the second application service set.

[0156] The candidate strategy module 403b can be used to randomly supplement the second application service set with additional application services when the number of application services in the second application service set is insufficient. For example, during the cold start phase, due to limited data tracking, most application services have a usage rate of 0, so the number of application services recalled by the electronic device may also be relatively small. In this case, the electronic device can use the candidate strategy module 403b to randomly supplement the second application service set with additional application services. Optionally, the supplemented application services can be ranked after the existing application services.

[0157] The operation strategy module 403c can set the order of one or more application services within the second set of application services. For example, if a user defines a specific application service that should be permanently displayed on the "Any Door" interface, the electronic device can use the operation strategy module 403c to set that application service as the first application service in the second set of application services. Alternatively, assuming a user sets a specific application service to be permanently displayed on the "Any Door" interface during holidays, when the user drags the target element on a holiday, the electronic device can use the operation strategy module 403c to set that application service as the first application service in the second set of application services.

[0158] The negative feedback strategy module 403d can handle application services whose ranking results do not match the actual user experience. For example, if an application service exists in the historical recall list and is consistently ranked high (i.e., it always has a higher overall weight among all recalled applications), but the user never actually selects it as the application service to launch in the interface, and if this application service still exists in the current recall list and is ranked high in the second set of applications, the electronic device can use the negative feedback strategy module 403d to lower the overall weight of this application service, thus relegating it to a lower ranking.

[0159] The final sorting result output by the strategy layer 403 will be further transmitted to the arbitrary door function module 41 so that the electronic device can determine the display order of the application services in the first application service set in the arbitrary door interface based on the sorting result.

[0160] S304: The electronic device determines the display order of the application service icons of each application service in the first application service set in the AnyDoor interface based on the above sorting results.

[0161] It is understandable that the application services included in the second application service set are different from those in the first application service set. Furthermore, the subsequent sorting of the application services in the first application service set depends on the sorting results of the application services in the second application service set. Therefore, when the electronic device uses a multi-path recall algorithm to recall application services, the electronic device can recall a sufficient number of application services in each dimension so that the second application service set can contain as many application services as possible from the first application service set.

[0162] In one possible scenario, the second set of application services completely includes all application services in the first set of application services, meaning the first set of application services is a subset of the second set of application services. In this case, the electronic device can obtain the sorting order of the application services in the first set of application services within the second set of application services, and determine this sorting order as the display order of the application service icons of each application service in the first set on the AnyDoor interface.

[0163] In one possible scenario, the second application service set may include all the application services in the first application service set (hereinafter referred to as the third application set). In this case, the electronic device can obtain the sorting order of each application service in the third application service set within the second application service set, and determine this sorting order as the display order of the application service icons in the third application service set on the arbitrary door interface. Other application services in the first application service set may be randomly displayed after the application services in the third application service set.

[0164] Understandably, for the multi-path recall prediction algorithm provided in this application, when recalling services, the electronic device can set the number of application services to be recalled from all available application services. The larger this number, the better the coverage of the first application service set in the second application service set will be (i.e., the first application service set is more likely to be a subset of the second application service set), and the ranking of application services in the first application service set may better match the user's intent. However, this also places greater demands on the performance of the electronic device. Furthermore, since the electronic device collects new event data each time the user launches an application service, it can update the aforementioned recall ranking algorithm model each time event data is collected to maximize the performance of the recall ranking algorithm model. However, a faster update frequency places greater demands on the performance of the electronic device. Therefore, the electronic device can comprehensively consider the performance and power consumption requirements when setting the number of application services to be recalled and the update frequency of the recall ranking model (e.g., updating once every hour, or updating once every X newly collected event data). This application addresses the number of application services to be recalled and the update frequency of the recall ranking model.

[0165] By implementing this method, the application service icons corresponding to the multiple application services recalled by the arbitrary gate (i.e., the application services in the first set of application services) can be displayed in the interface in an orderly manner according to the degree of matching between each application service and the user's current intent. The application service icon corresponding to the application service with a higher degree of matching with the user's intent is displayed at the top, so that the application service that truly matches the user's current intent can be found by the user as quickly as possible, so that the user can transfer the dragged elements to the application service that needs to be launched more quickly.

[0166] In this embodiment of the application, the recall algorithm corresponding to the recently popular recall algorithm model 401a can be referred to as the "first recall algorithm", the recall algorithm corresponding to the recently used recall algorithm model 401b can be referred to as the "second recall algorithm", the recall algorithm corresponding to the time-binding recall algorithm model 401c can be referred to as the "fourth recall algorithm", the recall algorithm corresponding to the decision tree recall algorithm model 401d can be referred to as the "fifth recall algorithm", and the recall algorithm corresponding to the contextualized recall algorithm model 401e can be referred to as the "third recall algorithm".

[0167] Figure 6 The illustration shows a scenario in which an electronic device displays an arbitrary door interface based on the icon display method provided in this application.

[0168] like Figure 6As shown, user interface 61 can be the application interface of the "Notes" application on the electronic device, or it can be the application interface of other applications; this application does not limit this. User interface 61 can include text 611, indicating that text 611 has been selected by the user. The electronic device can generate text 612 in the interface in response to the user's long-press and drag operation on text 611. The electronic device can also respond to the user's drag operation on the right side of text 612, analyze the information contained in text 612 to obtain the user intent corresponding to text 612, and obtain the 8 application services recommended by the AnyDoor function module based on the user intent, namely application services 601-608 contained in the application service set 613. Application service set 613 corresponds to the "first application service set" in the aforementioned description.

[0169] To determine the display order of the application service icons corresponding to each application service in the application service set 613 on the AnyDoor interface, the electronic device will first recall the application services of the electronic device using the multi-way recall and sorting algorithm described above. Here, it is assumed that the application icons corresponding to the application services currently available to the electronic device are application services 601-700 shown in the application service set 614 (a total of 100 application service icons, including application services 601-608). The electronic device can recall a certain number of application services from the above 100 application services based on multiple recall algorithms under different dimensions. The specific recall algorithms under different dimensions can be determined according to the current operating stage of the electronic device (i.e., whether the electronic device is in the first cold start stage, the second cold start stage, or the normal stage). The types and quantities of application services recalled by the recall algorithms under different dimensions can be different.

[0170] Figure 6 The application service set 615 shown includes application services 601-610, which are the 10 application services recalled by the electronic device from the aforementioned 100 application services based on multiple recall algorithms under different dimensions. It can be understood that the 10 application services corresponding to application services 601-610 correspond to the "second application service set" mentioned above, but the electronic device has not yet sorted these 10 application services according to their total weight. Therefore, the electronic device will next combine the algorithm weights of the recall algorithms for each dimension and the service weights corresponding to each application service recalled under each dimension to determine the total weight of each application service in application service set 615, and sort the application services according to their total weights to obtain the sorting results of each application service in application service set 615.

[0171] The sorting results of the application services in application service set 615 can be referenced from the display order of all application services in application service set 616. Understandably, the 10 application services corresponding to all icons in application service set 616 also correspond to the "second application service set" mentioned above. As shown in application service set 616, the order obtained by the electronic device after sorting application services 601-610 based on the total weight of the application services is as follows: application service 608, application service 604, application service 601, application service 610, application service 605, application service 603, application service 607, application service 609, application service 602, and application service 606. Moreover, according to the electronic device's speculation, the degree of matching between these 10 application services and the user's intent changes from strong to weak.

[0172] After obtaining the sorted application service set 616, the electronic device can obtain the intersection of application service sets 613 and 615, that is, obtain the application service set that exists in both sets, namely application service set 617. Here, it is assumed that application service set 613 is a subset of application service set 615, then the application services contained in application service set 617 are the aforementioned application services 601-608. In order to display the icons of application services 601-608 in the Any Door interface in descending order of their matching degree with the user's intent, the electronic device can determine the sorting order of application services 601-608 contained in application service set 617 based on the sorting order of application services 601-608 in application service set 616. The sorting order is as follows: application service 608, application service 604, application service 601, application service 610, application service 605, application service 603, application service 607, application service 609, application service 602, and application service 606.

[0173] After the electronic device responds to the user's action of dragging text 612 to the right side and displays the Any Door interface, the electronic device can then display the icons of application services 601-608 in the Any Door interface in descending order of their sorting order within the application service set 617. For details, please refer to... Figure 6 The user interface 62 shown is shown.

[0174] The user interface 62 includes a sub-interface 621 and an icon area 622. The application service icons displayed in the icon area 622 are, in order: application service icon 08, application service icon 04, application service icon 01, application service icon 10, application service icon 05, application service icon 03, application service icon 07, application service icon 09, application service icon 02, and application service icon 06. Their corresponding application services are, in order: application service 608, application service 604, application service 601, application service 610, application service 605, application service 603, application service 607, application service 609, application service 602, and application service 606. In other words, the display order of the application service icons in the icon area 622 is the same as the arrangement order of their corresponding 8 application services in the application service set 617.

[0175] It should be noted that, due to the limited display area of ​​electronic devices, the icon area 622 can display a maximum of 6 application service icons at the same time. Users can also drag the text 612 to the top or bottom of the icon area 622 to display application service icon 02 and application service icon 06 on the screen of the electronic device.

[0176] In this embodiment of the application, user interface 61 can be referred to as "first interface", user interface 62 can be referred to as "second interface", text 612 can be referred to as "target element", application service icons 601-606 can be referred to as "multiple first application service icons", and application service icons corresponding to application services included in the first application service set that do not exist in the second application service set can be referred to as "multiple second application service icons".

[0177] Next, combine Figure 7 This section describes the process by which electronic devices can update the algorithm weights of the recall algorithm as data from embedded data points are collected.

[0178] First, it's important to clarify that regardless of the operational stage of an electronic device, the predictive ability of recall algorithms based on different dimensions varies. For multi-path recall prediction algorithms, if a recall algorithm based on a certain dimension outperforms other recall algorithms in predicting user intent, its corresponding algorithm weight should also be higher than the weights of other recall algorithm models. Furthermore, it's crucial to understand that the predictive ability of recall algorithms for user intent also changes as the event tracking data is updated.

[0179] Therefore, in this application, in order to verify the predictive ability of a recall algorithm for user intent, the electronic device can divide the historically collected data points into test data and verification data. The electronic device can train the model of the recall algorithm by combining the test data, and reflect the strength of the recall algorithm model's predictive ability for user intent by whether the application service launched in the verification data ranks high enough in the set of application services recalled by the recall algorithm model (or whether the service weight of the launched application service is large enough).

[0180] Specifically, such as Figure 7 As shown, assuming the electronic device is currently running on day t, regardless of its current stage, for any recall algorithm model in the aforementioned recall layer 401, the electronic device can use the data collected within days (tn) to (t-2) as test data and the data collected within days (t-1) as validation data. Specifically, n ≥ 2, and the value of n can be determined by the dimension of the recall algorithm model. For example, if the recall algorithm model is a decision tree recall algorithm model, the value of n can be 90; if the recall algorithm model is a recent popularity recall algorithm model, the value of n can be 3.

[0181] Suppose an electronic device wants to test the ability of a recall algorithm to predict user intent in a certain dimension. The device can train the recall algorithm model in that dimension using event tracking data collected within days (tn) to (t-2). For example, if the electronic device needs to test the ability of a decision tree recall algorithm to predict user intent, it can use event tracking data collected within days (t-90) to (t-2) to obtain the decision tree used by the decision tree model. Or, if the electronic device needs to test the ability of a recently popular recall algorithm to predict user intent, it can use event tracking data collected within days (t-3) to (t-2) to determine the number of launches and corresponding weights for each project within that period.

[0182] Understandably, within (t-1) days, each time a user uses the "Anywhere Door" function, the electronic device collects a data point. This data point records the specific application service opened by the user using the "Anywhere Door" function. Since only the launched application service corresponds to the true user intent, after recalling a series of application services using a certain recall algorithm model, if the launched application service ranks relatively high (e.g., in the top 6) among the recalled application services, it indicates that the recall algorithm model has predicted the user intent well.

[0183] Therefore, in this embodiment, a recall algorithm model 701 trained on training data is used by the electronic device to retrieve the data under a certain dimension. For each piece of embedded data in the test data, the electronic device can first determine the application service actually launched by the user as recorded in the embedded data, and then use the recall algorithm model 701 to recall the application service, thus obtaining a set of recalled application services. In this set of application services, each application service has a corresponding service weight when it is recalled. The electronic device can then determine whether the weight of the application service actually launched by the user ranks in the top M positions among all application services. If so, it means that the recall algorithm model 701 has successfully predicted a user intent. Optionally, the value of M can be 6 or other values, which are not limited in this application.

[0184] For example, Figure 7 User interface 71 can be the "Any Door" interface displayed by the electronic device through the "Any Door" function on day (t-1). During this use of the "Any Door" function, the application service actually launched by the user is application service 711 corresponding to application service icon 71a. The application service set 72 consists of multiple application services recalled by the recall algorithm model 701, among which application services 721, 722, 723, 724, 725, and 726 are the six application services in the application service set 72 with service weights ranked from 1 to 6. If application service 711 is included in application services 721-726, it means that the recall algorithm model 701 has successfully predicted a user intent; otherwise, it means that the recall algorithm model 701 has failed to predict the user intent.

[0185] Using the above method, electronic devices can determine the number of times a recall algorithm model successfully predicts user intent in each dimension. The algorithm weight of the recall algorithm model with the highest number of successful user intent predictions can be set higher. Optionally, it is assumed that the multi-way recall ranking algorithm uses i recall algorithm models (all of which are the retrieval algorithm models in the aforementioned recall layer 401), where the number of times each recall algorithm model successfully predicts user intent is k1, k2, ... k. i Then the weight W of the j-th recall algorithm model j =k j / (k1+k2+…k i ), where k j ∈{k1, k2, ... k i}, k jThis represents the number of times the j-th recall algorithm model successfully predicts the user's intent. On day t, when an electronic device uses the multi-path recall ranking algorithm to recall application services, the device can set the weights of each recall algorithm model in the multi-path recall ranking algorithm according to the calculated algorithm weights. It should be noted that when the electronic device uses the multi-path recall ranking algorithm to recall application services on day t, the data points it relies on still include the data points collected on day t.

[0186] In the embodiments of this application, day (tn)-(t-2) can be referred to as the "first runtime segment", day (t-1) can be referred to as the "second runtime segment", and the application service set 72 can be referred to as the "test application service set".

[0187] Figure 8 A software architecture diagram of the electronic device provided in this application is shown.

[0188] like Figure 8 As shown, the software architecture of the electronic device may include an activity manager 801, a perception module 802, a computing engine 803, and an arbitrary door function module 804. When a user launches an application service through the arbitrary door function, the activity manager 801 can detect the event of the user launching the application service and send the relevant event information to the perception module 802. The perception module 802 can collect event tracking data when the user launches the application service and cache some snapshot information related to the application service launch, such as recently used application services, and send the event tracking data and snapshot information to the computing engine 803. The application service prediction capability module 803b can train a recall and ranking model based on the features contained in the event tracking data, and use the recall and ranking model to recall and rank application services to obtain the ranking results of the application services. The application service prediction interface 803a can send the ranking results of the application services to the arbitrary door function module 804 for the arbitrary door function module 804 to refer to determine the display position of its recommended application services in the arbitrary door interface.

[0189] The electronic device provided in this application will now be described.

[0190] The electronic device can be a mobile phone, tablet computer, wearable device, in-vehicle device, augmented reality (AR) / virtual reality (VR) device, laptop computer, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), or dedicated camera (such as SLR camera, point-and-shoot camera), etc. This application does not impose any limitation on the specific type of the electronic device. Specifically, the electronic device can be one of the electronic devices shown in the aforementioned icon display method.

[0191] Figure 9 The structure of the electronic device is shown as an example.

[0192] like Figure 9 As shown, the electronic device 100 may include a processor 110, internal memory 151, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, a sensor module 180, buttons 190, a display screen 194, etc. The sensor module 180 may include a pressure sensor 180A, a touch sensor 180K, etc.

[0193] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0194] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.

[0195] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.

[0196] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0197] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0198] It is understood that the interface connection relationships between the modules illustrated in the embodiments of the present invention are merely illustrative and do not constitute a structural limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.

[0199] The charging management module 140 receives charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 receives charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 receives wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also supply power to the electronic device via the power management module 141.

[0200] The power management module 141 connects the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, supplying power to the processor 110, internal memory 151, display screen 194, etc. The power management module 141 can also monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage current, impedance). In some other embodiments, the power management module 141 may also be located within the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be housed in the same device.

[0201] Electronic device 100 implements display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.

[0202] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, electronic device 100 may include one or N displays 194, where N is a positive integer greater than 1.

[0203] Internal memory 151 can be used to store computer executable program code, which includes instructions. Internal memory 151 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of electronic device 100 (such as audio data, phonebook, etc.). Furthermore, internal memory 151 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. Processor 110 executes various functional applications and data processing of electronic device 100 by running instructions stored in internal memory 151 and / or instructions stored in memory located in the processor.

[0204] Pressure sensor 180A is used to sense pressure signals and convert them into electrical signals. In some embodiments, pressure sensor 180A can be disposed on display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors. A capacitive pressure sensor may include at least two parallel plates with conductive material. When force is applied to pressure sensor 180A, the capacitance between the electrodes changes. Electronic device 100 determines the pressure intensity based on the change in capacitance. When a touch operation is applied to display screen 194, electronic device 100 detects the intensity of the touch operation based on pressure sensor 180A. Electronic device 100 can also calculate the touch position based on the detection signal from pressure sensor 180A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation commands. For example, when a touch operation with an intensity less than a first pressure threshold is applied to the SMS application icon, a command to view an SMS is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to the SMS application icon, a command to create a new SMS is executed.

[0205] Touch sensor 180K, also known as a "touch device," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touchscreen." Touch sensor 180K detects touch operations applied to or near it. The touch sensor can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K may also be located on the surface of electronic device 100, in a different position than display screen 194.

[0206] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch-sensitive buttons. Electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of electronic device 100.

[0207] In this application, the GPU in the electronic device can perform three-dimensional transformation on the content displayed on the display screen 194 after the user drags the information element in the interface, creating a visual effect of the original interface pushing inward on the screen, and displaying recommended application and / or service icons on the side of the screen of the electronic device.

[0208] In this embodiment, the processor 110 is configured to: in response to a user's first operation on a target element in a first interface, obtain a first set of application services, the first set of application services including multiple application services recommended based on the user's intent regarding the target element; obtain a second set of application services and a sorting result of the application services in the second set of application services, the sorting result being determined by the historical startup records of each application service in the second set of application services; and display a second interface, the second interface including multiple first application service icons and the target element, the multiple application services corresponding to the multiple first application service icons being included in both the first set of application services and the second set of application services, the display order of the multiple first application service icons in the second interface being determined based on the sorting result of all application services in the second set of application services.

[0209] Furthermore, in this embodiment, when a user drags up an information element in the interface, the processor 110 can identify the information element, including identifying the type of the information element and the specific content in the information element, and determine the corresponding application service icon based on the identification result, and generate the corresponding program instruction. The program instruction can be used to change the display information of the display screen 194, for example, updating the interface in the display screen to the Any Door interface, and the icon displayed in the Any Door interface is the application service icon determined by the processor 110 based on the identification result.

[0210] This application also provides an electronic device, which includes one or more processors and a memory; wherein the memory is coupled to the one or more processors, and the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the electronic device to perform the methods shown in the foregoing embodiments.

[0211] As used in the above embodiments, depending on the context, the term "when..." can be interpreted as meaning "if...", "after...", "in response to determining...", or "in response to detecting...". Similarly, depending on the context, the phrase "when determining..." or "if (the stated condition or event) is interpreted as meaning "if determining...", "in response to determining...", "when (the stated condition or event) is detected", or "in response to detecting (the stated condition or event)".

[0212] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive), etc.

[0213] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A method for determining an order of icons, characterized by, The application comprises: In response to a first operation of a user on a target element in a first interface, a first application service set is obtained, the first application service set comprising a plurality of application services recommended according to the user's intention of the user on the target element; A second application service set and a ranking result of the application services in the second application service set are obtained, the ranking result being determined by historical launch records of each application service in the second application service set; A second interface is displayed, the second interface comprising a plurality of first application service icons and the target element, the plurality of first application service icons corresponding to a plurality of application services included in the first application service set and included in the second application service set, and the display order of the plurality of first application service icons in the second interface being determined according to the ranking result of all application services in the second application service set.

2. The method of claim 1, wherein, Any one of the plurality of first application service icons is used to transmit the target element to the application service corresponding to the any one of the plurality of first application service icons.

3. The method of claim 1, wherein, The ranking result is determined according to the matching degree of the plurality of application services in the second application service set and the user's use preference.

4. The method according to any one of claims 1 to 3, characterized in that, The application services in the second application service set are obtained by a plurality of recall algorithms, any two of the plurality of recall algorithms using different recall dimensions, any one of the plurality of recall algorithms corresponding to an algorithm weight, the algorithm weight of the any one of the plurality of recall algorithms representing the prediction ability of the any one of the plurality of recall algorithms for the user's intention, any one of the application services recalled by any one of the plurality of recall algorithms corresponding to a service weight, the service weight representing the matching degree of the application service and the user's use preference under the recall dimension used by the any one of the plurality of recall algorithms; and the ranking result of the application services in the second application service set being determined according to the service weights of each application service in the second application service set under the recall dimensions used by each recall algorithm in the plurality of recall algorithms and the algorithm weights of each recall algorithm in the plurality of recall algorithms.

5. The method of claim 4, wherein, The application services in the second application service set are obtained by one or more of a first recall algorithm, a second recall algorithm, a third recall algorithm, and a fourth recall algorithm, the recall dimension used by the first recall algorithm being an application service whose launch frequency in the last plurality of days is greater than a frequency threshold or whose launch frequency ranks in the top k, the recall dimension used by the second recall algorithm being an application service launched in the last plurality of hours, the recall dimension used by the third recall algorithm being an application service launched in the same scenario as the current scenario, and the recall dimension used by the fourth recall algorithm being an application service launched in the same time period as the current time period in the last plurality of days, the k being an integer greater than 1.

6. The method of claim 4, wherein, The application services in the second application service set are recalled by one or more of a first recall algorithm, a second recall algorithm, a third recall algorithm, and a fifth recall algorithm. The first recall algorithm uses a recall dimension of application services that have been started more than a threshold number of times or that are in a top k number of start times in a recent number of days. The second recall algorithm uses a recall dimension of application services that have been started in a recent number of hours. The third recall algorithm uses a recall dimension of application services that have been started by the user in a same scenario as a current scenario. The fifth recall algorithm uses a recall dimension of application services that have been used by the user using a decision tree trained using a number N of days of collected data, where N is greater than a threshold number of days, and k is an integer greater than 1.

7. The method according to any one of claims 4-6, characterized in that, The plurality of recall algorithms includes a first recall algorithm, and an algorithm weight of the first recall algorithm is determined based on a number of times that application services that are started in a first runtime period are ranked in a top M number of application services in a test application service set. The test application service set is application services that are recalled based on collected data in a second runtime period using a recall dimension used by the first recall algorithm. A ranking of the application services in the test service set is determined based on historical start records of the application services in the second runtime period, which is before the first runtime period.

8. The method according to any one of claims 1 to 7, characterized in that, The second interface further includes a plurality of second application service icons, and the plurality of application services corresponding to the plurality of second application service icons are included in the first application service set and not included in the second application service set. The plurality of second application service icons are displayed after the plurality of first application service icons in the second interface.

9. An electronic device, comprising: The electronic device includes one or more processors, a memory, and a display screen. The memory is coupled to the one or more processors, and the memory is configured to store computer program code including computer instructions. The one or more processors invoke the computer instructions to cause the electronic device to perform the method of any one of claims 1-8.

10. A chip system, characterized by The chip system is applied to an electronic device, and the chip system includes one or more processors configured to invoke computer instructions to cause the electronic device to perform the method of any one of claims 1-8.

11. A computer-readable storage medium comprising instructions, wherein: The instructions, when executed on an electronic device, cause the electronic device to perform the method of any one of claims 1-8.