IP Library Granted Patent US 10,182,324
Granted Patent B2
US 10,182,324 · App. 14/935,308 · Granted Jan 15, 2019

Contextual deep linking of applications

Inventors: Michael Charles Molinet (Palo Alto, CA); Maria Madalina Seghete (Palo Alto, CA); Alexander John Austin (Palo Alto, CA); Dmitri Gaskin (Albany, CA)
Assignee: BRANCH METRICS, INC.
H04W4/60G06F9/44505H04L67/02H04L67/025H04L67/125H04L67/303H04L67/327H04L67/34H04L67/42G06F8/61G06F17/30876G06F17/30887H04W36/0033
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,182,324
App. No.
14/935,308
Granted
Jan 15, 2019
Kind
B2
Abstract

A client device transmits to a server a request associated with a contextual deep link, the contextual deep link associated with link data indicating a configuration of an application. The client device receives a response according to the contextual information of the client device. The client device initiates the application and transmits a request by the application for link data. The application on the client device generates a unique fingerprint of the client device based on a plurality of characteristics of the client device and transmits the unique fingerprint to the server. The client device receives the link data associated with the contextual deep link and configures the application according to the configuration indicated in the link data.

Claims (65)

1. A method comprising:

transmitting, by a client device to a server, in response to a user interacting with a contextual deep link, a request associated with the contextual deep link, the contextual deep link associated with link data indicating a configuration of an application;

receiving, from the server to the client device, a response to the request that is generated according to contextual information for the client device, the response including a redirect instruction that is customized for the client device using the contextual information identified for the client device;

initiating, by the client device, the application stored on the client device based on the response;

transmitting, by the client device to the server and in response to initiating the application, a request by the application for link data;

generating, by the application of the client device, a unique fingerprint of the client device based on a plurality of characteristics of the client device;

transmitting, by the application of the client device to the server, the unique fingerprint; and

receiving, from the server, the link data associated with the contextual deep link, the link data associated with the unique fingerprint, wherein the link data is received from the server only when a time interval between the transmission of the unique fingerprint to the server and the transmission of the request associated with the contextual deep link is below a threshold duration;

configuring, by the client device, the application according to the configuration indicated in the link data.

2. The method of claim 1 , wherein the contextual deep link is requested from the server by a second application on a second client device, the method further comprising:

receiving, from the second client device, the contextual deep link.

3. The method of claim 1 , wherein the link data is associated with a remote fingerprint stored on the server matching at least a threshold number of elements with the generated fingerprint generated by the application.

4. The method of claim 1 , wherein the contextual information indicates that the application referenced in the valid contextual deep link is not installed on the client device, the method further comprising:

initiating, by the client device, an application store application according to the data included the response;

providing, by the application store application of the client device to a user of the client device, a landing page corresponding to the application as indicated by the data included in the response; and

in response to the receiving an indication to install the application, installing the application.

5. The method of claim 1 , wherein the configuration of the application indicated by the link data includes a location within the application, the method further comprising:

providing, by the application of the client device to a user of the client device, the location within the application indicated by the link data.

6. The method of claim 1 , wherein link data indicates the configuration of the application by an indicator, the method further comprising:

determining, by the application of the client device, and using a configuration store of the application, the configuration of the application based on the indicator; and

configuring, by the application of the client device to a user of the client device, the application based on the configuration.

7. A system comprising:

a processor; and

a non-transitory computer readable storage medium storing instructions thereon, that when executed by the processor, causes the processor to:

transmit, by a client device to a server, in response to a user interacting with a contextual deep link, a request associated with the contextual deep link, the contextual deep link associated with link data indicating a configuration of an application;

receive, from the server to the client device, a response to the request that is generated according to contextual information for the client device, the response including a redirect instruction that is customized for the client device using the contextual information identified for the client device;

initiate, by the client device, the application stored on the client device based on the response;

transmit, by the client device to the server, and in response to initiating the application, a request by the application for link data;

generate, by the application of the client device, a unique fingerprint of the client device based on a plurality of characteristics of the client device;

transmit, by the application of the client device to the server, the unique fingerprint; and

