SEARCH EXTENSIBILITY APPLICATION FRAMEWORK IN A HOSTED SEARCH
First Claim
1. A method for implementing a search extensibility application (app) framework using a server operated by a search provider, the method comprising the steps of:
- receiving a search query from a hosted search app operating on a computing device;
parsing the received query to identify one or more search terms;
generating a HTML5 payload including documents and meta tags which specify data supported by the one or more search terms, the specifying being performed according to pre-determined matching criteria, the data including one of app extension categories, app extension action, and a list of apps that are known to the server;
providing the HTML5 payload to the hosted search app, the HTML5 payload being renderable by the hosted search app to implement a user interface (UI);
exposing a first API (application programming interface) to the hosted search app, the first API being callable by the hosted search app to update an install state of each of one or more installed apps on the computing device; and
exposing a second API to the hosted search app, the second API being callable by the hosted search app to inject apps into the hosted search app, the injected apps being installed on the client computing device but which are unknown to the server.
2 Assignments
0 Petitions
Accused Products
Abstract
A search extensibility application framework enables a hosted web search experience to be extended so that apps which are related to a search query can be presented to a user of a client computing device such as a smartphone. In various illustrative examples, a hosted search app is implemented using HTML5 code generated at a remote search provider server. Responsively to a user query at the search app'"'"'s user interface (“UI”), the server returns an HTML5 payload including meta tags specifying criteria including app extension categories, actions, and known apps that support search terms in the query. Apps that are installed on the client device which match the criteria can then be displayed and launched through the UI to advantageously enable the users to complete a task specific search. JavaScript interfaces are provided to enable apps to update their install state and to be injected into the hosted search app.
-
Citations
20 Claims
-
1. A method for implementing a search extensibility application (app) framework using a server operated by a search provider, the method comprising the steps of:
-
receiving a search query from a hosted search app operating on a computing device; parsing the received query to identify one or more search terms; generating a HTML5 payload including documents and meta tags which specify data supported by the one or more search terms, the specifying being performed according to pre-determined matching criteria, the data including one of app extension categories, app extension action, and a list of apps that are known to the server; providing the HTML5 payload to the hosted search app, the HTML5 payload being renderable by the hosted search app to implement a user interface (UI); exposing a first API (application programming interface) to the hosted search app, the first API being callable by the hosted search app to update an install state of each of one or more installed apps on the computing device; and exposing a second API to the hosted search app, the second API being callable by the hosted search app to inject apps into the hosted search app, the injected apps being installed on the client computing device but which are unknown to the server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. One or more computer-readable storage media, not consisting of a propagated signal, storing instructions which, when executed by one or more processors disposed in a computing device, perform a method for operating a local client computing device with communication to a remote server, the method comprising the steps of:
-
collecting a query including search terms from a user at the computing device using a hosted search application (app); sending the search query to the remote server; receiving an HTML payload from the remote server, the HTML payload including one or more HTML documents and data including one of app extension categories, app extension action, and a list of apps that are known to the remote server; rendering the one or more HTML documents at the hosted search app to generate a user interface (UI) on the computing device; comparing the list of known apps to apps that are installed on the client computing device to find one or more matching apps; and if matching apps are found, displaying the one or matching apps through the UI. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A system for testing side-loaded apps, the system comprising:
-
one or more computer-readable storage media storing computer code; and a processor disposed on a local client computing device, the processor being responsive to the computer code, the computer program, when loaded into the processor, operable for receiving HTML5 code from a remote server, the received code implementing a hosted search application (app) including a user interface (UI) on the local client computing device, the remote server exposing an API by which a side-loaded app may be injected into the hosted search app by specifying parameters, at least one of the specified parameters indicates that the side-loaded app is interoperable with the hosted search app for purposes of debugging, receiving a query at the UI including one or more search terms from the user, displaying the side-loaded app to the user if the side-loaded app is determined to have relevance to query, launching the side-loaded app when selected by the user, the displaying and launching being performed for the debugging. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification