System and method for enabling control of mobile device functional components
First Claim
1. A processor-implemented method performed by a computing device via a particular application operating on an operating system (“
- OS”
) for controlling removal of the particular application, the method comprising;
receiving a disable request call to the particular application from the OS via settings activity;
purposefully delaying a reply to the disable request call for a particular time period, the purposefully delaying comprising performing an operating system sleep call;
after the purposeful delay, switching to a particular activity and stopping the settings activity to prevent removal of the particular application, wherein the particular application includes a client state manager installed on the computing device which communicates with a server state manager operated on a particular server accessible via a network enabled to lock or unlock the particular application;
the particular activity enabling a determining of a device administrator permission for the particular application;
storing at least one client state indicating an uninstall lock status of the particular application;
for each of the at least one client state, storing a client digest of the client state on the computing device;
receiving via the network from the particular server periodic transmissions of a particular server digest corresponding to at least one server state maintained by the particular server, which at least one server state indicates an uninstall lock status of the particular application, wherein the particular server digest further corresponds to the client digest;
comparing the particular server digest with the corresponding client digest;
transmitting to the particular server via the network a state request corresponding to the at least one server state responsive to a determination of a difference between the particular server digest and the corresponding client digest;
receiving from the particular server via the network the at least one server state;
disabling an uninstall lock on the particular application as indicated by the received at least one server state to enable removal of the particular application;
storing the received at least one server state as the corresponding at least one client state; and
storing the received particular server digest as the corresponding client digest.
5 Assignments
0 Petitions
Accused Products
Abstract
A system is provided including a non-transitory computer readable storage medium that causes a mobile device to store client states indicating statuses of mobile device functional components. Each client state corresponds to a functional component. A client digest of the client state is stored. A server digest corresponding to a server state and the client digest is received from a server. The server state indicates a status of a mobile device functional component. The server digest is compared with the client digest. A state request is transmitted to the server responsive to a determination of a difference between the server digest and client digest. The server state is received from the server. The functional component is enabled or disabled as indicated by the server state. The server state and digest are stored as the client state and digest respectively. Methods for control of mobile device functional components are also provided.
-
Citations
11 Claims
-
1. A processor-implemented method performed by a computing device via a particular application operating on an operating system (“
- OS”
) for controlling removal of the particular application, the method comprising;receiving a disable request call to the particular application from the OS via settings activity; purposefully delaying a reply to the disable request call for a particular time period, the purposefully delaying comprising performing an operating system sleep call; after the purposeful delay, switching to a particular activity and stopping the settings activity to prevent removal of the particular application, wherein the particular application includes a client state manager installed on the computing device which communicates with a server state manager operated on a particular server accessible via a network enabled to lock or unlock the particular application; the particular activity enabling a determining of a device administrator permission for the particular application; storing at least one client state indicating an uninstall lock status of the particular application; for each of the at least one client state, storing a client digest of the client state on the computing device; receiving via the network from the particular server periodic transmissions of a particular server digest corresponding to at least one server state maintained by the particular server, which at least one server state indicates an uninstall lock status of the particular application, wherein the particular server digest further corresponds to the client digest; comparing the particular server digest with the corresponding client digest; transmitting to the particular server via the network a state request corresponding to the at least one server state responsive to a determination of a difference between the particular server digest and the corresponding client digest; receiving from the particular server via the network the at least one server state; disabling an uninstall lock on the particular application as indicated by the received at least one server state to enable removal of the particular application; storing the received at least one server state as the corresponding at least one client state; and storing the received particular server digest as the corresponding client digest. - View Dependent Claims (2, 3, 4, 5)
- OS”
-
6. A processor-implemented method performed by a computing device via a particular application operating on an operating system (“
- OS”
) for controlling removal of the particular application, the method comprising;receiving a disable request call to the particular application from the OS via settings activity; purposefully delaying a reply to the disable request call for a particular time period, the purposefully delaying comprising performing an operating system sleep call; after the purposeful delay, switching to a particular activity and stopping the settings activity to prevent removal of the particular application, wherein the particular application includes a client state manager installed on the computing device which communicates with a server state manager operated on a particular server accessible via a network enabled to lock or unlock the particular application; the particular activity enabling a determining of a device administrator permission by a process comprising; the particular activity enabling at least one of a PIN dialog or a password dialog; and receiving at least one of a PIN or a password via the at least one of the PIN dialog or the password dialog; and enabling removal of the particular application responsive to receiving the at least one of the PIN or the password. - View Dependent Claims (7, 8, 9, 10)
- OS”
-
11. A processor-implemented method performed by a computing device via a particular application operating on an operating system (“
- OS”
) for controlling removal of the particular application, the method comprising;receiving a disable request call to the particular application from an OS via settings activity; purposefully delaying a reply to the disable request call for a particular time period, the purposefully delaying comprising performing an operating system sleep call; after the purposeful delay, switching to a particular activity and stopping the settings activity to prevent removal of the particular application, wherein the particular application includes a client state manager installed on the computing device which communicates with a server state manager operated on a particular server accessible via a network enabled to lock or unlock the particular application; the particular activity enabling a determining of a device administrator permission for the particular application by a process comprising; the particular activity enabling a dialog for display responsive to the disable request call instructing a user to contact a network accessible application server to enable removal of the particular application; and receiving instructions from the network accessible application server to enable removal of the particular application; and enabling removal of the particular application responsive to the instructions from the network accessible application server.
- OS”
Specification