Reputation: 53
I am developing an Android device management service.
One of the functions for this is specifying what apps should be installed on registered devices of the service.
The scenario is that a manager will upload an enterprise app to the service for use on his employees' Android devices.
He then asks the service to deploy the app. The service communicates with a pre-installed app on the devices. This app downloads the enterprise app then installs it without any confirmation from the user.
Another requirement of this is that the user is prevented from installing or un-installing applications themselves.
I have been looking at the android.app.admin package but the policy functionality seems limited. I have also discovered that it is possible to donwnload an APK then fire an intent to install it. However this needs confirmation from the user.
In short, is it possible to install an Android application from within another application without any confirmation from the user whatsoever?
Upvotes: 5
Views: 5883
Reputation: 22371
No. Actually, Android is designed to prevent the scenario you're describing. Bunching together several of your bullet points:
* Apps are installed without user interaction
* These apps are chosen not by the device user, but by a remote "manager"
* User has no ability to uninstall said apps
* User has no ability to install any other apps
There's no technical difference between this and malware.
However, there is an alternative, called Google Apps Device Policy for Android, which allows the Administrator to (from the page):
Require that you have a PIN or password on your device.
Require a complex password on your device.
Require a screen lock for idle timeout on your mobile device.
Wipe a lost or stolen device.
Additionally, this application gives you the ability to remotely:
Reset PIN
Ring Device
Lock Device
Locate your device
It also has facilities for remote wiping a device.
Upvotes: 7