IP Library Granted Patent US 9,971,611
Granted Patent B2
US 9,971,611 · App. 14/530,554 · Granted May 15, 2018

Monitoring a mobile device application

Inventor: Ajay Kumar Nadarthur Sreenivasan (Union City, CA)
Assignee: Cisco Technology, Inc.
G06F9/44521G06F9/45504G06F11/3466G06F2201/865
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,971,611
App. No.
14/530,554
Granted
May 15, 2018
Kind
B2
Abstract

The present technology allows for a mobile device operating system to be modified in order to better monitor the performance of the mobile device applications. A mobile device file, such as a dex file for android operating system, may be extracted from an APK file for an application. The mobile device file may be analyzed, and a new mobile device file may be generated in addition to the analyzed mobile device file. The modifications may include identifying methods that should be monitored during execution of the corresponding application on a mobile device. The mobile device file, may be modified at a remote server, provided back to the mobile device, and then loaded by the mobile device at a later time.

Claims (46)

1. A method for monitoring a mobile application at a mobile device, the method including:

extracting, by a server, a mobile device file from an application package format file that is associated with the mobile application of the mobile device;

analyzing, by the server, the extracted mobile device file to extract metadata that includes information on methods contained in the application package format file suitable to be modified with a wrapper and monitored;

providing, by the server, a user interface to display preexisting information on the methods contained in the application package format file already identified for monitoring;

receiving, by the server, through the user interface, input identifying additional methods to be monitored going forward;

generating, by the server, a new mobile device file that includes at least the additional methods in the wrapper in the new mobile device file;

receiving, at the server, a poll from an agent on the mobile device regarding changes to the application package format file; and

in response to receiving the poll, transmitting, by the server, the new mobile device file to the agent on the mobile device to cause the mobile device to set a flag indicating that the additional methods are enabled and that the new mobile device file should be loaded upon a next application restart.

2. The method of claim 1 , wherein the new mobile device file includes a dex file for an android operating system.

3. The method of claim 1 , wherein the application package format file includes a APK file.

4. The method of claim 1 , wherein the wrapper includes a sub-class wrapper.

5. The method of claim 1 , wherein generating the new mobile device file includes generating the new mobile device file to include methods already identified to be monitored found in the analyzed mobile device file in addition to the methods identified from the input received through the user interface.

6. The method of claim 1 , including:

generating a new application package format file that includes the new mobile device file; and

providing the new application package file that includes the new mobile device file to the agent on the mobile device.

7. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor on a sever to perform a method for monitoring a mobile application, the method including:

extracting a mobile device file from an application package format file that is associated with the mobile application of the mobile device;

analyzing the extracted mobile device file to extract metadata that includes information on methods contained in the application package format file suitable to be modified with a wrapper and monitored;

providing a user interface to display preexisting information on the methods contained in the application package format file already identified for monitoring;

receiving through the user interface, input identifying additional ones of the methods to be monitored going forward;

generating a new mobile device file that includes at least the additional methods in the wrapper in the new mobile device file;

receiving, at the server, a poll from an agent on the mobile device regarding changes to the application package format file; and

in response to receiving the poll, transmitting the new mobile device file to the agent on the mobile device to cause the mobile device to set a flag indicating that the additional methods are enabled and that the new mobile device file should be loaded upon a next application restart.

8. The non-transitory computer readable storage medium of claim 7 , wherein the new mobile device file includes a dex file for an android operating system.

9. The non-transitory computer readable storage medium of claim 7 , wherein the application package format file includes a APK file.

10. The non-transitory computer readable storage medium of claim 7 , wherein the wrapper includes a sub-class wrapper.

11. The non-transitory computer readable storage medium of claim 7 , wherein generating the new mobile device file includes generating the new mobile device file to include methods already identified to be monitored found in the analyzed mobile device file in addition to the methods identified from the input received through the user interface.

12. The non-transitory computer readable storage medium of claim 7 , including: generating a new application package format file that includes the new mobile device file; and providing the new application package file that includes the new mobile device file to the agent on the mobile device.

13. A system for monitoring a mobile application, the system including:

a processor;

a memory; and

one or more modules stored in memory and executable by a processor to perform operations including:

extract a mobile device file from an application package format file that is associated with the mobile application of the mobile device;

analyze the extracted mobile device file to extract metadata that includes information on methods contained in the application package format file suitable to be modified with a wrapper and monitored;

provide a user interface to display preexisting information on the methods contained in the application package format file already identified for monitoring;

receive through the user interface, input identifying additional ones of the methods to be monitored going forward;

generate a new mobile device file that includes at least the additional methods in the wrapper in the new mobile device file;

receive a poll from an agent on the mobile device regarding changes to the application package format file; and

in response to the received poll, transmit the new mobile device file to the agent on the mobile device to cause the mobile device to set a flag indicating that the additional methods are enabled and that the new mobile device file should be loaded upon a next application restart.

14. The system of claim 13 , wherein the new mobile device file includes a dex file for an android operating system.

15. The system of claim 13 , wherein the application package format file includes a APK file.

16. The system of claim 13 , wherein the wrapper includes a sub-class wrapper.

17. The system of claim 13 , wherein generating the new mobile device file includes generating the new mobile device file to include methods already identified to be monitored found in the analyzed mobile device file in addition to the methods identified from the input received through the user interface.

18. The system of claim 13 , including:

generating a new application package format file that includes the new mobile device file; and

providing the new application package file that includes the new mobile device file to the agent on the mobile device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2017
From: APPDYNAMICS LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 044173/0050 →
CHANGE OF NAME Recorded Jun 23, 2017
From: APPDYNAMICS, INC.
To: APPDYNAMICS LLC
Reel/Frame 042964/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2015
From: SREENIVASAN, AJAY KUMAR NADARTHUR
To: APPDYNAMICS, INC.
Reel/Frame 035702/0862 →
Continuity (1)
Related Publication 20160124757A1 · May 5, 2016