IP Library Granted Patent US 10,568,150
Granted Patent B2
US 10,568,150 · App. 16/280,823 · Granted Feb 18, 2020

Techniques for automatically establishing a long-lasting connection across computing devices configured for short-range wireless communication

Inventors: Jeffrey William Hamilton (Austin, TX); Nicholas Julian Pelly (San Francisco, CA); Benjamin J. Dodson (Palo Alto, CA)
Assignee: Google LLC
H04W76/10H04B5/0031H04L67/34H04W4/50H04W4/80G08C17/02H04M2250/04H04W8/005
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,568,150
App. No.
16/280,823
Granted
Feb 18, 2020
Kind
B2
Abstract

A computer-implemented technique includes initiating, at a first computing device including one or more processors, communication with a second computing device via a short-range wireless communication protocol. The technique includes receiving, at the first computing device, a set of information from the second computing device via the short-range wireless communication protocol, the set of information for configuring communication via a different, second wireless communication protocol.

Claims (43)

1. A computer-implemented method, comprising:

initiating, between first and second computing devices each having one or more processors, communication via a first wireless communication protocol, the first wireless communication protocol being a short-range wireless communication protocol;

receiving, at the first computing device from the second computing device via the first wireless communication protocol, a set of information for configuring communication via a different, second wireless communication protocol between same-type first and second applications executable by the first and second computing devices, respectively, the set of information indicating that the second application is currently executing in a foreground at the second computing device; and

in response to receiving the set of information, configuring, by the first computing device, communication via the second wireless communication protocol between the first and second applications.

2. The computer-implemented method of claim 1 , further comprising:

requesting, by the first computing device from the second computing device, the set of information after the first and second computing devices initiate communication by the first wireless communication protocol.

3. The computer-implemented method of claim 1 , wherein the configuring is performed without exiting the first and second applications.

4. The computer-implemented method of claim 1 , wherein the set of information further indicating a port address for communication by the first application with the second application via the second wireless communication protocol.

5. The computer-implemented method of claim 4 , wherein the configuring is performed by:

generating, at the first application, a callback for the port address; and

sending, to the first application, a reply to the callback including the port address specified by the set of information from the second computing device.

6. The computer-implemented method of claim 4 , wherein the first wireless communication protocol is near field communication (NFC), wherein the second wireless communication protocol is Bluetooth, and wherein the port address for communication with the second computing device is a listening Bluetooth socket for the second application currently executing at the second computing device.

7. The computer-implemented method of claim 6 , wherein the listening Bluetooth socket is one end-point of a two-way communication link between the first and second applications.

8. The computer-implemented method of claim 1 , wherein the set of information indicates a unique identifier for the second application currently executing in the foreground at the second computing device.

9. The computer-implemented method of claim 1 , further comprising:

determining, at the first computing device, whether the first application is installed at the first computing device; and

obtaining, at the first computing device, the first application when the first application is not installed at the first computing device.

10. The computer-implemented method of claim 1 , further comprising:

in response to receiving the set of information from the second computing device, launching, at the first computing device, the first application when the first application is not currently executing at the first computing device.

11. The computer-implemented method of claim 1 , further comprising:

determining, at the first computing device, whether the first application is currently executing in a background at the first computing device; and

in response to receiving the set of information from the second computing device, transitioning, at the first computing device, the first application to the foreground at the first computing device when the first application is currently executing in the background at the first computing device.

12. The computer-implemented method of claim 1 , wherein the first application is currently executing at the first computing device, and further comprising:

communicating between the first application and the second application via the first wireless communication protocol when the first and second computing devices are within a predetermined distance from each other; and

communicating between the first application and the second application via the second wireless communication protocol when the first and second computing devices are outside of the predetermined distance from each other.

13. The computer-implemented method of claim 1 , wherein the configuring of the communication via the second wireless communication protocol between the first and second applications is performed without exiting the first and second applications.

14. A computer-implemented method, comprising:

initiating, between first and second computing devices each having one or more processors, communication via a first wireless communication protocol, the first wireless communication protocol being a short-range wireless communication protocol;

requesting, by the first computing device from the second computing device, a set of information for configuring communication via a different, second wireless communication protocol between first and second applications executable by the first and second computing devices, respectively;

receiving, at the first computing device from the second computing device via the first wireless communication protocol, the set of information; and

in response to receiving the set of information, configuring, by the first computing device, communication via the second wireless communication protocol between the first and second applications.

15. The computer-implemented method of claim 14 , wherein the set of information further indicating a port address for communication by the first application with the second application via the second wireless communication protocol.

16. The computer-implemented method of claim 15 , wherein the configuring is performed by:

generating, at the first application, a callback for the port address; and

sending, to the first application, a reply to the callback including the port address specified by the set of information from the second computing device.

17. The computer-implemented method of claim 15 , wherein the first wireless communication protocol is near field communication (NFC), wherein the second wireless communication protocol is Bluetooth, and wherein the port address for communication with the second computing device is a listening Bluetooth socket for the second application currently executing at the second computing device.

18. The computer-implemented method of claim 14 , wherein the configuring is performed without exiting the first and second applications.

19. The computer-implemented method of claim 14 , wherein the set of information indicates a unique identifier for the second application currently executing in a foreground of the second computing device.

20. A first computing device having one or more processors configured to perform operations comprising:

initiating communication with a second computing device via a first wireless communication protocol, the first wireless communication protocol being a short-range wireless communication protocol;

requesting a set of information for configuring communication via a different, second wireless communication protocol between first and second applications executable by the first and second computing devices, respectively, from the second computing device;

receiving the set of information from the second computing device via the first wireless communication protocol, the set of information indicating (i) that the second application is currently executing in a foreground at the second computing device and (ii) a port address for communication by the first application with the second application via the second wireless communication protocol; and

in response to receiving the set of information, configuring communication via the second wireless communication protocol between the first and second applications.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2019
From: HAMILTON, JEFFREY WILLIAM; PELLY, NICHOLAS JULIAN; DODSON, BENJAMIN J.
To: GOOGLE INC
Reel/Frame 048387/0570 →
CHANGE OF NAME Recorded Feb 20, 2019
From: GOOGLE INC
To: GOOGLE LLC
Reel/Frame 048389/0825 →
Continuity (3)
Continuation 14751815 · Jun 26, 2015
Continuation 13834900 · Mar 15, 2013
Related Publication 20190191469A1 · Jun 20, 2019