IP Library Granted Patent US 10,659,958
Granted Patent B2
US 10,659,958 · App. 16/177,519 · Granted May 19, 2020

Attaching visible networks for synchronous local search results

Inventors: Luis Barguno Jane (Zurich, CH); Quentin Fiard (Zurich, CH); Ankit Gupta (Zurich, CH)
Assignee: Google LLC
H04W8/24G01S5/0018G06F16/9537H04W4/025H04W12/08H04W76/15H04W88/02Y02D10/45
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 10,659,958
App. No.
16/177,519
Granted
May 19, 2020
Kind
B2
Abstract

Aspects of the technology employ an integrated location identification and query processing technique. Network scan information is attached to or otherwise combined with a query at a client device and is sent to a web server or other entity for processing. When a query is initiated, the client device determines whether location services are enabled. If not, upon authorization they are enabled and visible network scan data is quickly obtained for transmission with the query. The server may include both a location identification service and a search service, and can split the received information accordingly among these elements in an efficient manner that minimizes data transfers and latency. From the client device's perspective, only one query is transmitted. Relevant results based on the resolved location are received quickly by the client device. This reduces system latency and power consumption, and also minimizes network overhead by eliminating unnecessary packet transmissions.

Claims (50)

1. A method comprising:

identifying by one or more processors of a client device, either a change of location permission of an application executable by the client device or a change in network connectivity for the client device;

determining, by the one or more processors in response to the identified change of location permission or the change in network connectivity, that prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy;

upon determining that the prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy, obtaining, by the one or more processors, visible network data, wherein the obtaining includes updating passively tracked visible network information;

generating, by the one or more processors, an integrated request packet including a client query and information corresponding to at least some of the obtained visible network data;

transmitting the integrated request packet to a server;

receiving a location-enabled response to the client query in accordance with resolution of a location based on the integrated request packet for the at least some of the obtained visible network data; and

generating, for presentation to a user of the client device, a result including the received location-enabled response based on the obtained visible network data.

2. The method of claim 1 , wherein the change of the location permission includes an authorization to use information associated with at least one of a WiFi network and a cellular network for location services.

3. The method of claim 1 , further comprising, prior to identifying either the change of the location permission or the change in network connectivity, precomputing at least one of WiFi access point information or cellular base station information for connected networks.

4. The method of claim 1 , wherein the visible network data includes at least one of an access point ID, a base station ID, and received signal strength information.

5. The method of claim 1 , wherein obtaining the visible network data includes:

selecting a subset of visible network elements from among all visible network elements; and

obtaining the visible network data from a wireless communication module for the subset of visible network elements.

6. The method of claim 1 , wherein determining that the prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy includes determining that the prestored location information is older than a predetermined amount of time.

7. The method of claim 6 , wherein the predetermined amount of time is greater than 1 minute.

8. The method of claim 1 , wherein the change of location permission of the application includes an identification of one or more location services to be activated.

9. The method of claim 1 , wherein generating the result includes providing an electronic map for presentation on a display of the client device.

10. A client device, comprising:

a user interface module including one or more user input devices configured to receiver a user query;

a processing module including one or more processors;

a memory module having one or more memories configured to store data and instructions for execution by the processing module; and

a communication module including a wireless transceiver configured for bidirectional communication with one or more remote devices;

wherein the processing module is operatively coupled to the communication module, and is configured to:

identify either a change of location permission of an application executable by the client device or a change in network connectivity for the client device;

determine, in response to the identified change of location permission or the change in network connectivity, that prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy;

upon determining that the prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy, obtain visible network data, wherein the obtaining includes updating passively tracked visible network information;

generate an integrated request packet including a client query and information corresponding to at least some of the obtained visible network data;

transmit the integrated request packet to a server;

receive a location-enabled response to the client query in accordance with resolution of a location based on the integrated request packet for the at least some of the obtained visible network data; and

generate, for presentation to a user of the client device, a result including the received location-enabled response based on the obtained visible network data.

11. The client device of claim 10 , wherein the change of the location permission includes an authorization to use information associated with at least one of a WiFi network and a cellular network for location services.

12. The client device of claim 10 , wherein the processing module is further configured, prior to identifying either the change of the location permission or the change in network connectivity, to precompute at least one of WiFi access point information or cellular base station information for connected networks.

13. The client device of claim 10 , wherein the visible network data includes at least one of an access point ID, a base station ID, and received signal strength information.

14. The client device of claim 10 , wherein the processing module is configured to obtain the visible network data by:

selecting a subset of visible network elements from among all visible network elements; and

obtaining the visible network data from a wireless communication module for the subset of visible network elements.

15. The client device of claim 10 , wherein the processing module is configured to determine that the prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy by determining that the prestored location information is older than a predetermined amount of time.

16. The client device of claim 15 , wherein the predetermined amount of time is greater than 1 minute.

17. The client device of claim 10 , wherein the processing module is configured to identify the change of location permission of the application in response to receiving an identification of one or more location services to be activated.

18. A non-transitory computer-readable recording medium having instructions stored thereon, the instructions, when executed by one or more processors of a client device, causing the one or more processors to perform a method comprising:

identifying either a change of location permission of an application executable by the client device or a change in network connectivity for the client device;

determining, in response to the identified change of location permission or the change in network connectivity, that prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy;

upon determining that the prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy, obtaining visible network data, wherein the obtaining includes updating passively tracked visible network information;

generating an integrated request packet including a client query and information corresponding to at least some of the obtained visible network data;

transmitting the integrated request packet to a server;

receiving a location-enabled response to the client query in accordance with resolution of a location based on the integrated request packet for the at least some of the obtained visible network data; and

generating, for presentation to a user of the client device, a result including the received location-enabled response based on the obtained visible network data.

19. The non-transitory computer-readable recording medium of claim 18 , wherein determining that the prestored location information for the client device is not capable of providing an indication of a current location of the client device within a selected accuracy includes determining that the prestored location information is older than a predetermined amount of time.

20. The non-transitory computer-readable recording medium of claim 18 , wherein the change of location permission of the application includes an identification of one or more location services to be activated.

Assignments (2)
CHANGE OF NAME Recorded Nov 2, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 047406/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2018
From: JANE, LUIS BARGUNO; FIARD, QUENTIN; GUPTA, ANKIT
To: GOOGLE INC.
Reel/Frame 047385/0867 →
Continuity (2)
Continuation 15455529 · Mar 10, 2017
Related Publication 20190075451A1 · Mar 7, 2019