Method and apparatus for generating application navigation service information
By acquiring client-side page navigation data to generate application navigation service information, the problem of users finding function entry points in super applications is solved, and automated navigation service information management is achieved, improving user experience and application applicability.
Patent Information
- Application Number
- CN202210933551.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-04
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2042-08-04
AI Technical Summary
In super apps, users often find it difficult to quickly and accurately locate the entry points for the functions they need. Existing technologies suffer from problems such as untimely synchronization of application navigation service information, difficulties in management and maintenance, and high coupling.
By acquiring page redirection data from the client, application navigation service information is generated. A unified knowledge center is automatically built and maintained by the server, reducing manpower and time costs and supporting the management of navigation service information for multiple application versions.
It improves the user experience, reduces the complexity and coupling of application navigation service information maintenance, and ensures the timeliness and accuracy of information.
Smart Images

Figure CN115374378B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of Internet technology, and in particular to a method and apparatus for generating application navigation service information. Background Technology
[0002] With the rise of mobile applications, more and more applications support increased functionality and expanded scale. This has led to situations where multiple third-party applications run within the same large application in a "mini-program" format, allowing users to easily achieve the corresponding functions without having to download the third-party applications separately. However, when an application contains numerous pages providing different functions, it becomes difficult for users to quickly and accurately find the entry point for the function they want. Summary of the Invention
[0003] In view of this, this specification provides a method for generating application navigation service information to address the shortcomings of related technologies.
[0004] Specifically, this specification is implemented through the following technical solution:
[0005] According to a first aspect of the embodiments of this specification, a method for generating application navigation service information is provided, the application navigation service information being used to indicate navigation logic between pages contained in an application, the method comprising:
[0006] Obtain page jump data reported by at least a portion of the clients of the application. The page jump data is generated by the corresponding clients in response to the page jump operation performed by the local user in the application. The page jump operation is used to trigger the page jump entry to realize page jump.
[0007] The obtained page jump data is aggregated, and the application navigation service information is generated based on the aggregated page jump data.
[0008] According to a second aspect of the embodiments of this specification, an apparatus for generating application navigation service information is provided, the application navigation service information being used to indicate navigation logic between pages contained in an application, the apparatus comprising:
[0009] A page jump data acquisition unit is used to acquire page jump data reported by at least a portion of the clients of the application. The page jump data is generated by the corresponding client in response to the page jump operation performed by the local user in the application. The page jump operation is used to trigger the page jump entry to realize page jump.
[0010] The navigation service information generation unit is used to summarize the obtained page jump data and generate the application navigation service information based on the summarized page jump data.
[0011] According to a third aspect of the embodiments of this specification, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in the first aspect.
[0012] According to a fourth aspect of the embodiments of this specification, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the method described in the first aspect.
[0013] In the technical solution provided in this specification, by acquiring and summarizing the page jump data sent by the application's client to generate application navigation service information, application developers do not need to spend additional manpower and time to collect and maintain application navigation service information, while also ensuring the timeliness of application navigation service information and improving the user's operating experience.
[0014] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this specification. Attached Figure Description
[0015] Figure 1 This is a schematic diagram illustrating the structure of an application navigation service information generation system according to an exemplary embodiment of this specification;
[0016] Figure 2 This is a flowchart illustrating an exemplary embodiment of a method for generating application navigation service information.
[0017] Figure 3 This is a schematic diagram illustrating an exemplary embodiment of a method for generating application navigation service information.
[0018] Figures 4A-4C This is a schematic diagram illustrating an exemplary embodiment of generating application navigation service information in the form of a directed tree, as shown in this specification.
[0019] Figure 5 This is a schematic diagram illustrating each functional module and its corresponding functional-level navigation service information, as shown in an exemplary embodiment of this specification.
[0020] Figure 6 This is a schematic diagram illustrating an application interface navigation relationship in an exemplary embodiment of this specification;
[0021] Figure 7 This is a schematic structural diagram of an electronic device shown in an exemplary embodiment of this specification;
[0022] Figure 8This is a schematic diagram illustrating the structure of an apparatus for generating application navigation service information, as shown in an exemplary embodiment of this specification. Detailed Implementation
[0023] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this specification. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this specification as detailed in the appended claims.
[0024] The terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of this specification. The singular forms “a,” “the,” and “the” as used in this specification and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.
[0025] It should be understood that although the terms first, second, third, etc., may be used in this specification to describe various information, this information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, without departing from the scope of this specification, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to determination."
[0026] In related technologies, organizational support is typically employed, such as building a unified knowledge center to manually collect and maintain relevant navigation service information, thereby providing users with a path to access a specific function. However, when dealing with "super apps" with a massive user base, capable of supporting various third-party applications and experiencing an explosive application ecosystem, this approach presents the following problems: 1. For super apps supporting independent third-party applications, each independent third-party application is developed and operated by an independent organization, and their upgrades and iterations are concurrent. Furthermore, when these independent third-party application organizations upgrade their applications, their application navigation service information cannot be synchronized with the super app in a timely and accurate manner; this often results in users receiving outdated and incorrect application navigation service information. 2. Depending on the user's application upgrade intentions or the application version compatible with their device model, different users often use different application versions. The super app also needs to provide corresponding application navigation service information for users with different versions, making the management and maintenance of application navigation service information for multiple application versions difficult. 3. Independent third-party applications themselves may also be super apps, resulting in high coupling between the super app and independent third-party applications, making the application navigation service information synchronization process complex and inefficient.
[0027] The aforementioned application navigation service information, also referred to as "navigation service information," can be used to indicate the navigation logic between pages within an application. For example, based on the application navigation service information "Main Page - Settings - Personal Profile - Change Username," users can directly understand how to quickly and accurately access the target page for changing their username while browsing the main page. This avoids the effort and time cost users spend searching for the target page on other unrelated pages, thereby improving the user experience within the application.
[0028] To address the problems in the aforementioned related technologies, this specification provides a scheme for generating application navigation service information, which is based on, for example... Figure 1 The application navigation service information generation system shown is implemented. Figure 1 This is a schematic diagram illustrating the structure of an application navigation service information generation system according to an exemplary embodiment of this description. For example... Figure 1 As shown, it may include client group 11 and server 12.
[0029] Client group 11 includes one or more electronic devices running any of the applications. During system operation, any client in client group 11 can upload page data information corresponding to any of the applications to server 12, and can also send user-inputted questions about application navigation service information to server 12, and receive corresponding application navigation service information. Users can use electronic devices such as mobile phones, tablets, laptops, PDAs (Personal Digital Assistants), wearable devices (such as smart glasses, smartwatches, etc.), and one or more embodiments of this specification are not limited thereto.
[0030] Server 12 can be a physical server containing a single host, or it can be a virtual server hosted in a host cluster. During system operation, server 12 maintains application navigation service information. It can generate new application navigation service information based on page redirection data from client group 11, and return application navigation service information that may solve a question initiated by any client in client group 11 regarding application navigation service information. For example, when client 1 in client group 11 uploads page redirection data with a reimbursement page to server 12, causing server 12 to generate application navigation service information "Main Page - Property - Reimbursement", when a client in client group 11 initiates a question with the content "I want reimbursement" to server 12, server 12 can use natural language processing technology to extract the keyword "reimbursement", match it with the existing application navigation service information to obtain the application navigation service information "Main Page - Property - Reimbursement", and return the matched application navigation service information to client group 11 in the form of a path.
[0031] The following is combined with Figure 2 The embodiments shown illustrate the technical solutions of this specification. Figure 2 This is a flowchart illustrating an exemplary embodiment of a method for generating application navigation service information, as shown in this specification. Figure 2 As shown, the application navigation service information described above is used to indicate the navigation logic between pages contained in the application. This method may include the following steps:
[0032] S201, obtain page jump data reported by at least some clients of the application respectively. The page jump data is generated by the corresponding client in response to the page jump operation performed by the local user in the application. The page jump operation is used to trigger the page jump entry to realize page jump.
[0033] The aforementioned application runs as a client on one or more local users' electronic devices. When a local user performs a page navigation operation within the application, the corresponding client generates page navigation data corresponding to that operation and sends it to the server. The page navigation operation can trigger a page navigation entry point on a specific page within the application to navigate to another page. This page navigation entry point can exist in the form of a button, hyperlink text, or third-party controls, and this specification does not impose any restrictions on this. For example, when a local user clicks a button named "Settings" on the application's main page, they can navigate to the corresponding system settings page, generating page navigation data describing the navigation operation. Furthermore, this specification does not limit the timing of sending the page navigation data to the server; the page navigation data can be sent immediately after generation, at preset intervals, or accumulated to a preset quantity before being sent all at once.
[0034] The page redirection data mentioned above can be obtained through the relevant data collection device in the aforementioned client.
[0035] In one embodiment, the client includes a data tracking component. This component, a lightweight data component, can be used to collect page navigation operations performed by local users within the application and generate corresponding tracking data. This allows the server to obtain tracking data reported by the tracking components of at least a portion of the clients within the application. The tracking data can contain different data fields generated according to preset data generation rules to adapt to functional requirements in different usage scenarios.
[0036] On one hand, the aforementioned data generation rules define at least the following fields: application identifier, application version, root page, current page, redirected page, and page redirection entry. Specifically, the application identifier field represents the application's identity ID, which is globally unique for each application; the application version field represents the version number ID of the application currently uploading the event tracking data, which is unique within the same application and can be customized by the application organizer; the root page field represents the application's root page ID, i.e., the main page, from which all subpages and functions originate; the current page field represents the current page ID when uploading event tracking data; since uploading event tracking data can be triggered by a local user clicking a page redirection entry, each page redirection entry can be considered a page, and this page's ID is the current page ID; the redirected page field represents the page ID to which the user is redirected after clicking a page redirection entry; and the page redirection entry field represents the ID number of the page redirection entry clicked by the user, which is unique within the application and can be customized by the application organizer. Those skilled in the art will understand that, apart from the pages corresponding to the root page field, the current page field, and the page to jump field, each page in the application has a globally unique ID, and the full path of the page can be used as the ID of each page.
[0037] On the other hand, since users have difficulty perceiving and remembering the values of the aforementioned page navigation entry fields, the data generation rules can also define a page navigation entry name field that the user clicks. This improves the readability of the final application navigation service information. For example, application navigation service information can be displayed to the user in the form of a path "XYZ", where X, Y, and Z each correspond to a page navigation entry name field. This field allows users to quickly and accurately find the corresponding page navigation entry on the corresponding page. Furthermore, when the aforementioned tracking component corresponds to only a specific application, the application version field of the tracking data generated for that application is fixed, so it is not necessary to generate an application version field.
[0038] Figure 3 This is a schematic diagram illustrating an exemplary embodiment of a method for generating application navigation service information. The application has version number v1 and contains four pages: "page1", "page2", "page3", and "page4", and six page navigation entries "enterA" to "enterF". It is assumed that "page1" is the main page of the application. Each page has a corresponding page navigation entry, and each page navigation entry has a unique page navigation relationship (i.e., ...). Figure 3 The connection lines 1-6 in the diagram are used to allow local users to be redirected to a unique corresponding page after triggering any page redirection entry through clicking or other means.
[0039] The following example demonstrates how a client generates event tracking data. (Combined with...) Figure 3 The technical solutions related to the above embodiments in this specification are described in detail below:
[0040] First, assuming the above data generation rules define fields for application version, root page, current page, page navigation entry point, and navigation page, when a local user triggers the page navigation entry point "enterA" by clicking a button on the main interface "page1" to navigate to "page2", the corresponding event tracking component in the client can generate event tracking data based on this page navigation operation and the above data generation rules.<v1,page1,page1,enterA,page2> "To represent page jump relationship 1, if the user then clicks the page jump entry "enterB", "enterC", "enterD", "enterE" and "enterF" in succession, then 5 more similar tracking data can be generated to represent page jump relationships 2-6.
[0041] Then, the corresponding client uploads all the generated event tracking data to the server. Those skilled in the art will understand that within a specific application, the application identifier is fixed, and the application version can be continuously updated over time. Therefore, "determining unique event tracking data based on the application identifier and the page navigation entry field" can be used as the deduplication logic of the event tracking component, enabling the component to perform deduplication on all event tracking data. In other words, once the event tracking data for a specific page navigation entry under a certain version of the application is successfully uploaded, it does not need to be uploaded again, thus optimizing client performance and network bandwidth usage. Furthermore, when the application is updated and the version number is upgraded, the event tracking data for that page navigation entry will be re-uploaded.
[0042] S202, summarize the obtained page jump data, and generate the application navigation service information based on the summarized page jump data.
[0043] Even if the page redirection data in the same client has already been deduplicated once, different clients may still upload the same page redirection data. Therefore, the server can perform a deduplication operation on the page redirection data from different clients again before aggregating the page redirection data uploaded by all clients, in order to ensure the validity of all content in the final page redirection data.
[0044] The aforementioned application navigation service information can be represented in different data structures according to actual needs.
[0045] In one embodiment, the application navigation service information can be presented as a string text, which is similar to the data type of the page jump data. This allows developers to perform no further processing operations, making the implementation threshold low. However, it also means that the readability of the application navigation service information is poor, and developers cannot easily maintain it.
[0046] In another embodiment, the application navigation service information can be presented as a directed tree, with page navigation entry points within the application's pages considered as nodes in the tree structure. The directed edges between nodes in the tree structure correspond to page navigation relationships between the respective pages. In this embodiment, since the process of connecting any node from the root node in a directed tree is similar to the process of accessing other pages from the main page in an application, the directed tree format of the application navigation service information offers better readability for developers. It also facilitates the determination of target page navigation entry points and the backtracking operation of functional navigation service information as described below.
[0047] To facilitate the construction of a directed tree-like application navigation service information, the client can add the page identifier of the previous page, the entry identifier of the page jump entry contained in the previous page, and the page identifier of the next page to each piece of page jump data. This means that the process of generating the application navigation service information is equivalent to creating corresponding nodes for the entry identifiers contained in the page jump data, generating directed edges from the nodes corresponding to the page jump entry in the previous page to the nodes corresponding to the page jump entry in the next page, thus forming a directed graph. The directed graph is then converted into a directed tree-like application navigation service information.
[0048] Figures 4A-4C This is an exemplary embodiment illustrating a method for generating application navigation service information in the form of a directed tree.
[0049] in, Figure 4A The nodes and edges of a directed graph are based on Figure 3 Page redirection data generation.
[0050] The following example demonstrates how a client generates event tracking data. (Combined with...) Figures 4A-4C This specification provides a detailed description of the technical solution for "converting directed graphs into directed tree form of application navigation service information" in the above embodiments:
[0051] First, such as Figure 4A As shown, all nodes in the tree are pre-built, that is... Figure 3The page navigation entry points are the nodes in a tree structure. The entry identifier for each entry point is a unique ID of the tree node. By traversing the six page navigation entries mentioned above, we take `enterAId` and `enterFId` to ultimately obtain six nodes. Other fields are treated as node attributes. Simultaneously, all edges between nodes are constructed. That is, if the content of the `nextPageId` field of node `enterA` is equal to the content of the `curPageId` field of node `enterB`, then there will be a directed edge from node `enterA` to node `enterB`. Since a page may have multiple page navigation entry points, the number of directed edges can be greater than or equal to six. After all edges are constructed, a tree structure will be formed as shown below. Figure 4A The directed graph shown.
[0052] Then, as Figure 4B As shown in the diagram, a virtual root node named "root" is set up. This root node contains attributes.<version,rootPageId> The root node points to the enter key contained in rootPageId; based on Figure 3 As can be seen from the embodiments, the root node is...<v1,page1Id> The root node points to both enterA and enterB.
[0053] Secondly, such as Figure 4C As shown, the directed graph is converted into a directed tree by using a directed graph shortest path algorithm to find the shortest path from other nodes to the root node. If paths are identical, any path can be selected. The edges containing these paths are retained, and all other edges are deleted from the directed graph. This yields the directed tree required by this patent. Of course, this specification does not limit the specific implementation of the above shortest path algorithm. Those skilled in the art can determine different shortest path algorithms, such as Dijkstra's or Floyd-Warshall's, based on the actual situation.
[0054] The above summaries can be divided into module summaries and version summaries based on different applications and different versions within the same application.
[0055] When an application contains a main functional module containing the main page and at least one secondary functional module, the server can obtain application navigation service information for each functional module based on a module-by-module aggregation method.
[0056] In one embodiment, the server can summarize the acquired page navigation data into modules according to the functional modules to which they belong; and generate corresponding functional-level navigation service information for the page navigation data corresponding to each functional module; and establish a mapping relationship between the functional-level navigation service information corresponding to the main functional module and the functional-level navigation service information corresponding to each subordinate functional module; wherein, the application navigation service information includes all functional-level navigation service information.
[0057] Figure 5 This is a schematic diagram illustrating various functional modules and their corresponding functional-level navigation service information in an exemplary embodiment.
[0058] The application includes a main function module 510 and secondary function modules 520, 530, and 540.
[0059] The following example illustrates how each functional module in an application generates corresponding functional-level navigation service information. Figure 5 The technical solutions involved in the above embodiments in this specification are described in detail below:
[0060] In one embodiment, it is assumed that the server does not have any existing application navigation service information at this time. The server can determine whether the page jump data comes from the main functional module 510 or the secondary functional modules 520, 530, or 540 based on the application identifier carried in the page jump data. When the server receives four page jump data entries, and these four entries come from the main functional module 510, secondary functional modules 520, 530, and 540 respectively, the server can generate functional-level navigation service information 511, 521, 531, and 541 corresponding to the main functional module 510, secondary functional modules 520, 530, and 540 respectively. The root node of the functional-level navigation service information of the secondary functional modules 520, 530, and 540 can be associated with the corresponding functional-level navigation service information of the main functional module 510, so that the application navigation service information of the secondary functional modules 520, 530, and 540 includes not only their own functional-level navigation service information but also the functional-level navigation service information of the main functional module 510.
[0061] The server can also obtain application navigation service information for each functional module based on version aggregation.
[0062] In one embodiment, any functional module may have multiple versions. The server can aggregate the page navigation data corresponding to any of the above functional modules by version; and for each version of the page navigation data, generate functional-level navigation service information corresponding to any of the functional modules.
[0063] The following example illustrates how multiple versions of functional modules within an application generate corresponding functional-level navigation service information. (Combined with...) Figure 5 The technical solutions involved in the above embodiments in this specification are described in detail below:
[0064] In one embodiment, it is assumed that the server does not have any existing application navigation service information at this time. The server can determine the version number of the functional module that uploaded the page jump data based on the application version information carried in the page jump data. Then, when the server receives two page jump data, and the two page jump data come from the first version "V1" and the second version "V2" of the main functional module 510 respectively, the server can generate functional-level navigation service information 511 and 512 corresponding to the "V1" and "V2" versions of the main functional module respectively based on the page jump data.
[0065] The above-mentioned module-based and version-based summaries can be performed simultaneously, enabling the server to return application navigation service information corresponding to different functional modules of different versions of the application in response to local users' application navigation requests.
[0066] In one embodiment, after receiving an application navigation request initiated by a local user from the application's main page, the server can determine a candidate set of corresponding functional-level navigation service information based on the version information of each functional module in the local user's client. This candidate set contains all functional-level navigation service information matching the version information. Then, based on the attribute information of the page jump entry contained in each functional-level navigation service information in the candidate set, the server can determine the target page jump entry matching the query request. Then, the server backtracks through the functional-level navigation service information corresponding to the target page jump entry until it reaches the root page jump entry in that functional-level navigation service information; wherein, there is no page jump entry in that functional-level navigation service information that can jump to the page where the root page jump entry is located. The following is in conjunction with... Figure 6The application interface navigation relationships shown describe the process of the server handling user search requests: Assume that a certain version of an application has at least five interfaces 610-650, each with a corresponding page navigation entry to redirect the application to other interfaces. When a local user enters the question "How to reset password" in the search box 611 of interface 610, the corresponding client can upload the question, along with the version information of the application's main and secondary functional modules, to the server. The server determines all functional-level navigation service information matching the aforementioned version information. Simultaneously, the server can extract the keywords "reset" and "password" from the question using natural language processing technology, and perform similarity calculations on the page navigation entries contained in all the aforementioned functional-level navigation service information. Based on the similarity score, one or more matching page navigation entries are selected. The server can obtain a page navigation entry similar to "change password" 631 in interface 630, based on the similarity calculation algorithm.
[0067] In one embodiment, if the root page navigation entry point is the main page, the application navigation request is responded to according to the path formed by the backtracking process. The following example illustrates a local user querying application navigation service information corresponding to a main function module. Combined with... Figure 5 and Figure 6 The technical solutions in the above embodiments described in this specification are explained in detail: When two local users, A and B, respectively use the main function modules 511 and 512 (versions "V1" and "V2"), and both initiate application navigation requests containing main function module version information and the question "How to log out of the account," the server can return the path "Main Page - My (i.e., page jump entry 613) - Account Management (i.e., page jump entry 621) - Log out of this account (i.e., page jump entry 632)" to local user A. Assuming that after an update, the main function module 512 changes the name of the reimbursement application page jump entry 621 from "Account Management" to "Account Center," then the server can return the path "Main Page - My - Account Center - Log out of this account" to local user B as the response information for the application navigation request.
[0068] If the root page navigation entry point is not the main page, then based on the mapping relationship between the functional-level navigation service information corresponding to the target page navigation entry point and the functional-level navigation service information corresponding to the main functional module, the process continues to backtrack within the functional-level navigation service information corresponding to the main functional module until the root page navigation entry point in that functional-level navigation service information is reached; and the application navigation request is responded to based on the path formed by the backtracking process. The following example illustrates a local user querying application navigation service information corresponding to a functional module. Figure 5 and Figure 6The technical solutions in the above embodiments described in this specification are explained in detail as follows: Assuming that WealthPass 612 is a third-party mini-program in the above application, when local user A uses the main function module 511 (version "V1") and the secondary function module 533 (version "V3"), and initiates an application navigation request containing version information of the main function module and the secondary function module, as well as the question "How to reimburse expenses", the server can find the target page jump entry 651 named "Reimbursement Application" based on the function-level navigation service information of the secondary function module, and take the path "Main Page - Bill Management (i.e., page jump entry 640) - Reimbursement Application" formed during the backtracking process of the function-level navigation service information corresponding to the target page jump entry as the first path. Then, based on the mapping relationship between the function-level navigation service information corresponding to the target page jump entry and the function-level navigation service information corresponding to the main function module, the server continues to backtrack in the function-level navigation service information corresponding to the main function module to obtain the path "Main Page - WealthPass (i.e., page jump entry 612)" formed during the backtracking process as the second path. Ultimately, the server can return the path "Main Page - Wealth Pass - Bill Management - Reimbursement Application" obtained by combining the first and second paths mentioned above to local user A as the response information for the application navigation request.
[0069] As can be seen from the above embodiments, the method for generating application navigation service information in this specification, by having the client upload page jump data, allows the server to automatically build a unified knowledge center and maintain the corresponding application navigation service information. This eliminates the need for manual communication and synchronization between the application's organizers, saving significant manpower and time costs. Furthermore, the application navigation service information in this specification can be obtained by aggregating the aforementioned page jump data. The functional-level navigation service information within this information can support multiple versions of various functional modules within the same application, enabling users to accurately obtain navigation paths matching the version numbers of each functional module in their application, thus improving user experience and the applicability of the application. In addition, besides the preset data generation rules involved in the aforementioned tracking components, the coupling between the main functional modules and secondary functional modules in the application is reduced, allowing each module's organizer to operate independently, without interference or dependency, and enabling autonomous iterative upgrades.
[0070] Figure 7 This is a schematic structural diagram of an electronic device according to an exemplary embodiment. Please refer to... Figure 7At the hardware level, the electronic device includes a processor, internal bus, network interface, memory, and non-volatile memory, and may also include other necessary hardware. The processor reads the corresponding computer program from the non-volatile memory into memory and then runs it, forming a device at the logical level to generate application navigation service information. Of course, in addition to software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. That is to say, the execution subject of the following processing flow is not limited to individual logic units, but can also be hardware or logic devices.
[0071] Corresponding to the embodiments of the methods for generating application navigation service information described above, this specification also provides embodiments of apparatus for generating application navigation service information.
[0072] Please refer to Figure 8 , Figure 8 This is a schematic diagram of the structure of an apparatus for generating application navigation service information, as illustrated in an exemplary embodiment. Figure 8 As shown, the aforementioned application navigation service information is used to indicate the navigation logic between pages contained in the application, and the device may include:
[0073] The page jump data acquisition unit 801 is used to acquire page jump data reported by at least a portion of the clients of the application. The page jump data is generated by the corresponding client in response to the page jump operation performed by the local user in the application. The page jump operation is used to trigger the page jump entry to realize page jump.
[0074] The navigation service information generation unit 802 is used to summarize the obtained page jump data and generate the application navigation service information based on the summarized page jump data.
[0075] Optionally, the client is equipped with a tracking component, which is used to collect page navigation operations performed by the local user within the application to generate corresponding tracking data; the page navigation data acquisition unit 801 is specifically used for:
[0076] Obtain the event tracking data reported by the event tracking components of at least a portion of the clients of the application.
[0077] Optionally, the application navigation service information is in the form of a directed tree, where the nodes in the tree structure are page jump entry points in the pages contained in the application, and the directed edges between the nodes in the tree structure correspond to the page jump relationships between the corresponding pages.
[0078] Optionally, each page jump data entry includes the page identifier of the page before the jump, the entry identifier of the page jump entry contained in the page before the jump, and the page identifier of the page after the jump; the navigation service information generation unit 802 is specifically used for:
[0079] For the entry identifiers contained in the page jump data, corresponding nodes are established, and directed edges are generated from the nodes corresponding to the page jump entry in the page before the jump to the nodes corresponding to the page jump entry in the page after the jump, so as to form a directed graph.
[0080] The directed graph is converted into a directed tree form of the application navigation service information.
[0081] Optionally, the application includes a main functional module containing the main page and at least one secondary functional module; the navigation service information generation unit 802 is specifically used for:
[0082] The obtained page redirection data is summarized by module according to its functional module;
[0083] For each functional module's page navigation data, corresponding functional-level navigation service information is generated; and a mapping relationship is established between the functional-level navigation service information corresponding to the main functional module and the functional-level navigation service information corresponding to each subordinate functional module; wherein, the application navigation service information includes all functional-level navigation service information.
[0084] Optionally, any functional module may have multiple versions, and the navigation service information generation unit 802 is specifically used for:
[0085] The aggregated page jump data includes: aggregating the page jump data corresponding to any of the functional modules by version;
[0086] The step of generating the application navigation service information based on the aggregated page jump data includes: generating function-level navigation service information corresponding to any functional module for each version of the page jump data.
[0087] Optionally, the device further includes:
[0088] Application navigation request response unit 803 is used to receive an application navigation request initiated by the local user from the main page of the application;
[0089] Based on the version information of each functional module in the local user's client, a corresponding candidate set of functional-level navigation service information is determined. This candidate set contains all functional-level navigation service information that matches the version information.
[0090] Based on the attribute information of the page jump entry contained in each functional navigation service information in the candidate set of functional navigation service information, determine the target page jump entry that matches the query request;
[0091] The process involves backtracking through the functional-level navigation service information corresponding to the target page jump entry until the root page jump entry in that functional-level navigation service information is reached; wherein, there is no page jump entry in that functional-level navigation service information that can jump to the page where the root page jump entry is located.
[0092] If the root page jump entry is located on the main page, then the application navigation request is responded to according to the path formed by the backtracking process;
[0093] If the page where the root page jump entry is located is not the main page, then based on the mapping relationship between the functional-level navigation service information corresponding to the target page jump entry and the functional-level navigation service information corresponding to the main functional module, the process continues to backtrack in the functional-level navigation service information corresponding to the main functional module until the root page jump entry in the functional-level navigation service information is reached; and the application navigation request is responded to based on the path formed by the backtracking process.
[0094] The embodiments of the subject matter and functional operation described in this specification can be implemented in the following ways: digital electronic circuits, tangibly embodied computer software or firmware, computer hardware including the structures disclosed in this specification and their structural equivalents, or combinations thereof. Embodiments of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible, non-transitory program carrier for execution by a data processing apparatus or for controlling the operation of a data processing apparatus. Alternatively or additionally, the program instructions may be encoded on artificially generated propagation signals, such as machine-generated electrical, optical, or electromagnetic signals, which are generated to encode information and transmit it to a suitable receiving device for execution by the data processing apparatus. The computer storage medium may be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or combinations thereof.
[0095] The processing and logic flow described in this specification can be executed by one or more programmable computers that execute one or more computer programs to perform corresponding functions by operating on input data and generating output. The processing and logic flow can also be executed by dedicated logic circuitry—such as FPGAs (Field-Programmable Gate Arrays) or ASICs (Application-Specific Integrated Circuits), and the device can also be implemented as dedicated logic circuitry.
[0096] Suitable computers for executing computer programs include, for example, general-purpose and / or special-purpose microprocessors, or any other type of central processing unit. Typically, the central processing unit receives instructions and data from read-only memory and / or random access memory. The basic components of a computer include a central processing unit for implementing or executing instructions and one or more memory devices for storing instructions and data. Typically, a computer will also include one or more mass storage devices for storing data, such as disks, magneto-optical disks, or optical disks, or the computer will be operatively coupled to such mass storage devices to receive data from or transfer data to them, or both. However, a computer is not required to have such devices. Furthermore, a computer can be embedded in another device, such as a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device such as a universal serial bus (USB) flash drive, to name a few.
[0097] Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and memory devices, such as semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices), magnetic disks (e.g., internal hard disks or removable disks), magneto-optical disks, and CD-ROM and DVD-ROM disks. Processors and memory may be supplemented by or incorporated into dedicated logic circuitry.
[0098] While this specification contains numerous specific implementation details, these should not be construed as limiting the scope of any invention or the scope of the claims, but rather are primarily intended to describe features of specific embodiments of a particular invention. Certain features described in the various embodiments herein may also be implemented in combination in a single embodiment. Conversely, various features described in a single embodiment may also be implemented separately in various embodiments or in any suitable sub-combination. Furthermore, while features may function in certain combinations as described above and even initially claimed in this way, one or more features from a claimed combination may be removed from that combination in some cases, and a claimed combination may refer to a sub-combination or a variation thereof.
[0099] Similarly, although the operations are depicted in a specific order in the accompanying drawings, this should not be construed as requiring these operations to be performed in the specific order shown or sequentially, or requiring all illustrated operations to be performed to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. Furthermore, the separation of various system modules and components in the above embodiments should not be construed as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
[0100] Thus, specific embodiments of the subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve the desired result. Furthermore, the processes depicted in the drawings are not necessarily shown in a specific order or sequence to achieve the desired result. In some implementations, multitasking and parallel processing may be advantageous.
[0101] The above description is merely a preferred embodiment of this specification and is not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of protection of this specification.
Claims
1. A method of generating application navigation service information, characterized by, The application navigation service information is used for indicating a jump logic between pages contained in an application, the application navigation service information is in a form of a directed tree, nodes in the tree structure are page jump entrances in the pages contained in the application, and directed edges between the nodes in the tree structure correspond to page jump relationships between corresponding pages; The method comprises: Obtaining page jump data respectively reported by at least part of clients of the application, the page jump data being generated by the corresponding clients in response to a page jump operation implemented by a local user within the application, the page jump operation being used for triggering a page jump entrance to realize page jump, and each piece of page jump data containing a page identifier of a pre-jump page, an entrance identifier of a page jump entrance contained in the pre-jump page, and a page identifier of a post-jump page; Summarizing the obtained page jump data and generating the application navigation service information according to the summarized page jump data; The generation of the application navigation service information comprises: Establishing corresponding nodes for the entrance identifiers contained in the page jump data and generating directed edges from a node corresponding to a page jump entrance in a pre-jump page to a node corresponding to a page jump entrance in a post-jump page to form a directed graph; Converting the directed graph into the application navigation service information in a form of a directed tree.
2. The method of claim 1, wherein, The client is provided with a burying point component, and the burying point component is used for collecting the page jump operation implemented by the local user within the application to generate corresponding burying point data; The obtaining of the page jump data respectively reported by at least part of clients of the application comprises: Obtaining burying point data respectively reported by the burying point components of at least part of clients of the application.
3. The method of claim 1, wherein, The application contains a main function module in which a main page is located and at least one slave function module; The summarizing of the obtained page jump data comprises: performing module summarizing on the obtained page jump data according to the function modules to which the page jump data belong; The generation of the application navigation service information according to the summarized page jump data comprises: generating corresponding function level navigation service information for the page jump data corresponding to each function module respectively; and establishing a mapping relationship between the function level navigation service information corresponding to the main function module and the function level navigation service information corresponding to each slave function module; wherein the application navigation service information comprises all the function level navigation service information.
4. The method of claim 3, wherein, There are multiple versions of any function module; The summarizing of the obtained page jump data comprises: performing version summarizing on the page jump data corresponding to the any function module; The generation of the application navigation service information according to the summarized page jump data comprises: generating the function level navigation service information corresponding to the any function module for the page jump data of each version respectively.
5. The method of claim 4, wherein, Further comprising: Receiving an application navigation request initiated by the local user from a main page of the application; Determining a corresponding function level navigation service information candidate set according to version information of each function module in the client of the local user, the candidate set containing all function level navigation service information matching the version information; The method comprises: Obtaining page jump data respectively reported by at least part of clients of the application, the page jump data being generated by the corresponding clients in response to a page jump operation implemented by a local user within the application, the page jump operation being used for triggering a page jump entrance to realize page jump, and each piece of page jump data containing a page identifier of a pre-jump page, an entrance identifier of a page jump entrance contained in the pre-jump page, and a page identifier of a post-jump page; Summarizing the obtained page jump data and generating the application navigation service information according to the summarized page jump data; The generation of the application navigation service information comprises: Establishing corresponding nodes for the entrance identifiers contained in the page jump data and generating directed edges from a node corresponding to a page jump entrance in a pre-jump page to a node corresponding to a page jump entrance in a post-jump page to form a directed graph; Converting the directed graph into the application navigation service information in a form of a directed tree. The client is provided with a burying point component, and the burying point component is used for collecting the page jump operation implemented by the local user within the application to generate corresponding burying point data; The obtaining of the page jump data respectively reported by at least part of clients of the application comprises: Obtaining burying point data respectively reported by the burying point components of at least part of clients of the application. The application contains a main function module in which a main page is located and at least one slave function module; The summarizing of the obtained page jump data comprises: performing module summarizing on the obtained page jump data according to the function modules to which the page jump data belong; The generation of the application navigation service information according to the summarized page jump data comprises: generating corresponding function level navigation service information for the page jump data corresponding to each function module respectively; and establishing a mapping relationship between the function level navigation service information corresponding to the main function module and the function level navigation service information corresponding to each slave function module; wherein the application navigation service information comprises all the function level navigation service information. There are multiple versions of any function module; The summarizing of the obtained page jump data comprises: performing version summarizing on the page jump data corresponding to the any function module; The generation of the application navigation service information according to the summarized page jump data comprises: generating the function level navigation service information corresponding to the any function module for the page jump data of each version respectively. Further comprising: Receiving an application navigation request initiated by the local user from a main page of the application; Determining a corresponding function level navigation service information candidate set according to version information of each function module in the client of the local user, the candidate set containing all function level navigation service information matching the version information; determine a target page jump portal matching the application navigation request according to attribute information of page jump portals contained in each functional level navigation service information in the functional level navigation service information candidate set; trace back in the functional level navigation service information corresponding to the target page jump portal until reaching a root page jump portal in the functional level navigation service information; wherein there is no page jump portal in the functional level navigation service information that can jump to a page where the root page jump portal is located; if the page where the root page jump portal is located is the main page, respond to the application navigation request according to a path formed by the trace back process; if the page where the root page jump portal is located is not the main page, continue to trace back in the functional level navigation service information corresponding to the main functional module according to a mapping relationship between the functional level navigation service information corresponding to the target page jump portal and the functional level navigation service information corresponding to the main functional module until reaching a root page jump portal in the functional level navigation service information corresponding to the main functional module; and respond to the application navigation request according to a path formed by the trace back process.
6. An apparatus for generating application navigation service information, the apparatus comprising: The application navigation service information is used to indicate a jump logic between pages in an application, the application navigation service information is in a form of a directed tree, nodes in the tree structure are page jump portals in the pages in the application, and directed edges between the nodes in the tree structure correspond to page jump relationships between corresponding pages. The apparatus comprises: a page jump data acquisition unit configured to acquire page jump data reported by at least one part of clients of the application respectively, the page jump data being generated by a corresponding client in response to a page jump operation implemented by a local user in the application, the page jump operation being used to trigger a page jump portal to realize page jump, and each piece of page jump data containing a page identifier of a pre-jump page, an entry identifier of a page jump portal contained in the pre-jump page, and a page identifier of a post-jump page; a navigation service information generation unit configured to aggregate the acquired page jump data and generate the application navigation service information according to the aggregated page jump data; the navigation service information generation unit is specifically configured to: establish corresponding nodes for the entry identifiers contained in the page jump data, and generate directed edges from a node corresponding to a page jump portal in a pre-jump page to a node corresponding to a page jump portal in a post-jump page to form a directed graph; convert the directed graph into the application navigation service information in a form of a directed tree.
7. A computer-readable storage medium having stored thereon a computer program, characterized in that The program is executed by a processor to implement steps of the method according to any one of claims 1-5.
8. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the program to implement steps of the method according to any one of claims 1-5.
Citation Information
Patent Citations
Interface display method, device, terminal, server and system
CN103761024A