Application determination method, electronic device, chip system, and readable storage medium
By editing filtering and decorating rules through a visual interface and generating executable programs, the problem of low efficiency and high threshold for rule editing in existing technologies is solved, and the flexibility and efficiency of rule management are realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HONOR DEVICE CO LTD
- Filing Date
- 2024-07-23
- Publication Date
- 2026-07-10
AI Technical Summary
In existing technologies, adding and modifying filtering rules and decorating rules on servers is inefficient, has a high barrier to entry, and is difficult for non-developers to manage and maintain, resulting in insufficient flexibility and scalability.
This invention provides an application determination method that allows users to edit filtering and decoration rules through a visual interface to generate executable programs. This lowers the editing threshold, allows operations personnel to participate in the addition, modification, and maintenance of rules, and supports multiple execution modes to improve efficiency.
It enhances the flexibility and scalability of filtering and decoration rules, reduces editing costs and barriers, and improves the efficiency and maintainability of rule management.
Smart Images

Figure CN120743402B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, specifically to an application program determination method, an electronic device, a chip system, and a readable storage medium. Background Technology
[0002] With the widespread use of electronic devices such as mobile phones and tablets, there are more and more applications available for these devices. Typically, electronic devices offer application markets, which provide users with information about various applications through their interfaces, making it convenient for users to access these applications.
[0003] Currently, when an electronic device displays the relevant interface of an application from the app store, it can send an application distribution request to the server. After receiving the request, the server filters the applications to be distributed using filtering rules. The application package name obtained after filtering is decorated using decoration rules. Then, the application-related information obtained after decoration is sent to the electronic device so that the electronic device can display the relevant interface of the app store application based on the application-related information.
[0004] However, in the above implementation, after the filtering rules and decoration rules are pre-stored on the server, their addition and modification can only be done by developers executing relevant code operations, which is inefficient and has a high threshold. Summary of the Invention
[0005] This application provides an application determination method, electronic device, chip system, and readable storage medium that can raise the threshold and efficiency of adding, modifying, and maintaining filtering rules and decoration rules as much as possible.
[0006] In a first aspect, this application provides an application determination method, the method comprising:
[0007] Display a first interface, which includes a first area for editing a first rule. The first rule is used to filter the identifiers of N applications to obtain the identifiers of M applications. In response to a first operation on the first area, generate a first executable program related to the first rule. The first operation is a text editing operation related to the first rule. The first executable program is executed by a first electronic device to filter the identifiers of N applications to obtain the identifiers of M applications.
[0008] The first rule is the filtering rule.
[0009] In the above method, the first interface includes a first area for editing filtering rules. Text editing operations related to the first rule can be performed in the first area. Thus, a first executable program can be generated based on the text-based first rule in the first area. In this way, the first rule can be edited in text form in a visual way instead of in code form, which improves the flexibility of rule editing. It is not limited to developers editing the first rule. Other personnel, such as operations personnel, can also edit the first rule, which lowers the threshold and cost of editing the first rule, improves the scalability and maintainability of the first rule, and also improves the efficiency of editing the first rule.
[0010] In conjunction with the first aspect, in some implementations of the first aspect, the first interface also includes multiple first elements related to the first rule, and the first operation is to add multiple first elements to the first area to form the first rule in text form.
[0011] The first operation can be a drag operation; by dragging multiple first elements related to the first rule to the first area, a first rule in text form can be formed.
[0012] In the above method, the first interface displays multiple first elements related to the first rule. Therefore, multiple first elements can be directly selected and added to the first area to form a text-based first rule in the first area.
[0013] In conjunction with the first aspect, in some implementations of the first aspect, the first interface further includes a second area, the second area being used to edit a second rule, the second rule being used to associate the identifiers of M applications with first information, the first information being used to describe the M applications, and in response to a first operation on the first area, generating a first executable program associated with the first rule, including:
[0014] In response to a first operation on a first region, a first executable program associated with a first rule is generated; and in response to a second operation on a second region, a second executable program associated with a second rule is generated. The second operation is a text editing operation associated with a second rule. The second executable program is used to associate the identifiers of N applications with first information to obtain information about M applications.
[0015] The second rule is the decoration rule.
[0016] In the above method, the first interface also includes a second area for editing filtering rules. Text editing operations related to the second rule can be performed in the second area. Thus, a second executable program can be generated based on the text-based second rule in the second area. In this way, the first and second rules can be edited in a visual manner in text form, instead of in code form, which improves the flexibility of rule editing. It is not limited to only developers editing the first and second rules. Other personnel, such as operations personnel, can also edit the first and second rules, which lowers the threshold and cost of editing the first and second rules, improves the scalability and maintainability of the first and second rules, and also improves the efficiency of editing the first and second rules.
[0017] In conjunction with the first aspect, in some implementations of the first aspect, the first interface also includes multiple second elements related to the second rule, and the second operation is to add the multiple second elements to the second area to form a second rule in text form.
[0018] The second operation can be a drag operation; by dragging multiple second elements related to the second rule to the second area, a second rule in text form can be formed.
[0019] In the above method, if the first interface displays multiple second elements related to the second rule, then multiple second elements can be directly selected and added to the second area to form a second rule in text form in the second area.
[0020] In conjunction with the first aspect, in certain implementations of the first aspect, after generating a first executable program related to the first rule in response to a first operation on the first region, and generating a second executable program related to the second rule in response to a second operation on the second region, the method further includes:
[0021] Upon receiving the second information sent by the second electronic device, the identifiers of N applications undergo a first processing and a second processing to obtain M application information. The second information includes the interface identifier of the second interface. The N applications are applications in the first electronic device related to the second interface. The first processing involves running a first executable program to filter the identifiers of the N applications, and the second processing involves running a second executable program to associate the identifiers of the filtered M applications with the first information. The M application information is then sent to the second electronic device so that the second electronic device displays the second interface based on the M application information.
[0022] In the above method, after obtaining M application information through the first and second processing, the M application information can be sent to the second electronic device, so that the second electronic device can display the interface according to the M application information.
[0023] The second information is sent by the application market application in the second electronic device. After receiving M application information, the first electronic device sends M application information to the application market application in the second electronic device.
[0024] In addition, if there is no second rule and the second rule is not edited, when the first electronic device receives the second information sent by the second electronic device, it performs a first processing on the identifiers of N applications to obtain the identifiers of M applications, and sends the identifiers of M applications to the second electronic device so that the second electronic device displays the second interface according to the identifiers of M applications.
[0025] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes:
[0026] The process of performing first and second processing on the identifiers of N applications to obtain information on M applications is recorded to obtain a first file. Based on the first file, it is determined whether to adjust the first rule and / or the second rule. If the first rule is adjusted, in response to a third operation on the first region, a third executable program related to the adjusted first rule is generated, whereby the third operation is a text editing operation related to the adjusted first rule; the first executable program is replaced with the third executable program. If the second rule is adjusted, in response to a fourth operation on the second region, a fourth executable program related to the adjusted second rule is generated, whereby the fourth operation is a text editing operation related to the adjusted second rule; the second executable program is replaced with the fourth executable program.
[0027] In the above method, the process of performing first and second processing on the identifiers of N applications to obtain information on M applications is recorded, resulting in a first file. Through the first file, it can be determined whether the first rule and / or the second rule need to be adjusted. If the first rule needs to be adjusted, text editing operations related to the adjusted first rule can continue in the first area. If the second rule needs to be adjusted, text editing operations related to the adjusted second rule can continue in the second area. In this way, the process of first and second processing is monitored, and the first and second rules are adjusted according to the monitoring results.
[0028] In conjunction with the first aspect, in certain implementations of the first aspect, after recording the process of performing first and second processing on the identifiers of N applications to obtain information on M applications and obtaining a first file, the method further includes:
[0029] The third interface is displayed, which shows the contents of the first file.
[0030] In the above method, the contents of the first file can be displayed more intuitively through the third interface, making it easier to determine whether the first rule and / or the second rule need to be adjusted.
[0031] In conjunction with the first aspect, in some implementations of the first aspect, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines; the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines; the identifiers of N applications are processed by first and second processing to obtain M application information, including:
[0032] Multiple first subroutines are run sequentially according to the first priority order to perform first processing on the identifiers of N applications to obtain the identifiers of M applications. The first processing is the filtering of the identifiers of N applications by running multiple first subroutines. Multiple second subroutines are run sequentially according to the second priority order to perform second processing on the identifiers of M applications to obtain information about M applications. The second processing is the association of the identifiers of M applications with the first information by running multiple second subroutines.
[0033] In the above method, the first and second processing are performed in a serial mode. The execution logic of the serial mode is clear and it is more suitable for simple, dependency-free application distribution scenarios.
[0034] In conjunction with the first aspect, in some implementations of the first aspect, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines; the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines; the identifiers of N applications are processed by first and second processing to obtain M application information, including:
[0035] Multiple first subroutines are run in parallel to perform first processing on the identifiers of N applications, and multiple second subroutines are run to perform second processing on the identifiers of N applications, resulting in multiple first filtering results and multiple first association results. The first processing is the filtering of the identifiers of N applications by running multiple second subroutines, and the second processing is the association of the identifiers of N applications with first information by running multiple second subroutines. The results of the multiple first filtering results and multiple first association results are summarized to obtain information on M applications.
[0036] In the above method, the first and second processes are performed in parallel mode. In this parallel mode, the filtering and decorating rules are executed without any order, and are executed completely in parallel. Finally, the results of each process can be summarized. This mode has an uncertain execution order, high performance, and is suitable for distribution scenarios where there is no dependency between filtering and decorating rules.
[0037] In conjunction with the first aspect, in some implementations of the first aspect, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines; the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines; the identifiers of N applications are processed by first and second processing to obtain M application information, including:
[0038] Multiple first subroutines are executed sequentially according to the first priority order. First processing is performed on the identifiers of N applications to obtain identifiers of M applications. This first processing involves filtering the identifiers of the N applications using multiple first subroutines. Multiple second subroutines are executed in parallel to perform second processing on the identifiers of the M applications to obtain information on P applications. This second processing involves associating the identifiers of the M applications with the first information using multiple second subroutines. The value of P is related to the number of second subroutines and the value of M. Finally, the results of the P application information are summarized to obtain information on M applications.
[0039] In the above method, the first and second processing are performed in a hybrid mode (serial first then parallel or parallel first then serial). The hybrid mode combines the characteristics of serial mode and parallel mode, taking into account both performance and priority, and is the most widely used mode.
[0040] In conjunction with the first aspect, in some implementations of the first aspect, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines; the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines; the identifiers of N applications are processed by first and second processing to obtain M application information, including:
[0041] Multiple first subroutines and multiple second subroutines are run in a third priority order to perform first and second processing on the identifiers of N applications, resulting in multiple second filtering results and multiple second association results. Each priority in the third priority order corresponds to any number of subroutines from multiple first subroutines or multiple second subroutines. Any number of subroutines corresponding to each priority run in parallel. The priority of multiple first subroutines is higher than the priority of multiple second subroutines. The first processing is the filtering of the identifiers of N applications by running multiple first subroutines. The second processing is the association of the identifiers of M applications with first information by running multiple second subroutines. The results of multiple second filtering results and multiple second association results are summarized to obtain information on M applications.
[0042] In the above method, the first and second processing steps are performed using a bucket pattern (filtering rules or decorator rules within a bucket are executed concurrently, while rules between buckets are executed sequentially). Buckets are created based on priority, with filtering rules or decorator rules of the same priority placed in the same bucket. Rules within a bucket are executed concurrently, while rules between buckets are executed sequentially based on rule priority. This pattern fully utilizes the advantages of priority and parallelism, and is a special hybrid pattern.
[0043] In conjunction with the first aspect, in certain implementations of the first aspect, the first operation is a text editing operation related to multiple first rules, the second operation is a text editing operation related to multiple second rules, and in response to the first operation on the first region, a first executable program related to the first rule is generated, and in response to the second operation on the second region, a second executable program related to the second rule is generated, including:
[0044] In response to a first operation on a first region, multiple first rules are obtained, and in response to a second operation on a second region, multiple second rules are obtained. Each of the multiple first rules corresponds one-to-one with multiple interfaces of the second electronic device, and each of the multiple second rules also corresponds one-to-one with multiple interfaces of the second electronic device. Multiple interface identifiers are associated one-to-one with each of the multiple first rules, and multiple interface identifiers are also associated one-to-one with each of the multiple second rules, resulting in multiple third association results. Each of the multiple interface identifiers corresponds one-to-one with multiple interfaces of the second electronic device, and these multiple interface identifiers include the interface identifiers of the second interface. Based on these multiple third association results, multiple target programs are generated, and these multiple target programs include those associated with the multiple interface identifiers. The system identifies multiple first executable programs associated with multiple interface identifiers, and multiple second executable programs associated with multiple interface identifiers. Each of the multiple first executable programs corresponds one-to-one with a multiple first rule, and each of the multiple second executable programs corresponds one-to-one with a multiple second rule. Upon receiving second information sent by a second electronic device, the system performs first and second processing on the identifiers of N applications, including: upon receiving second information sent by the second electronic device, determining from multiple target programs a first target program associated with the interface identifier of the second interface in the second information; running the first target program, and performing first and second processing on the identifiers of the N applications to obtain M application information.
[0045] In the above method, after obtaining multiple first rules and multiple second rules, they can be associated with multiple interface identifiers, thereby preparing data for the subsequent determination of the first and second rules corresponding to the interface identifiers in the second information.
[0046] In conjunction with the first aspect, in certain implementations of the first aspect, in response to a first operation on the first region, a first executable program related to the first rule is generated, including:
[0047] In response to the first operation on the first region, a first script program related to the first rule is generated; the first script program is compiled to obtain a first executable program.
[0048] In the above method, after editing the first rule in text form in the first area, a first script program related to the first rule can be generated based on the first rule in text form, and then the first script program related to the first rule can be compiled to obtain the first script program related to the first rule.
[0049] In conjunction with the first aspect, in certain implementations of the first aspect, in response to a second operation on the second region, a second executable program related to the second rule is generated, including:
[0050] In response to the second operation on the second region, a second script program related to the second rule is generated; the second script program is compiled to obtain the second executable code.
[0051] In the above method, after editing the second rule in text form in the second area, a second script program related to the second rule can be generated based on the second rule in text form, and then the second script program related to the second rule can be compiled to obtain the first script program related to the second rule.
[0052] In a second aspect, this application provides an electronic device comprising: one or more processors, and a memory; the memory is coupled to one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, and the one or more processors invoking the computer instructions to cause the electronic device to perform the methods of the first aspect and any possible implementation thereof.
[0053] Thirdly, this application provides a chip system applied to an electronic device. The chip system includes one or more processors, which are used to invoke computer instructions to cause the electronic device to perform the methods in the first aspect and any possible implementation thereof.
[0054] 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 methods of the first aspect and any possible implementation thereof.
[0055] Fifthly, this application provides a computer program product that, when run on a computer, causes the computer to perform the methods of the first aspect and any possible implementation thereof.
[0056] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description
[0057] Figure 1 A schematic diagram of a filtering and decorating process provided in an embodiment of this application;
[0058] Figure 2 A schematic diagram of a human-computer interaction interface provided in an embodiment of this application;
[0059] Figure 3 A schematic diagram of a human-computer interaction interface provided in an embodiment of this application;
[0060] Figure 4A flowchart illustrating an application determination method provided in an embodiment of this application;
[0061] Figure 5 A schematic diagram of a scenario for determining an application provided in an embodiment of this application;
[0062] Figure 6 This is a schematic diagram of the structure of an electronic device provided in one embodiment of this application;
[0063] Figure 7 A schematic diagram of the software architecture of an electronic device provided in an embodiment of this application;
[0064] Figure 8 A schematic diagram of a rule management system provided in an embodiment of this application;
[0065] Figure 9 A flowchart illustrating an application determination method provided in an embodiment of this application;
[0066] Figure 10 A schematic diagram of the interface of a rule management system provided in an embodiment of this application;
[0067] Figure 11 This is a schematic diagram of a filtering rule editing area provided in an embodiment of this application;
[0068] Figure 12 This is a schematic diagram of a decoration rule editing area provided in an embodiment of this application;
[0069] Figure 13 A schematic diagram illustrating the conversion of a filtering rule script language according to an embodiment of this application;
[0070] Figure 14 A schematic diagram illustrating the conversion of a decoration rule scripting language according to an embodiment of this application;
[0071] Figure 15 A schematic diagram of a rule parser provided in an embodiment of this application;
[0072] Figure 16 A schematic diagram of a rule executor provided in an embodiment of this application;
[0073] Figure 17 A schematic diagram illustrating a rule execution mode provided in an embodiment of this application;
[0074] Figure 18 A flowchart illustrating an application determination method provided in an embodiment of this application;
[0075] Figure 19 This is a flowchart illustrating an application determination method provided in an embodiment of this application. Detailed Implementation
[0076] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the first transformation relationship of the related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c alone can mean: a alone, b alone, c alone, a combination of a and b, a combination of a and c, a combination of b and c, or a, b, and c, where a, b, and c can be single or multiple. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0077] For ease of understanding, the examples provided are for reference only and are related to the concepts in the embodiments of this application.
[0078] 1. Application distribution
[0079] Application distribution is the process by which servers distribute applications to app stores and display them to users. Application distribution is one of the core capabilities of game centers and app stores. The basic functions of app stores—viewing, searching, downloading, and playing—as well as advanced capabilities such as personalized recommendations, audience targeting, and monetization, all rely entirely on the fundamental capabilities of application distribution.
[0080] When an app store application displays its various interfaces, it can send an application distribution request to the server. The server can then distribute relevant application information, such as package name and icon, to the app store application based on the application distribution request.
[0081] 2. Filtering rules and decoration rules
[0082] Filtering rules are used to filter application package names. Typically, when a server receives an application distribution request, it can filter the application package names related to the interface that the application needs to display, which are stored on the server. This process of filtering application package names is the filtering process.
[0083] After the filtering rules are completed, the package name of the filtered application can be associated with its related description information. This association process is called decoration processing.
[0084] With the widespread use of electronic devices such as mobile phones and tablets, there are more and more applications available for these devices. Typically, electronic devices offer application markets, which provide users with information about various applications through their interfaces, making it convenient for users to access these applications.
[0085] Currently, when an electronic device displays the relevant interface of an application from the app store, it can send an application distribution request to the server. After receiving the request, the server filters the applications to be distributed using filtering rules. The application package name obtained after filtering is decorated using decoration rules. Then, the application-related information obtained after decoration is sent to the electronic device so that the electronic device can display the relevant interface of the app store application based on the application-related information.
[0086] Each app store application's interface (scene) has corresponding filtering rules and decoration rules. Filtering rules include multiple sub-rules, used to filter out applications that do not meet the criteria, preventing them from being distributed to electronic devices. For example, an application age filtering rule filters out applications whose applicable age is greater than the user's age, retaining only those younger than the user's age. Decoration rules also include multiple sub-rules, used to populate and decorate various application attributes, enriching user attributes and meeting user and operational needs. For example, an application basic information decoration rule associates basic application information such as name, package name, version, company, and download count; an application category decoration rule associates category tags and other content. The current processing order is to first filter using the filtering rules, then decorate using the decoration rules. The filtering rules are executed sequentially for this scene, while the decoration rules customize sequential or parallel logic based on the scene and dependencies to process the application list remaining from the filtering rules.
[0087] like Figure 1 As shown, when the server receives an application distribution request from an electronic device, it can obtain a list of filtering rules for the interface (current scene) that needs to be displayed. Based on the list of filtering rules, the server filters the package names of applications related to the interface that needs to be displayed in a serial manner. After each filtering, the server can record the package names of the filtered applications until all filtering rules have been executed.
[0088] The filter list can include multiple filter rules; there is no restriction on the type of filter rules in the filter rule list.
[0089] For example, the list of filtering rules includes application allowed country filtering (filtering applications that are not allowed to be installed in the country corresponding to the country name carried in the application distribution request), application device operating system compatibility filtering (filtering applications that are incompatible with the operating system version information carried in the application distribution request), application age filtering (for example, filtering applications whose applicable age is greater than the user's age carried in the application distribution request), application not recommended filtering (for example, if the application distribution request carries a homepage interface, then applications unrelated to the homepage interface need to be filtered), and application not searchable filtering (for example, if the application distribution request carries a search page interface, then applications unrelated to the search page need to be filtered).
[0090] After executing all the filtering rules, a list of decoration rules for the interface to be displayed (current scene) can be obtained. Based on the list of decoration rules, the relevant information of the application corresponding to the remaining package names is associated in a serial manner. After each decoration (association of relevant information) is completed, it is necessary to determine whether there are any other decoration rules to be executed. If not, the version decoration rule is executed, which can associate the version number of the latest version of the installation package with the aforementioned package name.
[0091] The list of filter rules can include various types of decoration rules; there is no limitation on the filter type in the list of decoration rules.
[0092] For example, the list of decoration rules includes decorations for basic application information (e.g., associated name, icon, description), decorations for application category information (e.g., the application category associated with UC Browser is browser or utility), decorations for application rating information (e.g., associated application rating and level), decorations for application multilingual information (e.g., associated language information, Chinese or English, etc.), decorations for application packages (e.g., associated application installation package version number), and decorations for commercial rights (e.g., associated related advertising information), etc.
[0093] Below, in conjunction with Figure 2 and Figure 3 This will be illustrated using the example of an app store application displaying its homepage, search interface, and details page.
[0094] For example, when a launch operation for an app store application is received, the app store application can send an application distribution request to the server. When the server receives the application distribution request, it can filter the package names of applications related to the home page based on the request parameters included in the application distribution request, and associate the filtered package names with the relevant information of the application corresponding to the package name through decoration rules. Then, the application-related information is sent to the electronic device.
[0095] like Figure 2 As shown in (a), when an electronic device receives application-related information corresponding to the homepage of an application in the application market, it can display the homepage of the application market application based on the application-related information.
[0096] When the application market application receives a launch operation, the application market application sends an application distribution request to the server, which includes request parameters. The request parameters may include one or more of the following: interface identifier, target category (application category), terminal language information, country information of the second electronic device, and user age.
[0097] For example, when an app receives an action on the search box on the homepage of an app store application, the app store application can send an application distribution request to the server. When the server receives the application distribution request, it can filter the package names of applications related to the search page interface based on the request parameters included in the application distribution request, and associate the filtered package names with the relevant information of the application corresponding to the package name through decoration rules. Then, the application-related information is sent to the electronic device.
[0098] like Figure 2 As shown in (b), when an electronic device receives application-related information corresponding to the search page interface of an application in the application market, it can display the search page interface of the application market application based on the application-related information.
[0099] For example, when an app receives an action on the icon of any application on the homepage or search page of an app store application, the app store application can send an application distribution request to the server. When the server receives the application distribution request, it can associate the package name of any of the aforementioned applications with the relevant information of the application corresponding to that package name based on the request parameters included in the application distribution request, and then send the application-related information to the electronic device.
[0100] like Figure 3 As shown, when an electronic device receives application-related information corresponding to the details page of an application from the app store, it can display the details page of the application from the app store (including application rating, storage space usage, applicable user age, number of installations, category, description, version information, developer information, etc.) based on the application-related information.
[0101] However, in the above implementation, the filtering rules and decorator rules are implemented through hard coding, which has the following problems:
[0102] 1) After the filtering rules and decoration rules are pre-stored on the server, their addition and modification can only be solved by hard-coding and release, which is inefficient in executing the complete development, testing and release process.
[0103] 2) When the rules are very complex, the scalability and maintainability are low.
[0104] 3) There are no unified processes and rules for managing filtering and decoration rules, resulting in low flexibility.
[0105] 4) Filtering and decorating rules are not visible to operations personnel (business analysts) other than developers, resulting in high barriers to rule maintenance and high costs.
[0106] 5) The correctness and effectiveness of filtering and decoration rules are difficult to monitor.
[0107] To address the aforementioned issues, this application provides an application determination method, an electronic device, a chip system, a computer-readable storage medium, and a computer program product. The first electronic device can add, modify, or maintain filtering and decoration rules through a visual interface. After addition, modification, or maintenance, executable code is automatically generated and saved. Thus, upon receiving an application distribution request from a second electronic device, the code corresponding to the filtering and decoration rules can be run to perform filtering and decoration processing on the application. In this way, operational personnel (business analysts) other than developers can directly add, modify, or maintain filtering and decoration rules without requiring developers to adjust the code. This provides high flexibility, facilitates monitoring, reduces the threshold and cost of adding, modifying, and maintaining filtering and decoration rules, and improves the efficiency of adding, modifying, and maintaining filtering and decoration rules.
[0108] The first electronic device can be an electronic device that receives application distribution requests and distributes applications; the second electronic device can be an electronic device that sends application distribution requests and receives distributed applications.
[0109] The first electronic device can be an electronic device that stores information about all applications in the application market of the second electronic device.
[0110] The first electronic device mentioned above can be an electronic device connected to a display screen, or an electronic device with display screen hardware and corresponding software support. The second electronic device can be an electronic device with display screen hardware and corresponding software support.
[0111] The first electronic device can be a server connected to a display screen, and the second electronic device can be a mobile phone, tablet computer, in-vehicle device, laptop computer, wearable device, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), smart car, smart TV, robot, etc.
[0112] Specifically, such as Figure 4 As shown, the first electronic device includes a rule management system, a rule parser, and a rule executor. The rule management system can communicate with the rule parser through forms such as applications (APP), web pages, public accounts, and mini-programs, enabling the rule management system and the rule parser to exchange information, and the rule parser and the rule executor to exchange information.
[0113] The first electronic device can display an interface of the rule management system. Operations personnel other than developers can use the interface of the rule management system to edit the text of filtering rules and decoration rules, manage and associate the filtering rules and decoration rules with the interface identifiers (interface scenes) that need to filter and decorate the application, and send the aforementioned filtering rules and decoration rules associated with the interface identifiers to the rule parser through task distribution.
[0114] The rule parser will pre-compile the aforementioned filtering rules and decoration rules associated with the interface identifier into executable code, and then distribute the executable code to the rule executor according to the grayscale rules.
[0115] Upon receiving an application distribution request from the second electronic device, the rule executor can determine the corresponding executable code based on the display interface identifier in the request parameters included in the application distribution request, perform filtering and decoration processing, and finally return the application distribution result to the second electronic device, which then displays the interface to be displayed based on the distribution result.
[0116] In addition, the rule executor can also upload the records of the current filtering and decoration processing to the indicator monitoring module of the rule management system. Based on the filtering and decoration records in the indicator monitoring module, operators can determine whether the filtering and decoration rules need to be adjusted.
[0117] Please see Figure 5 , Figure 5 A schematic diagram of the architecture of a communication system provided in one embodiment of this application is shown.
[0118] like Figure 5As shown, the communication system of this application may include a first electronic device 100 and a second electronic device 200.
[0119] The application method for determining the application in this application can be implemented through the cooperation of the first electronic device 100 and the second electronic device 200.
[0120] After receiving text editing operations on filtering rules and decoration rules performed by operators on the display screen of the first electronic device 100, the first electronic device 100 can generate corresponding filtering rules and decoration rules, convert the filtering rules and decoration rules from text form into executable code form, and save them.
[0121] When the first electronic device 100 receives an application distribution request sent by the second electronic device 200, it can run filtering rule code and decoration rule code to perform filtering and decoration processing on the application related to the interface that the application needs to display in the application market, and obtain the package name of the application and related application information.
[0122] When the first electronic device 100 obtains the package name of the application and related information of the application associated with it, it can send the package name of the application and related information of the application associated with it to the second electronic device 200.
[0123] When the second electronic device 200 receives the application package name and related application information, it can display the interface of the corresponding application market application.
[0124] It should be understood that the above are illustrative examples of scenarios and do not limit the scenarios of this application in any way.
[0125] For example, besides application distribution scenarios, the process of this application embodiment can also be applied to other distribution scenarios involving complex rules, such as content distribution rules, audience targeting rules, and personalized recommendation rules.
[0126] For ease of explanation, the following illustration uses the first electronic device 100 as a server connected to a display screen and the second electronic device 200 as a mobile phone. The structure of the first electronic device 100 may be the same as or different from that of the second electronic device 200.
[0127] like Figure 6 As shown, in some embodiments, the second electronic device 200 may include a processor 101, a communication module 102, a display screen 103, a camera 104, a sensor 105, an internal memory 106, a USB interface 107, an external memory interface 108, a charging management module 109, a power management module 110, and a battery 111, etc.
[0128] The processor 101 may include one or more processing units, such as an application processor (AP), a modem processor, a graphics processor, an image signal processor (ISP), a controller, a memory, a video stream codec, a digital signal processor (DSP), a baseband processor, and / or a neural network processing unit (NPU). These different processing units may be independent devices or integrated into one or more processors 101.
[0129] The controller can be the nerve center and command center of the second electronic device 200. The controller can generate operation control signals according to the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0130] The processor 101 may also include a memory for storing instructions and data.
[0131] The communication module 102 may include antenna 1 and antenna 2, a mobile communication module, and / or a wireless communication module.
[0132] Optionally, the second electronic device 200 may also include peripheral devices such as a mouse, buttons, indicator lights, keyboard, speaker, microphone, etc.
[0133] It is understood that the structure illustrated in this embodiment does not constitute a specific limitation on the second electronic device 200.
[0134] In other embodiments, the second electronic device 200 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.
[0135] Please refer to Figure 7 This is a schematic diagram of the software architecture of an electronic device provided in an embodiment of this application. The software in the second electronic device 200 can be divided as follows: Figure 7 The application layer 201, application framework layer (FWK) 202, hardware abstraction layer (HAL) 203, and driver layer 204 are shown.
[0136] Multiple applications can be installed in application layer 201.
[0137] The application framework layer 202 provides a set of basic functions and services for the application layer 201 to call and use.
[0138] The Hardware Abstraction Layer 203 is a software located between the operating system kernel and the hardware circuitry. It is typically used to abstract the hardware to enable interaction between the operating system and the hardware circuitry at the logic layer.
[0139] Multiple drivers for driving hardware can be installed in driver layer 204.
[0140] It should be noted that the application layer 201, application framework layer 202, hardware abstraction layer 203, and driver layer 204 may also include other content, which is not specifically limited here.
[0141] The application determination method of this application can be implemented through the cooperation of a first electronic device and a second electronic device.
[0142] The first electronic device is an electronic device used by the manufacturer to generate filtering rules and decoration rules, perform application filtering and decoration processing, and distribute the application to the second electronic device; the first electronic device includes a rule management system, a rule parser, and a rule executor.
[0143] The rule management system is used to generate filtering rules and decorating rules through operations on the interface, convert the filtering rules and decorating rules into script programs, store them in the database of the rule management system, and send the aforementioned script programs to the rule parser.
[0144] like Figure 8 As shown, the rule management system mainly consists of four parts: knowledge base management module, rule orchestration module, scenario management module, and task management module.
[0145] The knowledge base management module is used to manage the basic elements related to composition filtering rules and decoration rules; specifically, it is used for parameter management, atomic expression management, symbol library management, execution action management, and version management.
[0146] Parameter management includes managing the basic parameters that make up various filtering and decorating rules, such as application information parameters (e.g., package name, icon), terminal information (e.g., terminal language), and user age. Atomic expression management includes managing atomic expressions, which are indivisible expressions composed of basic parameters and symbols. Symbol library management includes managing the symbol library, which includes logical operators such as equal to, greater than, contain, and belong to. Execution action management includes managing execution actions, which are the execution logic after rule judgment, such as filtering, filling, sending messages, interrupting, and recording data points. Version management is used for managing the versions of each basic parameter; for example, a parameter originally named `agelimit` might be changed to `agelimitV2`.
[0147] The rule orchestration module is used to orchestrate filtering and decorating rules with business semantics based on basic parameters, atomic expressions, and execution actions. It also manages configuration information rules, application information rules, package information rules, and publishes (displays) rules.
[0148] The scene management module is used to manage multiple filtering rules and multiple decoration rules; specifically, it is used to manage the relationships between multiple filtering rules, multiple decoration rules, multiple interface identifiers (multiple scene information) and multiple filtering rules and multiple decoration rules, as well as the execution modes of multiple filtering rules and multiple decoration rules.
[0149] The rule is essentially a function, consisting of three parts: n inputs, 1 output, and a function computation logical operator.
[0150] y = Fun(x1,x2,…,xn), where Fun, x1, x2, and xn are multiple inputs; the inputs and outputs include symbols from the symbol library, basic parameters from parameter management, etc.
[0151] Execution modes include serial execution, parallel execution, mixed execution (serial first then parallel or parallel first then serial), and bucket mode (filters or decorators within a bucket are executed concurrently, while execution between buckets is based on serial execution).
[0152] The task management module is used to manage the distribution of tasks (distributing various filtering rules, decoration rules, and grayscale rules to the rule management parser), the management of grayscale rules, and the monitoring of metrics.
[0153] The rule parser is used to parse the scripts corresponding to various filtering rules and various decorating rules, generate corresponding executable code based on the parsing results, and send the aforementioned executable code to the rule executor.
[0154] The rule executor is used to run the aforementioned executable code to perform filtering and decoration processing when it receives an application distribution request, obtain the distribution result, and return the distribution result to the second electronic device.
[0155] Based on the above scenario description, the application determination method provided in this application embodiment will be described in detail below with reference to the accompanying drawings and application scenarios.
[0156] Please see Figure 9 , Figure 9 A flowchart illustrating an embodiment of the application determination method provided in this application is shown.
[0157] like Figure 9 As shown, the application determination method provided in this application may include:
[0158] S11. In interface 1, the rule management system generates multiple filtering rules in response to text editing operations related to multiple filtering rules in the filtering rule editing area, and generates multiple decoration rules in response to text editing operations related to multiple decoration rules in the decoration rule editing area.
[0159] The first electronic device can display the interface 1 of the rule management system. The interface 1 of the rule management system is used to display the editing status of filtering rules and decoration rules. This application does not limit the specific implementation of interface 1.
[0160] In some embodiments, interface 1 includes a filter rule editing area and a decoration rule editing area. The filter rule editing area is used for editing the text of filter rules, and the decoration rule editing area is used for editing the text of decoration rules.
[0161] In other embodiments, such as Figure 10 As shown, interface 1 may include a filter rule editing control and a decoration rule editing control. When an operation is received on the filter rule editing control, the filter rule editing area (area 1001) can be displayed in interface 1. When an operation is received on the decoration rule editing control, the decoration rule editing area can also be displayed in interface 1.
[0162] The editing of filtering rules and decoration rules is usually done by the manufacturer of the second electronic device. This application does not limit the type of user who performs text editing of filtering rules and decoration rules in interface 1. The following is an example of the editing of filtering rules and decoration rules being done by the manufacturer's operations personnel.
[0163] In one possible implementation, operators can directly perform text editing operations related to multiple filtering rules in the filtering rule editing area, and the rule management system can respond to the text editing operations related to multiple filtering rules in the filtering rule editing area to generate multiple filtering rules.
[0164] Similarly, operators can directly perform text editing operations related to various decoration rules in the decoration rule editing area, and the rule management system can respond to the text editing operations related to various decoration rules in the decoration rule editing area and generate various decoration rules.
[0165] In another possible implementation, interface 1 may also include at least one of the following: multiple parameters in the basic parameters, multiple atomic expressions, multiple symbols in the symbol library, and multiple action information in the execution action information. Operators can add the aforementioned basic parameters, atomic expressions, symbol libraries, and / or execution action information related to multiple filtering rules to the filtering rule editing area by dragging and dropping to generate multiple filtering rules.
[0166] For example, Figure 11 In the system, the filtering rule editing area includes an input parameter area and a filtering rule area. Operators can drag and drop the application list and user age from the basic parameters to the input parameter area, and drag and drop the user age, symbol library less than or equal to, application age limit, and action information to the filtering rule area to form a filtering rule that "filters applications that exceed the user's age".
[0167] Among them, the application list and user age in the above input parameters represent applications in the application list filtered by user age; when the first electronic device receives the application distribution request, it can obtain the user age from the request parameters included in the application distribution request, and obtain the pre-stored application information related to the aforementioned interface identifier from the first electronic device according to the interface identifier in the request parameters.
[0168] Similarly, operators can drag and drop the aforementioned basic parameters, atomic expressions, symbol libraries, and / or execution action information related to various decoration rules to the decoration rule editing area to generate various decoration rules.
[0169] For example, Figure 12In the middle, the decoration rule editing area includes an input parameter area and a decoration rule area. Operators can drag and drop the application list and terminal language from the basic parameters to the input parameter area, and drag the package name, application package name, type, application type, download count, application download count, and Chinese characters from the basic parameters to the decoration rule area. They can also drag the assignment, equal to, and not equal to symbols from the symbol library to the decoration rule area, and drag the Chinese company name and English company name from the execution action information to the decoration rule area, thus forming a decoration rule that "associates the application with package name, type, download count, and terminal language as Chinese".
[0170] In some embodiments, continue to combine Figure 12 The input parameter area can also include a list of returned application information. Operators can drag the list of returned application information from the basic parameters to the input parameter area. Then, each of the subsequent generated executable programs 1 will include a program related to the returned application information list. The returned application information list is used to indicate that the subsequent distribution results should be sent to the second electronic device. In this way, after the rule executor in the first electronic device performs filtering processing through filtering rules and decoration processing through decoration rules, it can send M distribution results to the second electronic device based on the program related to the returned application information list.
[0171] Similarly, in Interface 1, filtering and decoration rules can be edited visually and drag-and-drop. Operators do not need any syntax knowledge to edit filtering and decoration rules.
[0172] Based on the above description, the rule management system can generate multiple filtering rules in response to text editing operations of multiple filtering rules in the filtering rule editing area, and / or generate multiple decoration rules in response to text editing operations of multiple decoration rules in the decoration rule editing area.
[0173] It should be noted that if this is the first time editing, the operations staff may need to edit multiple filtering rules and multiple decoration rules. In this case, the rule management system can receive the multiple filtering rules edited by the operations staff through the filtering rule editing area and the multiple decoration rules edited by the operations staff through the decoration rule editing area, thus obtaining multiple filtering rules and multiple decoration rules.
[0174] If it is not the first time editing, and the operator needs to edit at least one of multiple filtering rules and / or at least one of multiple decoration rules, then the rule management system can receive at least one filtering rule edited by the operator through the filtering rule editing area and / or receive at least one decoration rule edited by the operator through the decoration rule editing area. In this way, new multiple filtering rules and / or new multiple decoration rules can be obtained.
[0175] The application market includes multiple interfaces; each interface needs to display different application information, and the content that needs to be filtered and decorated is different, that is, the filtering rules for filtering are different, and the decoration rules for decoration are different.
[0176] Among them, the multiple filtering rules are the filtering rules corresponding to multiple interfaces, and the multiple decoration rules are the decoration rules corresponding to multiple interfaces.
[0177] For example, there are three types of filtering rules: filtering rules for the homepage of the app store application, filtering rules for the search page, and filtering rules for the details page.
[0178] The filtering rules corresponding to the homepage interface include multiple sub-filtering rules, which include: filtering for applications that are not allowed to be installed in the current country, filtering for applications that are incompatible with the operating system version of the second electronic device, filtering for applications that are not recommended, and filtering for applications that cannot be searched.
[0179] If the app store application is set to Kids / Teenagers mode, several sub-filtering rules also include: filtering for applications that are older than the user's age.
[0180] The filtering rules for the search page and the details page can be the same as or different from the filtering rules for the homepage; this application does not impose any restrictions on this.
[0181] For example, there are three types of decoration rules: decoration rules for the homepage of the app store application, decoration rules for the search page, and decoration rules for the details page.
[0182] The homepage interface's decoration rules include multiple sub-filter rules, which in turn include: basic information about the associated application and icons for the associated application.
[0183] The decoration rules for the search page interface can be the same as or different from those for the homepage; this application does not impose any restrictions on this.
[0184] The decoration rules corresponding to the details page interface include multiple sub-filter rules, which include: basic information of the associated application (which may include icons), category information of the associated application, language information of the associated application, and commercial rights information of the associated application.
[0185] S12. The rule management system associates various filtering rules and various decoration rules with multiple interface identifiers respectively, and obtains multiple association results 1.
[0186] In some embodiments, interface 1 further includes a plurality of interface identifiers, which are interface identifiers of a plurality of interfaces of the application market application.
[0187] Among these, multiple interface identifiers can also be referred to as multiple scene information. Each interface in the application market application corresponds to a filtering and decoration scene.
[0188] Multiple interface identifiers can be the names of multiple interfaces; for example, the homepage interface identifier is Homepage Interface Name Homepage, the search page interface identifier is Search Page Interface Name Search Page, and the details page interface identifier is Details Page Interface Name Details Page.
[0189] In some embodiments, after generating a filtering rule, the rule management system may, in response to the selection operation of the interface identifier corresponding to the aforementioned filtering rule among multiple interface identifiers, associate the aforementioned filtering rule with the selected interface identifier; after generating a decoration rule, the rule management system may, in response to the selection operation of the interface identifier corresponding to the aforementioned decoration rule among multiple interface identifiers, associate the aforementioned decoration rule with the selected interface identifier, and so on, to obtain multiple association results.
[0190] In some embodiments, after generating multiple filtering rules and multiple decoration rules, the rule management system can associate the multiple filtering rules and multiple decoration rules with multiple interface identifiers respectively to obtain multiple association results1.
[0191] S13. The rule management system performs script language conversion on multiple associated results 1 to obtain multiple associated results 2.
[0192] When the rule management system obtains multiple association results 1, it can convert these multiple association results into a domain-specific language (DSL) through a scripting language to obtain multiple association results 2.
[0193] For example, a rule management system can... Figure 10 The filtering rules in the code are converted into a scripting language to obtain... Figure 13 The script program in the middle.
[0194] For example, a rule management system can... Figure 11 The decoration rules in the script are converted into a scripting language to obtain... Figure 14 The script program in the middle.
[0195] Specifically, a DSL can include any scripting language such as aviator, groovy, ruby, or abstract syntax tree (AST).
[0196] In the programming field: Aviator is a lightweight, high-performance Java expression evaluation engine; Groovy is a dynamic programming language based on the Java platform; Ruby programming language is a dynamic, open-source programming language that emphasizes simplicity and productivity; and AST is a tree-like data structure used to represent the syntactic structure of source code.
[0197] S14. The rule management system sends multiple association results 2 to the rule parser.
[0198] After obtaining multiple association results 2, the rule management system can send multiple association results 2 to the rule parser, so that the rule parser can perform subsequent related operations based on the multiple association results 2.
[0199] In some embodiments, after obtaining multiple association results 2, the rule management system can send a configuration change notification to the rule parser and carry multiple association results 2 in the configuration change notification. The configuration change notification is used to indicate that multiple filtering rules and / or multiple decoration rules have changed.
[0200] Among them, combined Figure 15 Upon receiving a configuration change notification, or when the rule parser service restarts after receiving a configuration change notification, the rule parser can parse multiple association results 2 in script language form and generate multiple executable programs 1 based on the parsing results. If generating multiple executable programs 1 fails, an alarm is issued; if successful, they can be saved (executable programs corresponding to different interface identifiers can be saved to their respective queues). It can then obtain grayscale rules, which are used to determine which rule executor to send multiple executable programs 1 to. It can also retrieve saved executable programs and distribute them to the corresponding rule executors according to the grayscale rules. The following sections, combined with S15-S18, elaborate on the steps executed by the rule parser:
[0201] S15. The rule parser parses multiple association results 2 and obtains multiple parsing results.
[0202] After obtaining multiple association results 2, the rule parser can parse the multiple association results 2 to obtain multiple parsing results, which are the parsing results of the multiple script programs mentioned above.
[0203] In some embodiments, when multiple association results 2 are received, the rule parser can directly parse the multiple association results 2 to obtain multiple parsed results.
[0204] In other embodiments, after receiving multiple association results 2, the rule parser may temporarily malfunction and stop running. When the rule parser restarts, it can parse the multiple association results 2 to obtain multiple parsing results.
[0205] S16. The rule parser generates multiple executable programs 1 based on multiple parsing results.
[0206] Among them, an executable program is binary code or bytecode that a computer can directly execute.
[0207] When the rule parser obtains multiple parsing results corresponding to multiple script programs, it can perform the step of converting the source code written in the script program into binary code or bytecode that the computer can directly execute, thereby obtaining multiple executable programs.
[0208] It should be understood that the rule parser may generate multiple executable programs based on multiple parsing results, which may succeed or fail due to temporary failures of the rule parser.
[0209] If generating multiple executable programs 1 fails, the rule parser can send an alarm notification to the rule management system. The alarm notification indicates that multiple executable programs 1 have failed, which allows the rule management system to perform operations such as resending multiple associated results 2 based on the alarm notification.
[0210] In some embodiments, when the rule management system receives an alarm notification, it may display an alarm interface, which displays alarm content, such as failure to generate an executable program.
[0211] The process of generating executable program 1 and sending multiple executable programs 1 can be implemented by different modules in the rule parser. For example, the successful generation of executable program 1 can be implemented by the parsing module, and then an asynchronous notification is sent to the scheduling module. The scheduling module sends multiple executable programs 1 to the rule executor based on the asynchronous notification.
[0212] In addition, the process from parsing rules to generating an executable program is related to the scripting languages used in multiple associated results 2. The process of compiling and generating an executable program is: lexical analysis -> syntax analysis -> semantic analysis -> intermediate code generation -> optimization -> generating an executable program.
[0213] S17. The rule parser sends multiple executable programs 1 to the rule executor.
[0214] When multiple executable programs 1 are obtained, the rule parser can send multiple executable programs 1 to the rule executor, so that the rule executor can perform subsequent related operations based on the multiple executable programs.
[0215] It should be noted that there may be a situation where the first electronic device receives application distribution requests from multiple second electronic devices at the same time. The rule executor of the first electronic device needs to perform filtering and decoration processing based on the application distribution requests sent by multiple second electronic devices simultaneously. If the first electronic device includes a rule executor, the load on that rule executor is relatively large.
[0216] Based on this, the first electronic device is usually equipped with multiple rule executors and stores grayscale rules. The grayscale rules are used to determine which rule executor to send multiple executable programs 1 to. Based on the grayscale rules, the rule parser can determine which rule executor to send multiple executable programs 1 to.
[0217] Among them, combined Figure 16 Upon receiving multiple executable programs 1, the original executable program stored in the rule executor can be replaced, and the received multiple executable programs 1 can be stored. The original executable program is the executable program stored in the rule executor before the current moment. When receiving an application distribution request, the interface identifier in the request parameters can be obtained, and the executable program corresponding to the interface identifier can be determined from the multiple executable programs. The filtering and decoration processing steps of the application can be executed through the filtering rules and decoration rules corresponding to the executable program. The filtering and decoration processing can adopt serial mode, parallel module, hybrid mode, and bucket mode. The rule executor can also send the distribution result to the second electronic device after obtaining the distribution result, so that the second electronic device can display the corresponding interface according to the distribution result. The steps executed by the rule executor are described in detail below with reference to S18-S23:
[0218] S18. The rule executor stores multiple executable programs 1.
[0219] When multiple executable programs 1 are received, they can be saved so that when an application distribution request is received from a second electronic device, any one of the multiple executable programs 1 can be run to perform related operations.
[0220] If the rule executor receives multiple executable programs 1 for the first time, it can directly save the multiple executable programs 1; if the rule executor receives multiple executable programs 1 for the first time, it can replace the multiple original executable programs with multiple executable programs 1.
[0221] S19. The second electronic device sends an application distribution request to the rule executor, the application distribution request including request parameters.
[0222] The application distribution request is used to request the first electronic device to send application information related to the target interface to the second application of the second electronic device; the target interface is the interface of the application market application to be displayed at the current moment.
[0223] The application market includes multiple interfaces, and when the second electronic device displays these multiple interfaces, it needs to send an application distribution request to the rule executor.
[0224] For example, multiple interfaces include a homepage, a search page, and a details page.
[0225] The request parameters may include one or more of the following: interface identifier, target category (application category), terminal language information, operating system version information of the second electronic device, country information of the second electronic device, and user age.
[0226] Specifically, the information in the request parameters varies depending on the target interface.
[0227] When the target interface is the homepage, the request parameters may include the homepage identifier, target category, terminal language type, operating system version information, and the country where the secondary electronic device is located.
[0228] If the app store application is in children's / teenager mode, and the target interface is the home screen, the request parameters may include the home screen identifier, target category, terminal language type, operating system version information, the country of the second electronic device, and the user's age.
[0229] The homepage identifier can be the name of the homepage interface; this application does not specifically limit the type of the homepage identifier.
[0230] When the target interface is the homepage, the target category can be determined based on the category of the application to be displayed on the homepage; when the homepage includes two categories, popular apps and popular games, the target category includes both popular apps and popular games.
[0231] The terminal language is the language type of the operating system set in the second electronic device. When the second electronic device is powered on for the first time, the second electronic device can prompt the user to set the language type through the interface, or the language type can be set in the language settings interface of the second electronic device; for example, the language type is Simplified Chinese.
[0232] The operating system version information of the second electronic device can be the operating system version number of the second electronic device; this application does not specifically limit the type of operating system version information of the second electronic device.
[0233] The second electronic device can obtain the location information of the second electronic device at the current moment, thereby determining the country information of the second electronic device.
[0234] When a user sets an app store application to Kids / Teenagers mode, they need to enter their age, thus allowing the app store application to obtain the user's age.
[0235] When the target interface is a search page, the request parameters may include the search page identifier, target category, terminal language type, operating system version information, and the country where the secondary electronic device is located.
[0236] If the app store application is in Kids / Teenagers mode, and the target interface is a search page, the request parameters may include the search page identifier, target category, terminal language type, operating system version information, the country of the second electronic device, and the user's age.
[0237] The search page interface identifier can be the name of the search page interface; this application does not specifically limit the type of the search page interface identifier.
[0238] When the target interface is a search page, the target category is the category related to the text information received by the search box; for example, if the search box receives the user's input of "tools", the target category is tools; or, for another example, if the search box receives the category "tools" recommended by a second electronic device according to preset rules, the target category is tools.
[0239] When the target interface is a details page, the target category includes an application identifier (name), and the request parameters may include the details page identifier, the application identifier, the terminal language type, the operating system version information, and the country where the second electronic device is located.
[0240] If the app store application is in Kids / Teenagers mode, and the target interface is the details page, the request parameters may include the details page identifier, the application identifier, the operating system version information, the country where the second electronic device is located, and the user's age.
[0241] It should be understood that when an app store application displays its homepage or search page, the homepage or search page includes information about multiple applications. Upon receiving an icon for any one of these applications, the app store application can display the details page of that application.
[0242] Based on this, when an app store application receives an operation on the icon of any application, it can send an application distribution request to the rule executor in the first electronic device. This request needs to carry the identifier of any of the aforementioned applications, so that the rule executor can directly perform filtering and decoration processing steps on the applications related to that application through filtering rules and decoration rules.
[0243] S20. The rule executor determines the interface identifier 1 that matches the interface identifier in the request parameters from the multiple interface identifiers corresponding to the multiple executable programs 1.
[0244] The rule executor can read multiple interface identifiers from executable program 1. When it receives an application distribution request, it can determine the interface identifier that matches the interface identifier in the request parameters carried in the application distribution request and identify that interface identifier as interface identifier 1.
[0245] The following section will elaborate on multiple interfaces, including the homepage interface, search page interface, and details page interface, and correspondingly, multiple interface identifiers, including the homepage interface identifier, search page interface identifier, and details page interface identifier:
[0246] If the application distribution request is sent by the application market application to the rule executor of the first electronic device when displaying the home screen, and the interface identifier carried in the request parameters is the home screen identifier, then the interface identifier that the rule executor determines from multiple interface identifiers that matches the interface identifier in the request parameters is the home screen identifier, that is, the home screen identifier is interface identifier 1.
[0247] If the application distribution request is sent by the application market application to the rule executor of the first electronic device when displaying the search page interface, and the interface identifier carried in the request parameters is the search page interface identifier, then the interface identifier that the rule executor determines from multiple interface identifiers matches the interface identifier in the request parameters is the search page interface identifier, that is, the search page interface identifier is interface identifier 1.
[0248] If the application distribution request is sent by the application market application to the rule executor of the first electronic device when displaying the details page interface, and the interface identifier carried in the request parameters is the details page interface identifier, then the interface identifier that the rule executor determines from multiple interface identifiers matches the interface identifier in the request parameters is the details page interface identifier, that is, the details page interface identifier is interface identifier 1.
[0249] S21. The rule executor filters and decorates the identifiers of N applications in the target category according to the target executable program corresponding to interface identifier 1, and obtains M distribution results.
[0250] The rule executor stores multiple categories of application-related information and application decoration information; or other storage spaces of the first electronic device store multiple categories of application-related information and application decoration information, and the rule executor can obtain them from the aforementioned other storage spaces when it receives an application distribution request.
[0251] For example, the rule executor stores application information related to popular game categories, and application information related to popular app categories.
[0252] Application-related information may include, but is not limited to: application package name, application age rating, permitted countries for application use, and permitted compatible operating system versions.
[0253] Application decoration information may include, but is not limited to: basic application information (such as icon, name, description), application category, application rating information, application language information, application package information, and application commercial rights information.
[0254] For example, popular application categories include Application 1 and Application 2. Application-related information for Application 1 includes package name, age limit of 18 years or older, permitted country of use of China, name of Game Application 1, icon, description, and rating. Application-related information for Application 2 includes package name, age limit of under 18 years old, name of Game Application 2, icon, description, and rating.
[0255] The target executable program is the executable program corresponding to interface identifier 1 among multiple executable programs. The target executable program includes interface identifier 1, the filtering rules associated with interface identifier 1, and the executable programs of the decoration rules associated with interface identifier 1. When the rule executor performs filtering processing, it can run the executable program of the filtering rule associated with interface identifier 1 in the target executable program for filtering processing. When the rule executor performs decoration processing, it can run the executable program of the decoration rule associated with interface identifier 1 in the target executable program for decoration processing. The following will describe the filtering and decoration processes in detail, taking filtering through filtering rules and decoration through decoration rules as examples.
[0256] The filtering process is used to filter / select applications of the target category associated with interface identifier 1 according to the filtering rules associated with interface identifier 1. During the filtering process, applications are filtered by matching the filtering rules with the application information of the target category, and the identifiers of the filtered applications (such as package names or names) are recorded. The process of filtering applications is also the process of filtering application identifiers.
[0257] Assume that the application distribution request is sent by the app market application to the rule executor of the first electronic device when displaying the home screen. The home screen identifier is interface identifier 1. The request parameters include the home screen identifier. The target categories associated with the home screen identifier include two categories: popular games and popular applications. The filtering rules associated with the home screen identifier include one sub-rule: filtering applications in the blacklist.
[0258] Therefore, the rule executor can filter applications in the blacklist based on the sub-rules associated with the homepage interface identifier, filtering applications in the stored popular game category and popular application category, that is, filtering all blacklisted applications in the popular game category, and filtering all blacklisted applications in the popular application category.
[0259] If the app store application is in Kids / Teenagers mode and the user's age in the request parameters is 15 years old, the filtering rules associated with the homepage interface identifier include two sub-rules. In addition to the one sub-rule mentioned above, it also includes filtering applications whose applicable age is greater than or equal to the user's age in the request parameters. Then, the rule executor can filter applications in the stored popular game category and popular application category according to the aforementioned two sub-rules associated with the homepage interface identifier.
[0260] For example, the homepage interface identifier is associated with two categories: popular games and popular applications. The first electronic device stores 50 applications in the popular games category and 30 applications in the popular applications category. After filtering by the filtering rules associated with the homepage interface identifier, 5 applications in the popular games category and 5 applications in the popular applications category are obtained.
[0261] The decoration process is used to associate decoration information of the target category of the application associated with the interface identifier 1 according to the decoration rules associated with the interface identifier 1; the decoration process is the process of associating the application identifier with the application's decoration information.
[0262] Assume that the application distribution request is sent by the app market application to the rule executor of the first electronic device when displaying the home screen. The home screen identifier is interface identifier 1. The request parameters include the home screen identifier. The target categories associated with the home screen identifier include two categories: popular games and popular applications. The decoration rules associated with the home screen identifier include three sub-rules: associated application basic information (at least one of name, description, and icon), associated language information (such as Chinese or English), and associated application package information (such as the version number of the application installation package).
[0263] Therefore, the rule executor can decorate applications in popular game categories and popular application categories based on three sub-rules associated with the homepage interface identifier, namely, associated application basic information, associated language information, and associated application package information.
[0264] Combination Figure 17 After determining the filtering and decoration rules that match the interface identifier in the request parameters, the rule executor can also determine the execution mode, which includes serial mode, parallel module, mixed mode or bucket mode. Filtering and decoration processing are performed according to the execution mode; the execution mode can be preset.
[0265] In some embodiments, the rule executor performs filtering and decoration processing in a serial mode. Specifically, the application in the target category is filtered sequentially according to the priority order of the multiple sub-rules corresponding to the filtering rule. After the filtering is completed, the filtered application is decorated according to the priority order of the multiple sub-rules corresponding to the decoration rule (the priority order is preset).
[0266] For example, Figure 17 In the process, the filtering rules associated with interface identifier 1 include filtering applications in the blacklist and filtering applications whose applicable age is greater than or equal to the user's age. The decoration rules associated with interface identifier 1 include associated application basic information, associated language information, and associated application package information. Therefore, the rule executor can filter applications in the target category in sequence according to the priority order of filtering applications in the blacklist first and then filtering applications whose applicable age is greater than or equal to the user's age. After the filtering process is completed, the application obtained by the filtering process can be decorated according to the priority order of associated application basic information, associated language information, and associated application package information.
[0267] Among them, the execution logic of the serial mode is clear, making it more suitable for simple, dependency-free application distribution scenarios.
[0268] In other embodiments, the rule executor performs filtering and decoration processing in parallel mode; specifically, it simultaneously filters applications in the target category according to multiple sub-rules corresponding to the filtering rule, and simultaneously decorates the filtered applications according to multiple sub-rules corresponding to the decoration rule, and finally summarizes the results of each sub-rule.
[0269] For example, the filtering rules associated with interface identifier 1 include filtering applications in the blacklist and filtering applications with an applicable age greater than or equal to the user's age. The decoration rules associated with interface identifier 1 include associating application basic information, associating language information, and associating application package information. Then, the rule executor can simultaneously execute filtering applications in the blacklist, filtering applications with an applicable age greater than or equal to the user's age, associating application basic information, associating language information, and associating application package information, and finally summarizing the results of each sub-rule.
[0270] In the parallel mode, the filtering and decorating rules are executed in no particular order, but rather in complete parallel execution, with the results of each process being aggregated at the end. This mode has an uncertain execution order, high performance, and is well-suited for distribution scenarios where there is no dependency between the filtering and decorating rules.
[0271] In other embodiments, the rule executor may perform filtering and decoration processing in a hybrid mode (serial first then parallel or parallel first then serial). Specifically, the rule executor may first filter applications in the target category according to the priority order of multiple sub-rules corresponding to the filtering rule, and after filtering, simultaneously decorate the filtered applications according to multiple sub-rules corresponding to the decoration rule, and finally summarize the processing results; or, the rule executor may simultaneously filter applications in the target category according to multiple sub-rules corresponding to the filtering rule, and after filtering, decorate the filtered applications according to the priority order of multiple sub-rules corresponding to the decoration rule.
[0272] For example, the filtering rules associated with interface identifier 1 include filtering applications in the blacklist and filtering applications with an applicable age greater than or equal to the user's age. The decoration rules associated with interface identifier 1 include associating application basic information, associating language information, and associating application package information. Then, the rule executor can filter applications in the target category in sequence according to the priority order of filtering applications in the blacklist first and then filtering applications with an applicable age greater than or equal to the user's age. After the filtering is completed, the application basic information, associating language information, and associating application package information are executed at the same time, and finally the results of each sub-rule are summarized.
[0273] Among them, the hybrid mode combines the features of serial and parallel modes, balancing performance and priority, and is the most widely used mode.
[0274] In other embodiments, the rule executor may perform filtering and decoration processing in a bucket pattern (filtering rules or decoration rules within a bucket are executed concurrently, while those between buckets are executed sequentially); specifically, at least one filtering rule or at least one decoration rule is executed each time according to priority order.
[0275] For example, the filtering rules associated with interface identifier 1 include filtering applications in the blacklist and filtering applications whose applicable age is greater than or equal to the user's age. The decoration rules associated with interface identifier 1 include associating application basic information, associating language information, and associating application package information. Then, the rule executor can first execute filtering applications in the blacklist and filtering applications whose applicable age is greater than or equal to the user's age simultaneously, then execute associating application basic information, and finally execute associating language information and associating application package information simultaneously, and finally summarize the processing results.
[0276] In this approach, rules are grouped by priority, with filtering or decorating rules of the same priority placed in the same bucket. Rules within a bucket are executed concurrently, while rules between buckets are executed sequentially based on their priority. This model fully leverages the advantages of priority and parallelism, making it a unique hybrid model.
[0277] Based on the above description, the rule executor filters and decorates the identifiers of N applications in the target category according to the target executable program corresponding to interface identifier 1, and can obtain M distribution results. The M distribution results include M application information corresponding to the M applications, and each application information includes the application's identifier and its decoration information.
[0278] S22, The rule executor sends M distribution results to the application market application of the second electronic device.
[0279] After obtaining M distribution results, the rule executor can send the M distribution results to the application market application of the second electronic device, so that the application market application of the second electronic device can display the relevant interface of the application market application based on the M distribution results.
[0280] S23, The application market displays interface 2 based on M distribution results.
[0281] Upon receiving M distribution results, the app store application can display interface 2 based on the M distribution results.
[0282] For example, if an application distribution request is sent by an app store application when displaying its homepage, and the application categories in the distribution request include both popular games and popular apps, and the M distribution results include the icons and names of applications in the popular games category, and the icons and names of applications in the popular apps category, then, combining... Figure 2 In (a), interface 2 can display the icons and names of applications in the popular game category, as well as the icons and names of applications in the popular app category.
[0283] For example, if an application distribution request is sent by an app store application when displaying its details page, and the application category in the distribution request includes the identifier of application 1, and the M distribution results include the icon, name, rating, category, number of downloads, storage space usage, and age rating of application 1, then, combined with... Figure 3 Interface 2 can display the icon, name, rating, category, number of downloads, storage space usage, and age range of application 1.
[0284] The application determination method of this application includes an interface 1 comprising a filtering rule editing area and a decoration rule editing area. The rule management system can generate multiple filtering rules in response to text editing operations related to multiple filtering rules in the filtering rule editing area, and generate multiple decoration rules in response to text editing operations related to multiple decoration rules in the decoration rule editing area. Thus, by visually editing the rules through text instead of using code, the flexibility of rule editing is improved, the threshold and cost of editing (adding and modifying) filtering and decoration rules are reduced, the scalability and maintainability of filtering and decoration rules are improved, and the efficiency of editing filtering and decoration rules is also improved. After obtaining multiple filtering and decoration rules in text form, the rule management system can also associate the multiple filtering and decoration rules with their respective interface identifiers, thereby preparing data for subsequent determination of filtering and decoration rules corresponding to the interface identifiers in the request parameters, and performing filtering and decoration processing.
[0285] Furthermore, after associating multiple filtering rules and decoration rules with multiple interface identifiers, they can be converted into script programs and sent to the rule parser. After the rule parser receives the multiple filtering rules and decoration rules associated with multiple interface identifiers in script program form, it can also be converted into an executable program, so that the subsequent rule executor can run the executable program to perform the filtering and decoration processing steps. After obtaining the distribution results through filtering and decoration processing, the rule executor can send the distribution results to the application market application of the second electronic device, so that the application market application can display the interface according to the distribution results.
[0286] In addition, if no executable program is generated, the rule parser can also issue an alarm or notify the rule management system, which will then issue an alarm to notify the operations personnel. In this way, the generation of an executable program can be ensured by redistributing multiple association results, thus not affecting subsequent filtering and decoration processes.
[0287] In addition, the execution modes of filtering and decoration rules can be set in advance according to the actual situation, ensuring the flexibility of the filtering and decoration processes.
[0288] Based on the above scenario description, and continuing to combine... Figure 16 After receiving the distribution results, the rule executor can also send the filtering data, decoration data, and distribution results to the rule management system for display, so that the indicator monitoring module can monitor the process and results of filtering and decoration.
[0289] Metric monitoring reflects the execution status of various scenarios and rules, providing operations personnel with sufficient feedback information on application distribution and enabling timely rule adjustments. In addition, statistics such as event tracking data and performance metrics are also reflected in the monitoring.
[0290] Please see Figure 18 , Figure 18 A flowchart illustrating an embodiment of the application determination method provided in this application is shown.
[0291] like Figure 18 As shown, the application determination method provided in this application may include:
[0292] S31. The rule executor generates file 1 by obtaining M distribution results based on the filtering and decoration processes.
[0293] The generated file 1 is in log form; file 1 includes process data for filtering and decoration processing, as well as result data for M distribution results.
[0294] As can be seen, document 1 records which applications were filtered out from the target category of applications and which applications were kept by using the filtering rules and decoration rules corresponding to the interface identifiers in the request parameters, as well as what information was associated with the kept applications, and what the final distribution result was.
[0295] For example, if the interface identifier in the request parameters is the homepage interface identifier, and the target category includes two categories: popular games and popular applications, then file 1 records which applications were filtered out and which applications were kept from all applications in the popular games and popular applications categories stored in the rule executor, and what information was associated with the kept applications, and what the final distribution result is.
[0296] S32. The rule executor sends file 1 to the rule management system.
[0297] After obtaining File 1, the rule executor can also send File 1 to the rule management system, so that the rule management system can adjust at least one of the multiple filtering rules and / or adjust at least one of the multiple decoration rules according to File 1.
[0298] Specifically, the rule management system includes an indicator monitoring module, and the rule executor sends file 1 to the indicator monitoring module of the rule management system.
[0299] S33, Rule Management System Display Interface 3, Interface 3 includes File 1.
[0300] Upon receiving file 1, the rule management system can parse it, convert it into a script, and then convert the script into text for easy display on the rule management system's interface 3.
[0301] According to document 1, interface 3 can display the filtering and decoration processes, as well as the final distribution results, so that operators can understand which applications should be filtered and which should not be filtered, and determine whether the filtering rules and / or decoration rules need to be adjusted, thereby enabling monitoring of the filtering and decoration processes.
[0302] S34. Based on file 1, the rule management system generates an adjusted filter rule 1 in response to text editing operations related to filter rule 1 in the filter rule editing area of interface 1, and / or generates an adjusted decoration rule 1 in response to text editing operations related to decoration rule 1 in the decoration rule editing area.
[0303] Among them, filter rule 1 is at least one of the multiple filter rules that needs to be adjusted; decoration rule 1 is at least one of the multiple decoration rules that needs to be adjusted.
[0304] If filter rule 1 is adjusted, operators can continue to perform text editing operations related to filter rule 1 in the filter rule editing area, and the rule management system can respond to the operation and generate the adjusted filter rule 1.
[0305] Similarly, if decoration rule 1 is adjusted, operators can continue to perform text editing operations related to decoration rule 1 in the decoration rule editing area, and the rule management system can respond to the operation and generate the adjusted decoration rule 1.
[0306] S35. The rule management system updates multiple filtering rules and multiple decoration rules based on the adjusted filtering rule 1 and the adjusted decoration rule 1.
[0307] In this application, the rule executor generates file 1 based on the process of obtaining M distribution results through filtering and decoration processing, and sends it to the rule management system, which displays it through interface 3. When it is determined from file 1 that filtering rule 1 and / or decoration rule 1 need to be adjusted, adjustments can be made in the filtering rule editing area and decoration rule editing area. In this way, the rule management system can update multiple filtering rules and multiple decoration rules. Thus, by adjusting filtering rule 1 and decoration rule 1 with the help of file 1, the correctness and effectiveness of multiple filtering rules and multiple decoration rules can be guaranteed. At the same time, a closed-loop process of editing-distribution-parsing-execution-feedback-adjustment is realized, achieving the goals of flexible configuration, operation visualization, real-time feedback, and freeing up development. This makes rule editing and application distribution simple, convenient and efficient overall.
[0308] Based on the foregoing embodiments, the application determination method provided in this application is described below.
[0309] For example, this application provides an application determination method.
[0310] For ease of explanation, the application method for determining the application in this application can be applied to a first electronic device and executed by the first electronic device, which can be... Figure 6 The electronic device 100 shown.
[0311] Please see Figure 19 , Figure 19 A flowchart illustrating an embodiment of the application determination method provided in this application is shown.
[0312] like Figure 19 As shown, the application determination method provided in this application may include:
[0313] S301. Display the first interface, which includes a first area. The first area is used to edit the first rule. The first rule is used to filter the identifiers of N applications to obtain the identifiers of M applications.
[0314] For details on the implementation of the first interface, please refer to [link / reference]. Figure 9 The relevant description of interface 1 in S11, and Figure 10 The interface shown is described in detail.
[0315] For details on the implementation of the first region, please refer to [link / reference]. Figure 9 The description of the filter rule editing area in S11, and Figure 10 The relevant description of region 1001 shown.
[0316] For details on how the first rule is implemented, please refer to [link / reference]. Figure 9 The relevant description of filtering rules in S11.
[0317] For details on the implementation of S301, please refer to [link / reference]. Figure 7 The relevant description of S11 in the document will not be elaborated here.
[0318] S302. In response to a first operation on a first region, a first executable program related to a first rule is generated. The first operation is a text editing operation related to the first rule. The first executable program is executed by a first electronic device to filter the identifiers of N applications and obtain the identifiers of M applications.
[0319] For details on the implementation of the first operation, please refer to [link / reference]. Figure 9 The description of text editing operations related to filtering rules in S11.
[0320] For details on how the first rule is implemented, please refer to [link / reference]. Figure 9 The relevant description of filtering rules in S11.
[0321] For details on the implementation of the first executable program, please refer to [link / reference]. Figure 9 S16 in the document describes the executable program related to the first rule among multiple executable programs 1.
[0322] For details on the implementation of the identifiers for N applications, please refer to [link / reference]. Figure 9 The description of the identifiers for N applications in S21; for the specific implementation of the identifiers for M applications, please refer to [link to documentation]. Figure 9 The description in S21 regarding the identification of M applications.
[0323] In some embodiments, the first interface further includes a plurality of first elements related to the first rule, and the first operation is to add the plurality of first elements to the first area to form a first rule in text form.
[0324] The first operation is a drag operation; by dragging multiple first elements related to the first rule to the first area, the first rule in text form can be formed.
[0325] For details on the implementation of S302, please refer to [link / reference]. Figure 7 The relevant descriptions of S11-S16 in the document will not be elaborated here.
[0326] The application determination method of this application includes a first interface comprising a first area for editing filtering rules. Text editing operations related to the first rule can be performed in the first area, thereby generating a first executable program based on the text-based first rule in the first area. In this way, the first rule can be edited in a visual manner in text form, rather than in code form, which improves the flexibility of rule editing. It is not limited to developers editing the first rule; other personnel, such as operations personnel, can also edit the first rule, which lowers the threshold and cost of editing the first rule, improves the scalability and maintainability of the first rule, and also improves the efficiency of editing the first rule.
[0327] In some embodiments, the first interface further includes a second area for editing a second rule. The second rule is used to associate the identifiers of M applications with first information, and the first information is used to describe the M applications. The application determination method provided in this application may include:
[0328] In response to a first operation on a first region, a first executable program associated with a first rule is generated; and in response to a second operation on a second region, a second executable program associated with a second rule is generated. The second operation is a text editing operation associated with a second rule. The second executable program is used to associate the identifiers of N applications with first information to obtain information about M applications.
[0329] For details on the implementation of the second region, please refer to [link / reference]. Figure 9 The relevant description of the decoration rule editing area in S11.
[0330] For details on how the second rule is implemented, please refer to [link / reference]. Figure 9 The relevant description of the decoration rules in S11 of the document.
[0331] For details on how the second operation is implemented, please refer to [link / reference]. Figure 9 The description of text editing operations related to decoration rules in S11.
[0332] For details on the implementation of the second executable program, please refer to [link / reference]. Figure 9 S16 in the document describes the executable program related to the second rule in the plurality of executable programs 1.
[0333] In some embodiments, the first interface further includes a plurality of second elements related to the second rule, and the second operation is to add the plurality of second elements to the second area to form a second rule in text form.
[0334] The second operation is a drag operation; by dragging multiple second elements related to the second rule to the second area, a second rule in text form can be formed.
[0335] For details on how to implement the above steps, please refer to [link / reference]. Figure 7 The relevant descriptions of S11-S16 in the document will not be elaborated here.
[0336] In this application, the first interface also includes a second area for editing filtering rules. Text editing operations related to the second rules can be performed in the second area, thereby generating a second executable program based on the text-based second rules in the second area. In this way, the first and second rules can be edited in a visual manner in text form, instead of in code form, which improves the flexibility of rule editing. It is not limited to only developers editing the first and second rules. Other personnel, such as operations personnel, can also edit the first and second rules, which lowers the threshold and cost of editing the first and second rules, improves the scalability and maintainability of the first and second rules, and also improves the efficiency of editing the first and second rules.
[0337] In some embodiments, the application determination method provided in this application may include:
[0338] Upon receiving the second information sent by the second electronic device, the identifiers of N applications undergo a first processing and a second processing to obtain M application information. The second information includes the interface identifier of the second interface. The N applications are applications in the first electronic device related to the second interface. The first processing involves running a first executable program to filter the identifiers of the N applications, and the second processing involves running a second executable program to associate the identifiers of the filtered M applications with the first information. The M application information is then sent to the second electronic device so that the second electronic device displays the second interface based on the M application information.
[0339] The second electronic device is an electronic device that needs to display the second interface; the second information is sent from the application market application of the second electronic device to the first electronic device.
[0340] For details on how the second information is implemented, please refer to [link / reference]. Figure 9 S19 in the document describes the interface identifiers included in the request parameters.
[0341] For details on the implementation of the first processing step, please refer to [link / reference]. Figure 9 The description of the filtering process in S21 is provided; for the specific implementation of the second process, please refer to [link / reference needed]. Figure 9 The relevant description of decorative treatment in S21 of the document.
[0342] For details on how the M application information is implemented, please refer to [link / reference]. Figure 9The relevant description of the M distribution results in S21.
[0343] For details on how the second interface is implemented, please refer to [link / reference]. Figure 9 The relevant description of interface 2 in S23.
[0344] For details on how to implement the above steps, please refer to [link / reference]. Figure 7 The relevant descriptions in S19-S23 are not detailed here.
[0345] In some embodiments, the application determination method provided in this application may include:
[0346] The process of performing first and second processing on the identifiers of N applications to obtain information on M applications is recorded to obtain a first file. Based on the first file, it is determined whether to adjust the first rule and / or the second rule. If the first rule is adjusted, in response to a third operation on the first region, a third executable program related to the adjusted first rule is generated, whereby the third operation is a text editing operation related to the adjusted first rule; the first executable program is replaced with the third executable program. If the second rule is adjusted, in response to a fourth operation on the second region, a fourth executable program related to the adjusted second rule is generated, whereby the fourth operation is a text editing operation related to the adjusted second rule; the second executable program is replaced with the fourth executable program.
[0347] For details on the implementation of the first file, please refer to [link / reference]. Figure 18 The relevant description of document 1 in S31.
[0348] For details on how the third operation is implemented, please refer to [link / reference]. Figure 18 The description of text editing operations related to filtering rules in S34; the specific implementation of the fourth operation can be found in [reference needed]. Figure 18 The relevant descriptions of text editing operations related to decoration rules in S34.
[0349] In some embodiments, the application determination method provided in this application may include: displaying a third interface, the third interface being used to display the contents of a first file.
[0350] For details on how the third interface is implemented, please refer to [link / reference]. Figure 18 The relevant description of interface 3 in S33.
[0351] In addition, if there is no second rule and the second rule is not edited, when the first electronic device receives the second information sent by the second electronic device, it performs a first processing on the identifiers of N applications to obtain the identifiers of M applications, and sends the identifiers of M applications to the second electronic device so that the second electronic device displays the second interface according to the identifiers of M applications.
[0352] For details on how to implement the above steps, please refer to [link / reference]. Figure 18 The relevant descriptions of S31-S35 in the document will not be elaborated here.
[0353] In some embodiments, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines, the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines, and the application determination method provided in this application may include:
[0354] Multiple first subroutines are run sequentially according to the first priority order to perform first processing on the identifiers of N applications to obtain the identifiers of M applications. The first processing is the filtering of the identifiers of N applications by running multiple first subroutines. Multiple second subroutines are run sequentially according to the second priority order to perform second processing on the identifiers of M applications to obtain information about M applications. The second processing is the association of the identifiers of M applications with the first information by running multiple second subroutines.
[0355] The execution mode of the first and second processes mentioned above is serial mode; the specific implementation method of the above steps can be found in [reference needed]. Figure 9 The description in S21 regarding the serial mode for performing filtering and decoration processes, and Figure 17 The relevant description of serial mode in the document.
[0356] In some embodiments, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines, the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines, and the application determination method provided in this application may include:
[0357] Multiple first subroutines are run in parallel to perform first processing on the identifiers of N applications, and multiple second subroutines are run to perform second processing on the identifiers of N applications, resulting in multiple first filtering results and multiple first association results. The first processing is the filtering of the identifiers of N applications by running multiple second subroutines, and the second processing is the association of the identifiers of N applications with first information by running multiple second subroutines. The results of the multiple first filtering results and multiple first association results are summarized to obtain information on M applications.
[0358] The execution mode of the first and second processes mentioned above is parallel mode; the specific implementation method of the above steps can be found in [reference needed]. Figure 9 The description in S21 regarding the parallel mode for performing filtering and decoration processing, and Figure 17 The relevant description of parallel mode in the text.
[0359] In some embodiments, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines, the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines, and the application determination method provided in this application may include:
[0360] Multiple first subroutines are executed sequentially according to the first priority order. First processing is performed on the identifiers of N applications to obtain identifiers of M applications. This first processing involves filtering the identifiers of the N applications using multiple first subroutines. Multiple second subroutines are executed in parallel to perform second processing on the identifiers of the M applications to obtain information on P applications. This second processing involves associating the identifiers of the M applications with the first information using multiple second subroutines. The value of P is related to the number of second subroutines and the value of M. Finally, the results of the P application information are summarized to obtain information on M applications.
[0361] The execution mode of the first and second processes mentioned above is a hybrid mode; the specific implementation method of the above steps can be found in [reference needed]. Figure 9 The description in S21 regarding the use of a hybrid mode for performing filtering and decoration processing, and Figure 17 The relevant description of the hybrid mode in the text.
[0362] In some embodiments, the first rule includes multiple first sub-rules, correspondingly, the first executable program includes multiple first subroutines, the second rule includes multiple second sub-rules, correspondingly, the second executable program includes multiple second subroutines, and the application determination method provided in this application may include:
[0363] Multiple first subroutines and multiple second subroutines are run in a third priority order to perform first and second processing on the identifiers of N applications, resulting in multiple second filtering results and multiple second association results. Each priority in the third priority order corresponds to any number of subroutines from multiple first subroutines or multiple second subroutines. Any number of subroutines corresponding to each priority run in parallel. The priority of multiple first subroutines is higher than the priority of multiple second subroutines. The first processing is the filtering of the identifiers of N applications by running multiple first subroutines. The second processing is the association of the identifiers of M applications with first information by running multiple second subroutines. The results of multiple second filtering results and multiple second association results are summarized to obtain information on M applications.
[0364] The execution mode of the first and second processes mentioned above is the bucket mode; the specific implementation of the above steps can be found in [reference needed]. Figure 9The description in S21 regarding the use of the bucket pattern for performing filtering and decoration processes, and Figure 17 The relevant description of the bucket pattern.
[0365] In some embodiments, the first operation is a text editing operation related to multiple first rules, and the second operation is a text editing operation related to multiple second rules. The application determination method provided in this application may include:
[0366] In response to a first operation on a first region, multiple first rules are obtained, and in response to a second operation on a second region, multiple second rules are obtained. Each of the multiple first rules corresponds one-to-one with multiple interfaces of the second electronic device, and each of the multiple second rules corresponds one-to-one with multiple interfaces of the second electronic device. Multiple interface identifiers are associated one-to-one with each of the multiple first rules, and multiple interface identifiers are also associated one-to-one with each of the multiple second rules, resulting in multiple third association results. Each of the multiple interface identifiers corresponds one-to-one with multiple interfaces of the second electronic device, and the multiple interface identifiers include the interface identifier of the second interface. Based on the multiple third association results, multiple target programs are generated. These target programs include multiple first executable programs associated with multiple interface identifiers, and multiple second executable programs associated with multiple interface identifiers. Each of the multiple first executable programs corresponds one-to-one with each of the multiple first rules, and each of the multiple second executable programs corresponds one-to-one with each of the multiple second rules. Upon receiving second information sent by the second electronic device, a first target program associated with the interface identifier of the second interface in the second information is determined from the multiple target programs. The first target program is run, and the identifiers of N applications undergo first and second processing to obtain M application information.
[0367] For details on the specific implementation methods of various first rules, please refer to [link / reference]. Figure 9 The description of various filtering rules in S11; for specific implementation methods of various second rules, please refer to Figure 9 The relevant descriptions of various decoration rules in S11 of the document.
[0368] For details on the implementation of multiple interface identifiers, please refer to Figure 9 The description of multiple interface identifiers in S12.
[0369] For details on the implementation of various third-party association results, please refer to Figure 9 The description of S12 in the document regarding multiple associated results 1.
[0370] For details on the implementation methods of various target programs, please refer to Figure 9 The relevant description of multiple executable programs 1 in S16.
[0371] For details on the implementation of the first target program, please refer to [link / reference]. Figure 9 The relevant description of the target executable program in S21.
[0372] For details on how to implement the above steps, please refer to [link / reference]. Figure 9 The relevant descriptions of S12-S21 in the document will not be elaborated here.
[0373] In some embodiments, the application determination method provided in this application may include:
[0374] In response to a first operation on a first region, a first script program related to a first rule is generated; the first script program is compiled to obtain a first executable program. In response to a second operation on a second region, a second script program related to a second rule is generated; the second script program is compiled to obtain second executable code.
[0375] For details on the implementation of the first script program, please refer to [link / reference]. Figure 9 The description of the scripts related to the filtering rules in the multiple association results 2 of S13; the specific implementation of the second script can be found in Figure 9 The description of the script program related to the decoration rule in the multiple association results 2 of S13.
[0376] For details on how to implement the above steps, please refer to [link / reference]. Figure 9 The relevant description of S13 in the document will not be elaborated here.
[0377] For example, this application provides an electronic device including a processor; when the processor executes computer code or instructions in memory, the electronic device causes the application determination method described in the preceding embodiments to be executed.
[0378] For example, this application provides an electronic device including: a memory and a processor; the memory is coupled to the processor and is used to store program code or instructions; the processor is used to call the program code or instructions in the memory to cause the electronic device to execute the application determination method in the preceding embodiments.
[0379] For example, this application provides a chip system applied to an electronic device including a memory, a display screen, and sensors; the chip system includes: one or more interface circuits and one or more processors; the interface circuits and processors are interconnected via lines; the interface circuits are used to receive signals from the memory and send signals to the processors, the signals including computer code or instructions stored in the memory; when the processor executes the computer code or instructions, the electronic device executes the application determination method in the preceding embodiments.
[0380] For example, this application provides a computer-readable storage medium storing code or instructions that, when executed on an electronic device, cause the electronic device to implement the application determination method described in the preceding embodiments.
[0381] For example, this application provides a computer program product that, when run on a computer, enables an electronic device to implement the application program determination method described in the preceding embodiments.
[0382] In the above embodiments, all or part of the functionality can be implemented by software, hardware, or a combination of software and hardware. When implemented using software, it can be implemented wholly or partially in the form of a computer program product. A computer program product includes one or more computer codes or instructions. When the computer program code or instructions are loaded and executed on a computer, all or part of the flow or functionality according to this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer code or instructions can be stored in a computer-readable storage medium. 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 disk (SSD)).
[0383] 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 read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A method for determining an application, characterized in that, Applied to a first electronic device, the method includes: The first interface is displayed, which includes a first area. The first area is used to edit a first rule. The first rule is used to filter the identifiers of N applications to obtain the identifiers of M applications. In response to a first operation on the first region, a first executable program related to the first rule is generated based on a rule parser. The first operation is a text editing operation related to the first rule. The first executable program is executed by the first electronic device to perform a first process, which is to filter the identifiers of the N applications to obtain the identifiers of the M applications. The first interface further includes a second area for editing a second rule. This second rule associates the identifiers of the M applications with first information, which describes the M applications. In response to a second operation on the second area, a second executable program related to the second rule is generated based on a rule parser. This second executable program is executed by the first electronic device to perform a second process. The second process involves associating the identifiers of the M applications with the first information to obtain M application information. Upon receiving second information from a second electronic device, the identifiers of the N applications undergo first and second processing to obtain the M application information. The M application information is then sent to the second electronic device to display a second interface based on the M application information. The second information includes an interface identifier for the second interface, which is any one of the homepage, search page, and details page interfaces of an application market application on the second electronic device. The method further includes: performing the first processing and the second processing on the identifiers of the N applications to obtain the information of the M applications and recording the result data of the M distribution results to obtain a first file; determining, based on the first file, whether to adjust the first rule and / or the second rule; if the first rule is adjusted, generating a third executable program related to the adjusted first rule in response to a third operation on the first region, the third operation being a text editing operation related to the adjusted first rule; replacing the first executable program with the third executable program; if the second rule is adjusted, generating a fourth executable program related to the adjusted second rule in response to a fourth operation on the second region, the fourth operation being a text editing operation related to the adjusted second rule; replacing the second executable program with the fourth executable program.
2. The method according to claim 1, characterized in that, The first interface also includes a plurality of first elements related to the first rule, and the first operation is to add the plurality of first elements to the first area to form the first rule in text form.
3. The method according to claim 1 or 2, characterized in that, The second operation is a text editing operation related to the second rule. The second executable program is used to associate the identifiers of the M applications with the first information to obtain information about the M applications.
4. The method according to claim 3, characterized in that, The first interface also includes a plurality of second elements related to the second rule, and the second operation is to add the plurality of second elements to the second area to form the second rule in text form.
5. The method according to claim 3, characterized in that, The N applications are the applications in the first electronic device that are related to the second interface.
6. The method according to claim 5, characterized in that, After recording the process of performing the first and second processing on the identifiers of the N applications to obtain the information of the M applications, and obtaining a first file, the method further includes: A third interface is displayed, which is used to display the contents of the first file.
7. The method according to claim 5 or 6, characterized in that, The first rule includes multiple first sub-rules, and correspondingly, the first executable program includes multiple first subroutines. The second rule includes multiple second sub-rules, and correspondingly, the second executable program includes multiple second subroutines. The first and second processing of the identifiers of the N applications to obtain the information of the M applications includes: The plurality of first subroutines are run sequentially according to the first priority order to perform the first processing on the identifiers of the N applications to obtain the identifiers of M applications. The first processing is the filtering of the identifiers of the N applications by running the plurality of first subroutines. The plurality of second subroutines are run sequentially according to the second priority order to perform the second processing on the identifiers of the M applications to obtain M application information. The second processing is the processing of associating the identifiers of the M applications with the first information by running the plurality of second subroutines.
8. The method according to claim 5 or 6, characterized in that, The first rule includes multiple first sub-rules, and correspondingly, the first executable program includes multiple first subroutines. The second rule includes multiple second sub-rules, and correspondingly, the second executable program includes multiple second subroutines. The first and second processing of the identifiers of the N applications to obtain the information of the M applications includes: The plurality of first subroutines are run in parallel to perform the first processing on the identifiers of the N applications, and the plurality of second subroutines are run to perform the second processing on the identifiers of the N applications, to obtain a plurality of first filtering results and a plurality of first association results. The first processing is the processing of filtering the identifiers of the N applications by running the plurality of second subroutines, and the second processing is the processing of associating the identifiers of the N applications with the first information by running the plurality of second subroutines. The multiple first filtering results and the multiple first association results are aggregated to obtain the M application information.
9. The method according to claim 5 or 6, characterized in that, The first rule includes multiple first sub-rules, and correspondingly, the first executable program includes multiple first subroutines. The second rule includes multiple second sub-rules, and correspondingly, the second executable program includes multiple second subroutines. The first and second processing of the identifiers of the N applications to obtain the information of the M applications includes: The plurality of first subroutines are run sequentially according to the first priority order to perform the first processing on the identifiers of the N applications to obtain the identifiers of M applications. The first processing is the filtering of the identifiers of the N applications by running the plurality of first subroutines. The multiple second subroutines are run in parallel to perform the second processing on the identifiers of the M applications to obtain P application information. The second processing is the process of running the multiple second subroutines to associate the identifiers of the M applications with the first information. The value of P is related to the number of second subroutines and the value of M. The results of the P application information are summarized to obtain the M application information.
10. The method according to claim 5 or 6, characterized in that, The first rule includes multiple first sub-rules, and correspondingly, the first executable program includes multiple first subroutines. The second rule includes multiple second sub-rules, and correspondingly, the second executable program includes multiple second subroutines. The first and second processing of the identifiers of N applications to obtain the information of the M applications includes: The plurality of first subroutines and the plurality of second subroutines are run in a third priority order to perform the first processing and the second processing on the identifiers of the N applications, thereby obtaining a plurality of second filtering results and a plurality of second association results. Each priority in the third priority order corresponds to any number of subroutines from the plurality of first subroutines or the plurality of second subroutines. The arbitrary number of subroutines corresponding to each priority are run in parallel. The priority of the plurality of first subroutines is higher than the priority of the plurality of second subroutines. The first processing is the filtering of the identifiers of the N applications by running the plurality of first subroutines. The second processing is the association of the identifiers of the M applications with the first information by running the plurality of second subroutines. The results of the multiple second filtering results and the multiple second association results are aggregated to obtain M application information items.
11. The method according to claim 5 or 6, characterized in that, The first operation is a text editing operation related to multiple first rules, the second operation is a text editing operation related to multiple second rules, and the step of generating a first executable program related to the first rule in response to the first operation on the first region, and generating a second executable program related to the second rule in response to the second operation on the second region, includes: In response to the first operation on the first region, a plurality of first rules are obtained, and in response to the second operation on the second region, a plurality of second rules are obtained, wherein the plurality of first rules correspond one-to-one with a plurality of interfaces of the second electronic device, and the plurality of second rules correspond one-to-one with a plurality of interfaces of the second electronic device; Multiple interface identifiers are associated one-to-one with multiple first rules, and the multiple interface identifiers are associated one-to-one with multiple second rules to obtain multiple third association results. The multiple interface identifiers correspond one-to-one with multiple interfaces of the second electronic device, and the multiple interface identifiers include the interface identifier of the second interface. Based on the multiple third association results, multiple target programs are generated. The multiple target programs include multiple first executable programs associated with the multiple interface identifiers, and multiple second executable programs associated with the multiple interface identifiers. The multiple first executable programs correspond one-to-one with the multiple first rules, and the multiple second executable programs correspond one-to-one with the multiple second rules. Upon receiving the second information sent by the second electronic device, the first and second processing of the identifiers of the N applications include: Upon receiving the second information sent by the second electronic device, a first target program associated with the interface identifier of the second interface in the second information is determined from the plurality of target programs; Run the first target program, perform the first processing and the second processing on the identifiers of the N applications, and obtain the information of the M applications.
12. The method according to claim 5 or 6, characterized in that, The step of generating the first executable program associated with the first rule in response to the first operation on the first region includes: In response to the first operation on the first region, a first script program related to the first rule is generated; The first script program is compiled to obtain the first executable program.
13. The method according to claim 5 or 6, characterized in that, The step of generating a second executable program related to the second rule in response to a second operation on the second region includes: In response to the second operation on the second region, a second script program related to the second rule is generated; The second script program is compiled to obtain the second executable code.
14. An electronic device, characterized in that, The electronic device includes: one or more processors, and a memory; the memory is coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, the one or more processors invoking the computer instructions to cause the electronic device to perform the method as described in any one of claims 1 to 13.
15. A chip system, characterized in that, The chip system is applied to an electronic device, the chip system including one or more processors, the one or more processors being used to invoke computer instructions to cause the electronic device to perform the method as described in any one of claims 1 to 13.
16. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes instructions that, when executed on an electronic device, cause the electronic device to perform the method as described in any one of claims 1 to 13.