RecoverySystem contains methods for interacting with the Android recovery system (the separate partition that can be used to install system updates, wipe user data, etc.)
Reboots the device in order to install the given update package. Requires the REBOOT permission.
Parameters
context
the Context to use
packageFile
the update package to install. Must be on a partition mountable by recovery. (The set of partitions known to recovery may vary from device to device. Generally, /cache and /data are safe.)
Reboots the device and wipes the user data partition. This is sometimes called a "factory reset", which is something of a misnomer because the system partition is not restored to its factory state. Requires the REBOOT permission.
Verify the cryptographic signature of a system update package before installing it. Note that the package is also verified separately by the installer once the device is rebooted into the recovery system. This function will return only if the package was successfully verified; otherwise it will throw an exception. Verification of a package can take significant time, so this function should not be called from a UI thread. Interrupting the thread while this function is in progress will result in a SecurityException being thrown (and the thread's interrupt flag will be cleared).
Parameters
packageFile
the package to be verified
listener
an object to receive periodic progress updates as verification proceeds. May be null.
deviceCertsZipFile
the zip file of certificates whose public keys we will accept. Verification succeeds if the package is signed by the private key corresponding to any public key in this file. May be null to use the system default file (currently "/system/etc/security/otacerts.zip").