IP Library Granted Patent US 10,572,280
Granted Patent B2
US 10,572,280 · App. 15/436,167 · Granted Feb 25, 2020

Mobile application activity detector

Inventors: Roxanna Moattar-Aliabadi (San Francisco, CA); Arpana Hosabettu (San Jose, CA); Ajay Ananth Krishna (San Jose, CA); Tal Max Akabas (Palo Alto, CA)
Assignee: Google LLC
G06F9/452G06F8/38G06F9/451G06F9/54H04L67/42
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,572,280
App. No.
15/436,167
Filed
Feb 17, 2017
Granted
Feb 25, 2020
Kind
B2
Art Unit
2199
USPC
717/120
Abstract

The subject matter of this specification generally relates to detecting events that occur within mobile applications without modifying code of the mobile application. In some implementations, a front-end server receives, from a mobile application management application installed on a client device, interaction data specifying (i) a user interaction identifier for a user interaction with an interactive item that presents, at a first mobile application, content for a second mobile application and (ii) an interactive item identifier. The front-end server receives event data specifying an occurrence of a specified user action within the second mobile application and the interactive identifier for the interactive item. A back-end server determines that the specified user action resulted from the user interaction based on a match between the interactive item identifier specified by the event data and the interactive item identifier that links to the user interaction identifier for the user interaction.

Claims (61)

1. A system for detecting user-initiated events within a second mobile application without modifying code of the second mobile application, the system comprising:

one or more front-end servers that:

receive, from a mobile application management application installed on a client device of a user and in response to a user interaction with an interactive item that presents, within a first mobile application, content for the second mobile application, interaction data specifying (i) a user interaction identifier that uniquely identifies the user interaction with the interactive item within the first mobile application and (ii) an interactive item identifier that identifies the interactive item and that was submitted to the mobile application management application by the first mobile application in response to the user interaction with the interactive item within the first mobile application;

store, in a data storage device, a data entry that links the interactive item identifier to the user interaction identifier based on the receipt of the interaction data; and

receive, from the mobile application management application and in response to an occurrence of a specified user action within the second mobile application after the user interaction with the interactive item, event data specifying (i) the occurrence of the specified user action within the second mobile application after the user interaction with the interactive item and (ii) the interactive item identifier that identifies the interactive item; and

one or more back-end servers that:

in response to receiving the event data, compare the interactive item identifier to multiple data entries that each link a respective interactive item identifier to a corresponding user interaction identifier;

determine, based on the comparing, that the specified user action resulted from the user interaction with the interactive item within the first mobile application based on a match between the interactive item identifier specified by the event data and the respective interactive item identifier that links to the corresponding user interaction identifier stored in the data storage device based on the receipt of the interaction data; and

provides, to the one or more front-end servers, data indicating that the specified user action in the second mobile application resulted from the user interaction with the interactive item within the first mobile application, wherein the one or more front-end servers update a user interface to indicate that the specified user action resulted from the user interaction with the interactive item.

2. The system of claim 1 , wherein the specified user action comprises a user interaction with a user interface of the second mobile application subsequent to the user interaction with the interactive item at the first mobile application.

3. The system of claim 1 , wherein:

the interaction data comprises a device identifier for the client device;

the event data comprises the device identifier for the client device; and

the one or more back-end servers determine that the specified user action within the second mobile application resulted from the user interaction with the interactive item based further on the device identifier of the interaction data matching the device identifier of the event data.

4. The system of claim 1 , wherein the one or more back-end servers determine that the specified user action resulted from the user interaction with the interactive item based further on a time at which the user interaction with the interactive item occurred and a time at which the specified user action occurred.

5. The system of claim 1 , wherein:

the one or more back-end servers identify multiple data entries that include a link between the interactive item identifier and one or more user interaction identifiers; and

the one or more back-end servers determine that the specified user action resulted from the user interaction with the interactive item based on a time at which the user interaction with the interactive item occurred being more recent than at time for each of the one or more user interaction identifiers.

6. The system of claim 1 , wherein the first mobile application comprises a web browser application that presents the interactive item.

7. The system of claim 1 , wherein:

the specified user action comprises a purchase of a product or service using the second mobile application;

the interactive item presents content related to the product or service; and

the event data includes at least one of (i) price for the product or service, (ii) an identifier for the product or service, or (iii) a type of purchase.

8. A computer-implemented method for detecting user-initiated events within a second mobile application without modifying code of the second mobile application, the method comprising:

receiving, from a mobile application management application installed on a client device of a user and in response to a user interaction with an interactive item that presents, within a first mobile application, content for the second mobile application, interaction data specifying (i) a user interaction identifier the uniquely identifies the user interaction with the interactive item within the first mobile application and (ii) an interactive item identifier that identifies the interactive item and that was submitted to the mobile application management application by the first mobile application in response to the user interaction with the interactive item within the first mobile application;

storing, in a data storage device, a data entry that links the interactive item identifier to the user interaction identifier based on the receipt of the interaction data;

receiving, from the mobile application management application and in response to an occurrence of a specified user action within the second mobile application after the user interaction with the interactive item, event data specifying (i) the occurrence of the specified user action within the second mobile application after the user interaction with the interactive item and (ii) the interactive item identifier that identifies the interactive item;

