IP Library Granted Patent US 11,354,367
Granted Patent B2
US 11,354,367 · App. 16/838,590 · Granted Jun 7, 2022

Search engine

Inventors: Timo Mertens (Millbrae, CA); Maxim Gubin (Danville, CA)
Assignee: GOOGLE LLC
G06F16/9535G06F16/2237G06F16/24575G06F16/24578G06F16/3344G06F16/35
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,354,367
App. No.
16/838,590
Granted
Jun 7, 2022
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer-storage medium, for using a search engine implemented on a user device to identify topics or tasks associated with native application content. The method may include actions of receiving a set of data that is generated by the native application and that includes (i) native application content, and (ii) context information associated with the native application content, indexing the data on the user device, and then identifying one or more tasks based on the indexed data.

Claims (37)

1. A computer-implemented method, comprising:

receiving, by a search engine implemented on a user device and for each of multiple native applications on the user device, a set of data that is generated by the native application and that includes (i) native application content, and (ii) context information associated with the native application content;

for each set of data that is generated by each of the multiple native applications, indexing, by the search engine implemented on the user device the set of data to generate index data;

storing, by the search engine implemented on the user device, the index data on the user device;

identifying, by the search engine implemented on the user device and from the index data, a plurality of tasks, wherein each identified task is associated with an overarching topic of user activities distributed across two or more of the multiple native applications, and wherein the user activities can be performed to collectively achieve the task associated with the overarching topic of user activities;

providing, for output, a user interface including one or more selectable controls that each identify one of the plurality of tasks, and wherein each selectable control, when selected, causes the search engine to generate, in a search results page, search results that relate to the one of the plurality of tasks and that are organized into groups for the respective two or more of the multiple native applications;

receiving, by the search engine implemented on the user device, data indicative of a selection of a particular selectable control of the one or more selectable controls, wherein the particular selectable control corresponds to a particular task of the plurality of tasks;

in response to receiving the data indicative of the selection of the particular selectable control corresponding to the particular task of the plurality of tasks, generating, by the search engine implemented on the user device, in the search results page, a set of search results associated with the user activities that can be performed to collectively achieve the particular task associated with the overarching topic, wherein the set of search results are organized into separate groups for the respective two or more of the multiple native applications, wherein the search results are grouped according to which native application was used to generate the search results; and

providing, by the search engine implemented on the user device, the search results page for output on a display of the user device.

2. The computer-implemented method of claim 1 , wherein the index data includes words that were extracted from one or more words in a text of the native application content.

3. The computer-implemented method of claim 1 , wherein the index data includes data that were extracted from data that is indicative of one or more fields associated with the native application content.

4. The computer-implemented method of claim 1 , wherein the index data includes data that was that extracted from data indicative of popularity of one or more native application installed on the user device.

5. The computer-implemented method of claim 1 , wherein the index data includes data that were extracted from data that is indicative of one or more native applications that were accessed during the same session as the generated set of data.

6. A device comprising:

one or more processor(s); and

one or more storage devices storing instructions that are operable, when executed by the one or more processors, to cause the device to perform operations comprising:

receiving, by a search engine implemented on a user device and for each of multiple native applications on the user device, a set of data that is generated by the native application and that includes (i) native application content, and (ii) context information associated with the native application content;

for each set of data that is generated by each of the multiple native applications, indexing, by the search engine implemented on the user device the set of data to generate index data;

storing, by the search engine implemented on the user device, the index data on the user device;

identifying, by the search engine implemented on the user device and from the index data, a plurality of tasks, wherein each identified task is associated with an overarching topic of user activities distributed across two or more of the multiple native applications, wherein the user activities can be performed to collectively achieve the task associated with the overarching topic of user activities;

providing, for output, a user interface including one or more selectable controls that each identify one of the plurality of tasks, and wherein each selectable control, when selected, causes the search engine to generate, in a search results page, search results that relate to the one of the plurality of tasks and that are organized into groups for the respective two or more of the multiple native applications;

receiving, by the search engine implemented on the user device, data indicative of a selection of a particular selectable control of the one or more selectable controls, wherein the particular selectable control corresponds to a particular task of the plurality of tasks;

in response to receiving the data indicative of the selection of the particular selectable control corresponding to the particular task of the plurality of tasks, generating, by the search engine implemented on the user device, in the search results page, a set of search results associated with the user activities that can be performed to collectively achieve the particular task associated with the overarching topic, wherein the set of search results are organized into separate groups for the respective two or more of the multiple native applications, wherein the search results are grouped according to which native application was used to generate the search results; and

providing, by the search engine implemented on the user device, the search results page for output on a display of the user device.

7. The device of claim 6 , wherein the index data includes words that were extracted from one or more words in a text of the native application content.

8. The device of claim 6 , wherein the index data includes data that were extracted from data that is indicative of one or more fields associated with the native application content.

9. The device of claim 6 , wherein the index data includes data that was extracted from data indicative of popularity of one or more native application installed on the user device.

10. The device of claim 6 , wherein the index data includes data that were extracted from data that is indicative of one or more native applications that were accessed during the same session as the generated set of data.

11. A non-transitory computer-readable medium storing software comprising instructions executable by a computer which, upon such execution, cause the computer to perform operations comprising:

receiving, by a search engine implemented on a user device and for each of multiple native applications on the user device, a set of data that is generated by the native application and that includes (i) native application content, and (ii) context information associated with the native application content;

for each set of data that is generated by each of the multiple native applications, indexing, by the search engine implemented on the user device the set of data to generate index data;

storing, by the search engine implemented on the user device, the index data on the user device;

identifying, by the search engine implemented on the user device and from the index data, a plurality of tasks, wherein each identified task is associated with an overarching topic of user activities distributed across two or more of the multiple native applications, wherein the user activities can be performed to collectively achieve the task associated with the overarching topic of user activities;

providing, for output, a user interface including one or more selectable controls that each identify one of the plurality of tasks, and wherein each selectable control, when selected, causes the search engine to generate, in a search results page, search results that relate to the one of the plurality of tasks and that are organized into groups for the respective two or more of the multiple native applications;

receiving, by the search engine implemented on the user device, data indicative of a selection of a particular selectable control of the one or more selectable controls, wherein the particular selectable control corresponds to a particular task of the plurality of tasks;

in response to receiving the data indicative of the selection of the particular selectable control corresponding to the particular task of the plurality of tasks, generating, by the search engine implemented on the user device, in the search results page, a set of search results associated with the user activities that can be performed to collectively achieve the particular task associated with the overarching topic, wherein the set of search results are organized into separate groups for the respective two or more of the multiple native applications, wherein the search results are grouped according to which native application was used to generate the search results; and

providing, by the search engine implemented on the user device, the search results page for output on a display of the user device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2020
From: MERTENS, TIMO; GUBIN, MAXIM
To: GOOGLE INC.
Reel/Frame 052568/0610 →
CHANGE OF NAME Recorded May 5, 2020
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 052568/0726 →
Continuity (2)
Continuation 15401592 · Jan 9, 2017
Related Publication 20200233914A1 · Jul 23, 2020