receiving, from the server, the link data associated with the contextual deep link, the link data associated with the unique fingerprint, wherein the link data is received from the server only when a time interval between the transmission of the unique fingerprint to the server and the transmission of the request associated with the contextual deep link is below a threshold duration;

configuring, by the client device, the application according to the configuration indicated in the link data.

8. The system of claim 7 , wherein the contextual deep link is requested from the server by a second application on a second client device, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

receive, from the second client device, the contextual deep link.

9. The system of claim 7 , wherein the link data is associated with a remote fingerprint stored on the server matching at least a threshold number of elements with the generated fingerprint generated by the application.

10. The system of claim 7 , wherein the contextual information indicates that the application referenced in the valid contextual deep link is not installed on the client device, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

initiate, by the client device, an application store application according to the data included the response;

provide, by the application store application of the client device to a user of the client device, a landing page corresponding to the application as indicated by the data included in the response; and

in response to the receipt of an indication to install the application, install the application.

11. The system of claim 7 , wherein the configuration of the application indicated by the link data includes a location within the application, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

select, by the application of the client device, the location within the application indicated by the link data.

12. The system of claim 7 , wherein link data indicates the configuration of the application by an indicator, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

determine, by the application of the client device, and using a configuration store of the application, the configuration of the application based on the indicator; and

configure, by the application of the client device to a user of the client device, the application based on the configuration.

13. A non-transitory computer readable storage medium storing instructions, that when executed by a processor, cause the processor to:

transmit, by a client device to a server, in response to a user interacting with a contextual deep link, a request associated with the contextual deep link, the contextual deep link associated with link data indicating a configuration of an application;

receive, from the server to the client device, a response to the request that is generated according to contextual information for the client device, the response including a redirect instruction that is customized for the client device using the contextual information identified for the client device;

initiate, by the client device, the application stored on the client device based on the response;

transmit, by the client device to the server, and in response to initiating the application, a request by the application for link data;

generate, by the application of the client device, a unique fingerprint of the client device based on a plurality of characteristics of the client device; and

transmit, by the application of the client device to the server, the unique fingerprint; and

receiving, from the server, the link data associated with the contextual deep link, the link data associated with the unique fingerprint, wherein the link data is received from the server only when a time interval between the transmission of the unique fingerprint to the server and the transmission of the request associated with the contextual deep link is below a threshold duration;

configuring, by the client device, the application according to the configuration indicated in the link data.

14. The computer readable storage medium of claim 13 , wherein the contextual deep link is requested from the server by a second application on a second client device, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

receive, from the second client device, the contextual deep link.

15. The computer readable storage medium of claim 13 , wherein the link data is associated with a remote fingerprint stored on the server matching at least a threshold number of elements with the generated fingerprint generated by the application.

16. The computer readable storage medium of claim 13 , wherein the contextual information indicates that the application referenced in the valid contextual deep link is not installed on the client device, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

initiate, by the client device, an application store application according to the data included the response;

provide, by the application store application of the client device to a user of the client device, a landing page corresponding to the application as indicated by the data included in the response; and

in response to the receipt of an indication to install the application, install the application.

17. The computer readable storage medium of claim 13 , wherein the configuration of the application indicated by the link data includes a location within the application, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

select, by the application of the client device, the location within the application indicated by the link data.

18. The computer readable storage medium of claim 13 , wherein link data indicates the configuration of the application by an indicator, and wherein the non-transitory computer readable storage medium stores further instructions thereon, that when executed by the processor, causes the processor to:

determine, by the application of the client device, and using a configuration store of the application, the configuration of the application based on the indicator; and

configure, by the application of the client device to a user of the client device, the application based on the configuration.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2016
From: MOLINET, MICHAEL; SEGHETE, MARIA MADALINA; AUSTIN, ALEXANDER JOHN; GASKIN, DMITRI
To: BRANCH METRICS, INC.
Reel/Frame 037719/0054 →
Continuity (3)
Provisional Application 62096833 · Dec 24, 2014
Provisional Application 62079512 · Nov 13, 2014
Related Publication 20160142859A1 · May 19, 2016