# US 12,010,509 B2 · Transferring application data between devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,010,509 B2
- Document ID: US12010509B2
- Status: Granted
- Kind: B2
- Application number: 18/079,851
- Filed: 2022-12-12
- Published: 2023-10-05
- Granted: 2024-06-11
- Earliest claimed: 2014-09-19
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Vincent Wei-Kang Chen; Paul Lee; Gregory M. Hecht; Erdi Chen; Jenny Chun-yi Chen; Maria-Ines Carrera; Estelle Laure Myriam Comment; Eric Chu; Peter Jin Hong; Christopher John Adams; Lucas Gill Dixon
- Web page: https://patentgrep.com/patent/US12010509B2

## CPC

- H04W 12/04: Key management, e.g. using generic bootstrapping architecture [GBA]
- H04L 63/0823: {using certificates (cryptographic mechanisms or cryptographic arrangements for entity authentication involving certificates H04L9/3263)}
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- H04W 4/50: Service provisioning or reconfiguring
- H04W 12/50: Secure pairing of devices
- H04W 12/65: Environment-dependent, e.g. using captured environmental data
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods, systems, and apparatus are described for transferring application data. In one aspect, a method includes causing, by a first component on a first device to establish a wireless connection with a second device; receiving, from a second component on the second device, data specifying one or more applications that are installed on the second device and supported by the second component, each of the applications being separate from the second component; determining, by the first component, that a first application installed on the first device corresponds to one of the applications installed on the second device, the first application being separate from the first component; receiving, by the first component, first application data from the first application; and causing, by the first component, the first device to send the first application data to the second component running on the second device using the wireless connection.

## Claims

### Claim 1

A computer-implemented method, comprising:
causing, using a first component on a first device, the first device to establish a wireless connection with a second device, wherein the wireless connection is a connection that is separate from an Internet connection, and wherein the first device is not communicating with the second device via the Internet connection;
receiving, from a second component on the second device, data specifying one or more applications that are installed on the second device and supported by the second component, each of the applications being separate from the second component and the first component;
determining, by the first component, that a first application installed on the first device corresponds to one of the one or more applications installed on the second device, wherein the first application is separate from the first component and has first application data to be shared;
receiving, by the first component, the first application data from the first application; receiving, by the first component, an indication that a user of the second device has approved a data transfer; and
causing, by the first component, the first device to send the first application data from the first application installed on the first device to the second component on the second device using the wireless connection.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining, by the first component, that a second application installed on the first device corresponds to a second application of the one or more applications installed on the second device, the second application being different from the first application;
receiving, by the first component, second application data from the second application; and
causing, by the first component, the first device to send the second application data to the second device using the wireless connection.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
causing, by the first component, the first device to broadcast wireless connection availability; and
receiving a wireless connection request from the second device, wherein the first component causes the first device to establish the wireless connection with the second device in response to receiving the wireless connection request from the second device.

### Claim 4 (depends on 3)

The method of claim 3, wherein causing the first device to broadcast wireless connection availability comprises:
causing a speaker of the first device to emit an audio sample that specifies wireless connection data.

### Claim 5 (depends on 4)

The method of claim 4, wherein the wireless connection data comprises:
a service set identifier (SSID) for a wireless component of the first device; a password for connecting to the wireless component; and
data identifying the first application.

### Claim 6 (depends on 4)

The method of claim 4, wherein the wireless connection data comprises:
a short range communication identifier for short range communication compliant component of the first device; and
data identifying the first application.

### Claim 7 (depends on 4)

The method of claim 4, wherein the wireless connection data comprises a public key for encrypting communications between the first device and the second device.

### Claim 8 (depends on 1)

The method of claim 1, wherein:
the first application data is received by the first component through a first communications socket between the first application and the first component; and
the first application data includes an identifier of the first application.

### Claim 9 (depends on 3)

The method of claim 3, wherein the first component causes the first device to broadcast the wireless connection availability in response to receiving a first gesture input;
the wireless connection request includes a second gesture input; and
the first component causes the first device to establish the wireless connection with the second device only in response to determining that the second gesture input matches the first gesture input.

### Claim 10 (depends on 9)

The method of claim 9, wherein:
the first device includes one or more physical sensors for sensing physical motion of the first device; and
the first gesture input corresponds to a physical gesture interpreted by the one or more physical sensors.

### Claim 11 (depends on 9)

The method of claim 9, wherein:
the first device includes one or more touch sensors for sensing tactile input on a touch-sensitive screen; and
the first gesture input corresponds to a pattern interpreted by the one or more touch sensors.

### Claim 12 (depends on 1)

The method of claim 1, wherein the corresponding application installed on the second device and the first application installed on the first device are instances of a same application.

### Claim 13 (depends on 1)

The method of claim 1, wherein the first application data is received by the corresponding application installed on installed on the second device.

### Claim 14 (depends on 1)

The method of claim 1, wherein the first application data from the first application installed on the first device is more up-to-date than second application data of the corresponding application installed on the second device if the second application data exists on the second device.

### Claim 15 (depends on 1)

The method of claim 1, further comprising:
precluding, by the first component, the first device from sending to the second device, using the wireless connection, local data stored on the first device.

### Claim 16

A system, comprising:
one or more data processing apparatus; and
a data storage device storing instructions that, when executed by the one or more data processing apparatus, cause the one or more data processing apparatus to perform operations comprising:
causing, using a first component on a first device, the first device to establish a wireless connection with a second device, wherein the wireless connection is a connection that is separate from an Internet connection, and wherein the first device is not communicating with the second device via the Internet connection;
receiving, from a second component on the second device, data specifying one or more applications that are installed on the second device and supported by the second component, each of the applications being separate from the second component and the first component;
determining, by the first component, that a first application installed on the first device corresponds to one of the one or more applications installed on the second device, wherein the first application is separate from the first component and has first application data to be shared;
receiving, by the first component, the first application data from the first application; receiving, by the first component, an indication that a user of the second device has approved a data transfer; and
causing, by the first component, the first device to send the first application data from the first application installed on the first device to the second component on the second device using the wireless connection.

### Claim 17 (depends on 16)

The system of claim 16, wherein the operations further comprise:
causing, by the first component, the first device to broadcast wireless connection availability; and
receiving a wireless connection request from the second device; and
wherein the first component causes the first device to establish the wireless connection with the second device in response to receiving the wireless connection request from the second device.

### Claim 18 (depends on 17)

The system of claim 17, wherein causing the first device to broadcast wireless connection availability comprises:
causing a speaker of the first device to emit an audio sample that specifies wireless connection data.

### Claim 19 (depends on 18)

The system of claim 18, wherein the wireless connection data comprises a public key for encrypting communications between the first device and the second device.

### Claim 20

A computer readable storage medium storing instructions that, when executed by one or more data processing apparatus, cause the one or more data processing apparatus to perform operations comprising:
causing, using a first component on a first device, the first device to establish a wireless connection with a second device, wherein the wireless connection is a connection that is separate from an Internet connection, and wherein the first device is not communicating with the second device via the Internet connection;
receiving, from a second component on the second device, data specifying one or more applications that are installed on the second device and supported by the second component, each of the applications being separate from the second component and the first component;
determining, by the first component, that a first application installed on the first device corresponds to one of the one or more applications installed on the second device, wherein the first application is separate from the first component and has first application data to be shared;
receiving, by the first component, the first application data from the first application; receiving, by the first component, an indication that a user of the second device has approved a data transfer; and
causing, by the first component, the first device to send the first application data from the first application installed on the first device to the second component on the second device using the wireless connection.