in response to receiving the event data, comparing the interactive item identifier to multiple data entries that each link a respective interactive item identifier to a corresponding user interaction identifier;

determining, based on the comparing, that the specified user action resulted from the user interaction with the interactive item within the first mobile application based on a match between the interactive item identifier specified by the event data and the respective interactive item identifier that links to the corresponding user interaction identifier stored in the data storage device based on the receipt of the interaction data; and

updating a user interface to indicate that the specified user action in the second mobile application resulted from the user interaction with the interactive item within the first mobile application.

9. The method of claim 8 , wherein the specified user action comprises a user interaction with a user interface of the second mobile application subsequent to the user interaction with the interactive item at the first mobile application.

10. The method of claim 8 , wherein:

the interaction data comprises a device identifier for the client device;

the event data comprises the device identifier for the client device; and

the method further comprising determining that the specified user action within the second mobile application resulted from the user interaction with the interactive item based further on the device identifier of the interaction data matching the device identifier of the event data.

11. The method of claim 8 , wherein determining that the specified user action resulted from the user interaction with the interactive item comprises determining that the specified user action resulted from the user interaction with the interactive item based further on a time at which the user interaction with the interactive item occurred and a time at which the specified user action occurred.

12. The method of claim 8 , further comprising:

identifying multiple data entries that include a link between the interactive item identifier and one or more user interaction identifiers; and

determining that the specified user action resulted from the user interaction with the interactive item based on a time at which the user interaction with the interactive item occurred being more recent than at time for each of the one or more user interaction identifiers.

13. The method of claim 8 , wherein the first mobile application comprises a web browser application that presents the interactive item.

14. The method of claim 8 , wherein:

the specified user action comprises a purchase of a product or service using the second mobile application;

the interactive item presents content related to the product or service; and

the event data includes at least one of (i) price for the product or service, (ii) an identifier for the product or service, or (iii) a type of purchase.

15. A non-transitory computer storage medium encoded with a computer program, the program comprising instructions that when executed by one or more data processing apparatus cause the data processing apparatus to perform operations comprising:

receiving, from a mobile application management application installed on a client device of a user and in response to a user interaction with an interactive item that presents, within a first mobile application, content for a second mobile application, interaction data specifying (i) a user interaction identifier that uniquely identifies the user interaction with the interactive item within the first mobile application and (ii) an interactive item identifier that identifies the interactive item and that was submitted to the mobile application management application by the second mobile application in response to the user interaction with the interactive item within the first mobile application;

storing, in a data storage device, a data entry that links the interactive item identifier to the user interaction identifier based on the receipt of the interaction data;

receiving, from the mobile application management application and in response to an occurrence of a specified user action within the second mobile application after the user interaction with the interactive item, event data specifying (i) the occurrence of the specified user action within the second mobile application after the user interaction with the interactive item and (ii) the interactive item identifier that identifies the interactive item;

in response to receiving the event data, comparing the interactive item identifier to multiple data entries that each link a respective interactive item identifier to a corresponding user interaction identifier;

determining, based on the comparing, that the specified user action resulted from the user interaction with the interactive item within the first mobile application based on a match between the interactive item identifier specified by the event data and the respective interactive item identifier that links to the corresponding user interaction identifier stored in the data storage device based on the receipt of the interaction data; and

updating a user interface to indicate that the specified user action in the second mobile application resulted from the user interaction with the interactive item within the first mobile application.

16. The non-transitory computer storage medium of claim 15 , wherein the specified user action comprises a user interaction with a user interface of the second mobile application subsequent to the user interaction with the interactive item at the first mobile application.

17. The non-transitory computer storage medium of claim 15 , wherein:

the interaction data comprises a device identifier for the client device;

the event data comprises the device identifier for the client device; and

the operations further comprise determining that the specified user action within the second mobile application resulted from the user interaction with the interactive item based further on the device identifier of the interaction data matching the device identifier of the event data.

18. The non-transitory computer storage medium of claim 15 , wherein determining that the specified user action resulted from the user interaction with the interactive item comprises determining that the specified user action resulted from the user interaction with the interactive item based further on a time at which the user interaction with the interactive item occurred and a time at which the specified user action occurred.

19. The non-transitory computer storage medium of claim 15 , wherein the operations further comprise:

identifying multiple data entries that include a link between the interactive item identifier and one or more user interaction identifiers; and

determining that the specified user action resulted from the user interaction with the interactive item based on a time at which the user interaction with the interactive item occurred being more recent than at time for each of the one or more user interaction identifiers.

20. The non-transitory computer storage medium of claim 15 , wherein the first mobile application comprises a web browser application that presents the interactive item.

Assignments (3)
CERTIFICATE OF CONVERSION - CHANGE OF NAME Recorded Jan 5, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 045008/0470 →
CHANGE OF NAME Recorded Oct 20, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044567/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2017
From: MOATTAR-ALIABADI, ROXANNA; HOSABETTU, ARPANA; KRISHNA, AJAY ANANTH; AKABAS, TAL MAX
To: GOOGLE INC.
Reel/Frame 041484/0269 →
Continuity (1)
Related Publication 20180239616A1 · Aug 23, 2018