Method to modify android application life cycle to control its execution in a containerized workspace environment
First Claim
Patent Images
1. A method of modifying a life cycle of a mobile device app using a containerizer application, the method comprising:
- providing an application manifest file and a byte code file, the application manifest file and byte code file corresponding to a computer software application;
renaming, by the containerizer application, an original method of an application class to a renamed method of the application class in the byte code file;
renaming, by the containerizer application, a name of an original method of an activity class to a renamed method of the activity class in the byte code file;
after renaming the original method of the application class, inserting, by the containerizer application, a wrapper method in the application class in the byte code file, the wrapper method having a name of the original method of the application class, the wrapper method configured to call an authentication or encryption method before calling the renamed method of the application class;
after renaming the original method of the activity class, inserting, by the containerizer application, a dummy method in the activity class in the byte code file, the dummy method having a name of the original method of the activity class, the dummy method configured to call an authentication or encryption method before calling the renamed method of the activity class;
modifying, by the containerizer application, a name of an original content provider class to a modified content provider class name in the application manifest file; and
creating, by the containerizer application, a wrapper content provider class in the byte code file, the wrapper content provider class having the modified content provider class name.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, devices, and systems are described to modify the life cycle of a Google Android® application, in its application manifest file and byte code, such that the execution of the application can be controlled via policies and security governed by a workspace application installed on an Android-based device. Dummy wrapper classes are inserted into the byte code for network and I/O system calls that call security code before calling the original classes.
125 Citations
17 Claims
-
1. A method of modifying a life cycle of a mobile device app using a containerizer application, the method comprising:
-
providing an application manifest file and a byte code file, the application manifest file and byte code file corresponding to a computer software application; renaming, by the containerizer application, an original method of an application class to a renamed method of the application class in the byte code file; renaming, by the containerizer application, a name of an original method of an activity class to a renamed method of the activity class in the byte code file; after renaming the original method of the application class, inserting, by the containerizer application, a wrapper method in the application class in the byte code file, the wrapper method having a name of the original method of the application class, the wrapper method configured to call an authentication or encryption method before calling the renamed method of the application class; after renaming the original method of the activity class, inserting, by the containerizer application, a dummy method in the activity class in the byte code file, the dummy method having a name of the original method of the activity class, the dummy method configured to call an authentication or encryption method before calling the renamed method of the activity class; modifying, by the containerizer application, a name of an original content provider class to a modified content provider class name in the application manifest file; and creating, by the containerizer application, a wrapper content provider class in the byte code file, the wrapper content provider class having the modified content provider class name. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A machine-readable non-transitory medium embodying information indicative of instructions for causing one or more machines to perform operations for modifying a life cycle of a mobile device app, the operations comprising:
-
providing an application manifest file and a byte code file, the application manifest file and byte code file corresponding to a computer software application; renaming an original method of an application class to a renamed method of the application class in the byte code file; renaming a name of an original method of an activity class to a renamed method of the activity class in the byte code file; after renaming the original method of the application class, inserting a wrapper method in the application class in the byte code file, the wrapper method having a name of the original method of the application class, the wrapper method configured to call an authentication or encryption method before calling the renamed method of the application class; after renaming the original method of the activity class, inserting a dummy method in the activity class in the byte code file, the dummy method having a name of the original method of the activity class, the dummy method configured to call an authentication or encryption method before calling the renamed method of the activity class; modifying a name of an original content provider class to a modified content provider class name in the application manifest file; and creating a wrapper content provider class in the byte code file, the wrapper content provider class having the modified content provider class name. - View Dependent Claims (15, 16)
-
-
17. A computer system for modifying a life cycle of a mobile device app, the system comprising:
-
a processor, and a memory operatively coupled with the processor, the processor executing instructions from the memory comprising; program code for providing an application manifest file and a byte code file, the application manifest file and byte code file corresponding to a computer software application; program code for renaming an original method of an application class to a renamed method of the application class in the byte code file; program code for renaming a name of an original method of an activity class to a renamed method of the activity class in the byte code file; program code for, after renaming the original method of the application class, inserting a wrapper method in the application class in the byte code file, the wrapper method having a name of the original method of the application class, the wrapper method configured to call an authentication or encryption method before calling the renamed method of the application class; program code for, after renaming the original method of the activity class, inserting a dummy method in the activity class in the byte code file, the dummy method having a name of the original method of the activity class, the dummy method configured to call an authentication or encryption method before calling the renamed method of the activity class; program code for modifying a name of an original content provider class to a modified content provider class name in the application manifest file; and program code for creating a wrapper content provider class in the byte code file, the wrapper content provider class having the modified content provider class name.
-
Specification