Searching Based On Application Usage
Abstract
A system includes memory components storing computer-readable instructions and computing devices with processing units to execute the instructions. The instructions retrieve event analytics data for an application installed on user devices. The event analytics data indicates an amount of time each application state was accessed by the user devices. The instructions map function names indicating functionality to one or more of the application states. The instructions, for each of the function names, determine an amount of time associated with the corresponding application states. The instructions determine a usage fraction value for each function name based on the amount of time associated with the function name relative to the amount of time associated with the other function names. In response to a search query, the instructions generate and transmit search results based on at least one of the usage fraction values.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
retrieving, at one or more computing devices, event analytics data for a software application installed on a plurality of user devices, wherein the software application includes a plurality of accessible application states that can be accessed by the user devices, and wherein the event analytics data indicates an amount of time each of the accessible application states was accessed by the user devices; mapping function names to the application states accessed by the user devices, wherein each of the function names indicates a functionality associated with the software application, and wherein each of the function names maps to one or more of the accessed application states; for each of the function names, determining an amount of time associated with the function name based on the amount of time associated with the application states to which the function name is mapped; determining a usage fraction value for each of the function names based on the amount of time associated with the function names, the usage fraction value for each function name indicating the amount of time associated with the function name relative to the amount of time associated with each of the function names; receiving a search query from a querying user device; generating search results based on the received search query and at least one of the usage fraction values; and transmitting the search results to the querying user device.
2 . The method of claim 1 , wherein determining the amount of time associated with the function name comprises determining a sum of the amounts of time associated with the application states to which the function name is mapped, and wherein determining the usage fraction value for each of the function names comprises dividing the time for the function name by the total time for all of the function names.
3 . The method of claim 1 , further comprising assigning one of the usage fraction values to search records included in a search data store, wherein generating the search results comprises:
identifying one of the search records based on the search query; scoring the identified search record based on the usage fraction value assigned to the identified search record; and generating one of the search results based on the identified search record.
4 . The method of claim 3 , further comprising, prior to receiving the search query, assigning the function names to a plurality of the search records, wherein identifying the search record comprises matching one or more terms of the search query to a function name assigned to the search record.
5 . The method of claim 3 , further comprising, prior to receiving the search query, assigning function metadata to a plurality of search records, the function metadata including a plurality of terms associated with one of the function names, wherein identifying the search record comprises matching one or more terms of the search query to one or more terms of the function metadata assigned to the search record.
6 . The method of claim 3 , further comprising determining whether the usage fraction value assigned to the identified search record is greater than a threshold value, wherein scoring the identified search record comprises scoring the identified search record based on whether the usage fraction value assigned to the identified search record is greater than the threshold value.
7 . The method of claim 3 , further comprising determining the number of user devices from which the event analytics data was retrieved, wherein scoring the identified search record comprises scoring the identified search record based on the number of user devices.
8 . The method of claim 7 , further comprising scoring the identified search record based on the product of the assigned usage fraction value and the number of user devices from which the event analytics data was retrieved.
9 . The method of claim 1 , wherein the event analytics data includes timestamps indicating the amount of time the application states were accessed by the user devices, and wherein determining the amount of time associated with the function name comprises determining the amount of time based on the timestamps associated with the application states to which the function name is mapped.
10 . The method of claim 1 , wherein the event analytics data indicates a number of times each of the accessible application states was accessed by the user devices, the method further comprising:
determining an event-based usage fraction value for each of the function names of the software application, the event-based usage fraction value for each function name indicating the number of times the function name was mapped relative to the number of times each of the function names was mapped; and generating the search results based on at least one of the event-based usage fraction values.
11 . A system comprising:
one or more memory components configured to store computer-readable instructions; and one or more computing devices including one or more processing units that execute the computer-readable instructions, the computer-readable instructions, when executed by the one or more processing units, cause the one or more computing devices to:
retrieve event analytics data for a software application installed on a plurality of user devices, wherein the software application includes a plurality of accessible application states that can be accessed by the user devices, and wherein the event analytics data indicates an amount of time each of the accessible application states was accessed by the user devices;
map function names to the application states accessed by the user devices, wherein each of the function names indicates a functionality associated with the software application, and wherein each of the function names maps to one or more of the accessed application states;
for each of the function names, determine an amount of time associated with the function name based on the amount of time associated with the application states to which the function name is mapped;
determine a usage fraction value for each of the function names based on the amount of time associated with the function names, the usage fraction value for each function name indicating the amount of time associated with the function name relative to the amount of time associated with each of the function names;
receive a search query from a querying user device;
generate search results based on the received search query and at least one of the usage fraction values; and
transmit the search results to the querying user device.
12 . The system of claim 11 , wherein the one or more computing devices are configured to determine the amount of time associated with the function name by determining a sum of the amounts of time associated with the application states to which the function name is mapped, and wherein the one or more computing devices are configured to determine the usage fraction value for each of the function names by dividing the time for the function name by the total time for all of the function names.
13 . The system of claim 11 , further comprising a search data store, wherein the one or more computing devices are configured to assign one of the usage fraction values to search records included in the search data store, and wherein the one or more computing devices are configured to generate the search results by:
identifying one of the search records based on the search query; scoring the identified search record based on the usage fraction value assigned to the identified search record; and generating one of the search results based on the identified search record.
14 . The system of claim 13 , wherein, prior to receiving the search query, the one or more computing devices are configured to assign the function names to a plurality of the search records, and wherein the one or more computing devices are configured to identify the search record by matching one or more terms of the search query to a function name assigned to the search record.
15 . The system of claim 13 , wherein, prior to receiving the search query, the one or more computing devices are configured to assign function metadata to a plurality of search records, the function metadata including a plurality of terms associated with one of the function names, and wherein the one or more computing devices are configured to identify the search record by matching one or more terms of the search query to one or more terms of the function metadata assigned to the search record.
16 . The system of claim 13 , wherein the one or more computing devices are configured to:
determine whether the usage fraction value assigned to the identified search record is greater than a threshold value; and score the identified search record based on whether the usage fraction value assigned to the identified search record is greater than the threshold value.
17 . The system of claim 13 , wherein the one or more computing devices are configured to:
determine the number of user devices from which the event analytics data was retrieved; and score the identified search record based on the number of user devices.
18 . The system of claim 17 , wherein the one or more computing devices are configured to score the identified search record based on the product of the assigned usage fraction value and the number of user devices from which the event analytics data was retrieved.
19 . The system of claim 11 , wherein the event analytics data includes timestamps indicating the amount of time the application states were accessed by the user devices, and wherein the one or more computing devices are configured to determine the amount of time associated with the function name based on the timestamps associated with the application states to which the function name is mapped.
20 . The system of claim 11 , wherein:
the event analytics data indicates a number of times each of the accessible application states was accessed by the user devices; and the one or more computing devices are configured to:
determine an event-based usage fraction value for each of the function names of the software application, the event-based usage fraction value for each function name indicating the number of times the function name was mapped relative to the number of times each of the function names was mapped; and
generate the search results based on at least one of the event-based usage fraction values.Join the waitlist — get patent alerts
Track US2017192977A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.