IP Library Granted Patent US 9,158,650
Granted Patent B2
US 9,158,650 · App. 13/105,478 · Granted Oct 13, 2015

Mobile application performance management

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 9,158,650
App. No.
13/105,478
Granted
Oct 13, 2015
Kind
B2
Abstract

In one embodiment, a non-transitory processor-readable medium stores code representing instructions that when executed cause a processor to receive a first signal including a performance datum associated with a first mobile application resident at a mobile device. The code can further represent instructions that when executed cause the processor to receive a second signal including a performance datum associated with a second mobile application resident at the mobile device. The code can further represent instructions that when executed cause the processor to send, based on the first signal and the second signal, a third signal including at least one performance metric based at least in part on the performance datum associated with the first mobile application and the performance datum associated with the second mobile application.

Claims (76)

1. A non-transitory processor-readable medium storing code representing instructions that when executed cause a processor to:

receive, at a process running on a mobile device, via an application programming interface (API) provided by the process, first mobile application performance data associated with a first mobile application running on the mobile device, wherein the API is configured to enable data communication between the process and the first mobile application;

receive, at the process, via the API, second mobile application performance data associated with a second mobile application running on the mobile device, the second mobile application being different from the first mobile application, wherein the API is further configured to enable data communication between the process and the second mobile application;

calculate, at the process, a performance metric based at least in part on the first mobile application performance data and the second mobile application performance data; and

send the performance metric from the mobile device to a server,

wherein the first mobile application and the second mobile application comprise code associated with a software development toolkit configured to enable communication with the process using the API.

2. The non-transitory processor-readable medium of claim 1 , wherein the first mobile application performance data includes information associated with at least one of:

availability of the first mobile application;

performance speed of the first mobile application;

feature usage associated with the first mobile application;

debug information associated with the first mobile application;

advertisement information associated with the first mobile application;

business metrics associated with the first mobile application;

one or more errors associated with the first mobile application; and

network connectivity of the first mobile application.

3. The non-transitory processor-readable medium of claim 1 , wherein the first mobile application performance data is sent by the first application according to a predetermined schedule.

4. The non-transitory processor-readable medium of claim 1 , wherein the first mobile application performance data is sent by the first application in response to an error associated with the first mobile application.

5. The non-transitory processor-readable medium of claim 1 , wherein the performance metric is based at least in part on a correlation between the first mobile application performance data and the second mobile application performance data.

6. The non-transitory processor-readable medium of claim 1 , wherein the code further represents instructions that when executed cause the processor to:

generate a performance report associated with the first application, wherein the performance report is based at least in part on a correlation between the first mobile application performance data and at least one of: a status datum associated with one or more components of the mobile device; an environmental datum defined by an operating system installed on the mobile device; a status datum associated with a communication network to which the mobile device is connected; or a third performance datum associated with the first application; and

send the performance report from the mobile device to a server.

7. A non-transitory processor-readable medium storing code representing instructions that when executed cause a processor to:

receive, from a process running on a first mobile device, via an application programming interface (API) provided by the process, first mobile application performance data associated with of a first mobile application running on the first mobile device, wherein the API is configured to enable receipt of the first mobile application performance data;

receive, from the process running on the first mobile device, via an API, second mobile application performance data associated with a second mobile application running on the first mobile device, the second mobile application being different from the first mobile application, wherein the API is further configured to enable receipt of the second mobile application performance data; and

calculate a performance metric based at least in part on the first mobile application performance data and the second mobile application performance data,

wherein the first mobile application and the second mobile application comprise code associated with a software development toolkit configured to enable communication with the process using the API.

8. The non-transitory processor-readable medium of claim 7 , wherein the code further represents instructions configured to cause the processor to: send the performance metric to the first mobile device.

9. The non-transitory processor-readable medium of claim 7 , wherein the code further represents instructions that when executed cause the processor to:

receive mobile device data from the first mobile device,

wherein the mobile device data relates to at least one of:

a configuration change associated with the first mobile application;

a configuration setting associated with the first mobile application;

a configuration change associated with the mobile device;

a configuration setting associated with the mobile device;

an available storage space of the mobile device;

identifier data associated with the mobile device;

