Applications search using programmatic application state indexing
AssigneeAmazon Technologies, Inc.
InventorsDaniel Massaguer, Derek Steven Gebhard
Life of this patent
Estimating the term…
Abstract
Technologies are disclosed for enabling application search through the use of programmatic application state indexing. The disclosed technologies enable applications to be systematically explored using a program to identify the various states of the application. For example, UI displays provided by an application can be explored and text or other content can be captured from each UI display. The text or other content can then be indexed and utilized to search applications and to navigate directly to specific application states.
Claims20
An apparatus, comprising:
- a processor;
- and
- a non-transitory computer-readable storage medium having instructions stored thereupon which, when executed by the processor, cause the apparatus to:
- programmatically simulate user interaction with user interface (UI) elements displayed by an application to identify a plurality of application states, the plurality of application states corresponding to unique screen displays generated by the application;
- identify content associated with the plurality of application states;
- determine, based in part on the content, at least one of a popularity or usage associated with individual ones of the plurality of application states;
- generate an application search index that provides a mapping between the content and the plurality of application states;
- merge the application search index into a local application store search index containing application search indexes for one or more other applications;
- receive a search query comprising one or more search terms;
- responsive to receiving the search query, search the local application store search index for the search terms to identify application states of the plurality of application states mapped to the search terms in the search query, wherein identifying the application states is based in part on at least one of the popularity or the usage associated with individual ones of the application states;
- and
- provide search results responsive to the search query that identify applications that provide the application states mapped to the search terms in the search query.
A computer-implemented method, comprising:
- receiving, at a computing device, an application and an associated application search index mapping content to a plurality of application states provided by the application, wherein the application search index is generated by programmatically simulating user interaction with user interface (UI) elements displayed by the application to identify the plurality of application states;
- determining, based in part on the content, at least one of a popularity or usage associated with individual ones of the plurality of application states;
- merging, at the computing device, the application search index with a local search index, the local search index containing application search indexes for one or more other applications installed on the computing device;
- providing, at the computing device, a UI for receiving a search query comprising one or more search terms;
- responsive to receiving the search query at the computing device, searching the local search index for the search terms to identify application states of the plurality of application states mapped to the search terms in the search query, wherein identifying the application states is based in part on at least one of the popularity or the usage associated with individual ones of the application states;
- and
- presenting, at the computing device, search results responsive to the search query that identify applications that provide the application states mapped to the search terms in the search query.
A non-transitory computer-readable storage medium having instructions stored thereupon which are executable by a processor and which, when executed, cause the processor to:
- programmatically identify a plurality of application states provided by an application by interacting with a user interface (UI) provided by the application;
- identify content associated with the plurality of application states;
- determine, based in part on the content, at least one of a popularity or usage associated with individual ones of application states of the plurality of application states;
- generate an application search index that provides a mapping between the content and the plurality of application states;
- and
- merge the application search index into a local application store search index containing application search indexes for one or more other applications.
Dependencies are inferred from the claim text.