IP Library Granted Patent US 10,282,216
Granted Patent B2
US 10,282,216 · App. 15/211,543 · Granted May 7, 2019

Automatic import of third party analytics

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,282,216
App. No.
15/211,543
Granted
May 7, 2019
Kind
B2
Abstract

Techniques to facilitate acquisition of analytics data in a mobile application are disclosed herein. In at least one implementation, a software module of the mobile application monitors for an analytics function call from main program code to third party analytics code. The analytics function call is intercepted to redirect the analytics function call to a call handler function. The call handler function processes the analytics function call to extract analytics data from the analytics function call. The analytics function call is then passed to the third party analytics code.

Claims (34)

1. A method to facilitate acquisition of analytics data in a mobile application, wherein an application modification software development kit (SDK) is installed into the mobile application, the method comprising:

the application modification SDK marking a third party analytics function as native in metadata associated with the third party analytics function;

the application modification SDK modifying the metadata associated with the third party analytics function to identify a call handler function of the application modification SDK as a native code implementation of the third party analytics function in the metadata instead of an actual native code implementation of the third party analytics function, wherein an analytics function call from main program code of the mobile application to the third party analytics function is intercepted and redirected to the call handler function of the application modification SDK by virtue of the metadata;

in the call handler function, processing the analytics function call to extract analytics data from the analytics function call; and

passing the analytics function call to third party analytics code associated with the third party analytics function.

2. The method of claim 1 wherein the analytics function call from the main program code to the third party analytics function is triggered by a user interaction with the mobile application.

3. The method of claim 1 wherein passing the analytics function call to the third party analytics code comprises calling a copy of a bytecode implementation of the third party analytics function.

4. The method of claim 3 wherein the application modification SDK creates the copy of the bytecode implementation of the third party analytics function.

5. The method of claim 1 wherein processing the analytics function call to extract the analytics data from the analytics function call comprises processing the analytics function call to interpret a string that identifies an event and a payload.

6. The method of claim 1 further comprising processing the analytics data extracted from the analytics function call to determine independent analytics on the analytics data.

7. The method of claim 6 further comprising processing the independent analytics to generate an analytics report for presentation to a user.

8. One or more computer-readable storage media having program instructions stored thereon to facilitate acquisition of analytics data in a mobile application having an application modification software development kit (SDK) installed into the mobile application, wherein the program instructions, when executed by a computing system, direct the computing system to at least:

in the application modification SDK, mark a third party analytics function as native in metadata associated with the third party analytics function;

in the application modification SDK, modify the metadata associated with the third party analytics function to identify a call handler function of the application modification SDK as a native code implementation of the third party analytics function in the metadata instead of an actual native code implementation of the third party analytics function, wherein an analytics function call from main program code of the mobile application to the third party analytics function is intercepted and redirected to the call handler function of the application modification SDK by virtue of the metadata;

in the call handler function, process the analytics function call to extract analytics data from the analytics function call; and

pass the analytics function call to third party analytics code associated with the third party analytics function.

9. The one or more computer-readable storage media of claim 8 wherein the analytics function call from the main program code to the third party analytics function is triggered by a user interaction with the mobile application.

10. The one or more computer-readable storage media of claim 8 wherein the program instructions direct the computing system to pass the analytics function call to the third party analytics code by directing the computing system to call a copy of a bytecode implementation of the third party analytics function.

11. The one or more computer-readable storage media of claim 10 wherein the application modification SDK creates the copy of the bytecode implementation of the third party analytics function.

12. The one or more computer-readable storage media of claim 8 wherein the program instructions direct the computing system to process the analytics function call to extract the analytics data from the analytics function call by directing the computing system to process the analytics function call to interpret a string that identifies an event and a payload.

13. The one or more computer-readable storage media of claim 8 wherein the program instructions further direct the computing system to process the analytics data extracted from the analytics function call to determine independent analytics on the analytics data.

14. The one or more computer-readable storage media of claim 13 wherein the program instructions further direct the computing system to process the independent analytics to generate an analytics report for presentation to a user.

15. An apparatus comprising:

one or more computer-readable storage media; and

a mobile application comprising program instructions, the program instructions stored on the one or more computer-readable storage media that, when executed by a processing system, direct the processing system to at least:

mark a third party analytics function as native in metadata associated with the third party analytics function;

modify the metadata associated with the third party analytics function to identify a call handler function as a native code implementation of the third party analytics function in the metadata instead of an actual native code implementation of the third party analytics function, wherein an analytics function call from main program code of the mobile application to the third party analytics function is intercepted and redirected to the call handler function by virtue of the metadata;

in the call handler function, process the analytics function call to extract analytics data from the analytics function call; and

pass the analytics function call to third party analytics code associated with the third party analytics function.

16. The apparatus of claim 15 wherein the analytics function call from the main program code to the third party analytics function is triggered by a user interaction with the mobile application.

17. The apparatus of claim 15 wherein the program instructions direct the processing system to pass the analytics function call to the third party analytics code by directing the processing system call a copy of a bytecode implementation of the third party analytics function.

18. The apparatus of claim 17 wherein the program instructions direct the processing system to create the copy of the bytecode implementation of the third party analytics function.

19. The apparatus of claim 15 wherein the program instructions direct the processing system to process the analytics function call to extract the analytics data from the analytics function call by directing the processing system to process the analytics function call to interpret a string that identifies an event and a payload.

20. The apparatus of claim 15 wherein the program instructions further direct the processing system to process the analytics data extracted from the analytics function call to determine independent analytics on the analytics data and process the independent analytics to generate an analytics report for presentation to a user.

Assignments (6)
SECURITY INTEREST Recorded Jul 1, 2024
From: AIRSHIP GROUP, INC.; APPTIMIZE, LLC
To: RUNWAY GROWTH FINANCE CORP.
Reel/Frame 068099/0779 →
RELEASE OF SECURITY INTEREST Recorded Jun 28, 2024
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: AIRSHIP GROUP, INC.; APPTIMIZE, LLC
Reel/Frame 067965/0545 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME TO ADD A COMMA BETWEEN APPTIMIZE AND LLC PREVIOUSLY RECORDED ON REEL 050612 FRAME 0128. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Feb 9, 2021
From: APPTIMIZE, INC.
To: APPTIMIZE, LLC
Reel/Frame 055278/0689 →
SECURITY INTEREST Recorded Apr 2, 2020
From: URBAN AIRSHIP, INC.; APPTIMIZE, LLC
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052308/0550 →
CHANGE OF NAME Recorded Oct 2, 2019
From: APPTIMIZE, INC.
To: APPTIMIZE LLC
Reel/Frame 050612/0128 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2016
From: POON, MICHAEL L.; CARLI, ROBERTO; KOPPEL, JAMES BRANDON
To: APPTIMIZE, INC.
Reel/Frame 039167/0873 →