power usage data associated with the mobile device;

network connectivity data associate with the mobile device; and

network performance data associated with the mobile device.

10. The non-transitory processor-readable medium of claim 7 , wherein the code further represents instructions that when executed cause the processor to:

define a baseline normal mobile application performance level for the first mobile application;

calculate a mobile application performance level for the first mobile application; and

send a signal to the first mobile device, wherein the signal is configured to cause the first mobile device to display the baseline normal application performance level for the first mobile application and the mobile application performance level for the first mobile application.

11. The non-transitory processor-readable medium of claim 7 , wherein the code further represents instructions that when executed cause the processor to:

receive, from a cloud application, cloud application performance data associated with a first cloud application accessed by the mobile device; and

calculate a cloud application performance metric based at least in part on the third cloud application performance data.

12. The non-transitory processor-readable medium of claim 7 , wherein the code further represents instructions that when executed cause the processor to:

receive an alert based at least in part on an error associated with the first mobile application; and

send a signal to the first mobile device,

wherein the signal is configured to cause the first mobile device do one or more of:

change a system setting;

change a user setting; or

change an application setting.

13. The non-transitory processor-readable medium of claim 7 , wherein the code further represents instructions that when executed cause the processor to:

receive, from a second mobile device, third mobile application performance data associated with the first mobile application running on the second mobile device; and

calculate application performance data associated with the first mobile application based at least in part on the first mobile application performance data and the third mobile application performance data.

14. A method for collecting application performance data, the method comprising:

receiving, at a process running on a mobile device, via an application programming interface (API) provided by the process, first mobile application performance data associated with a first mobile application running on the mobile device, wherein the API is configured to enable data communication between the process and the first mobile application;

receiving, at the process, via the API, second mobile application performance data associated with a second mobile application running on the mobile device, the second mobile application being different from the first mobile application, wherein the API is further configured to enable data communication between the process and the second mobile application;

calculating, at the process, a performance metric based at least in part on the first mobile application performance data and the second mobile application performance data; and

sending the performance metric from the mobile device to a server,

wherein the first mobile application and the second mobile application comprise code associated with a software development toolkit configured to enable communication with the process using the API.

15. The method of claim 14 , wherein the first mobile application performance data includes information associated with at least one of:

availability of the first mobile application;

performance speed of the first mobile application;

feature usage associated with the first mobile application;

debug information associated with the first mobile application;

advertisement information associated with the first mobile application;

business metrics associated with the first mobile application;

one or more errors associated with the first mobile application; and

network connectivity of the first mobile application.

16. The method of claim 14 , wherein the first mobile application performance data is sent by the first mobile application according to a predetermined schedule.

17. The method of claim 14 , wherein the first mobile application performance data is received in response to an error associated with the first mobile application.

18. The method according to claim 14 , further comprising:

generating a performance report associated with the first application, wherein the performance report is based at least in part on a correlation between the first mobile application performance data and at least one of: a status datum associated with one or more components of the mobile device; an environmental datum defined by an operating system installed on the mobile device; a status datum associated with a communication network to which the mobile device is connected; or a third performance datum associated with the first application; and

sending the performance report from the mobile device to a server.

Assignments (7)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2018
From: GOOD TECHNOLOGY HOLDINGS LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 045196/0255 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2017
From: BOXTONE INC.
To: GOOD TECHNOLOGY HOLDINGS LIMITED
Reel/Frame 043305/0668 →
RELEASE OF SECURITY INTEREST Recorded Mar 18, 2014
From: NXT CAPITAL SBIC, LP
To: BOXTONE INC.
Reel/Frame 032464/0623 →
SECURITY AGREEMENT Recorded Mar 1, 2012
From: BOXTONE INC.
To: NXT CAPITAL SBIC, LP, ITS SUCCESSORS AND ASSIGNS
Reel/Frame 027793/0342 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2011
From: AKIREKADU, ASHWATH NARAYAN; BHAT, DINESH HARISCHANDRA; GAFFNEY, MICHAEL J.; BERK, MITCHELL F.; FISTE, WILLIAM R., III; SNYDER, CAREY ALAN
To: BOXTONE, INC.
Reel/Frame 026265/0266 →