Implementing Kiosk Mode in Android


What is Kiosk Mode?

What is “Kiosk Mode” and why would you want to use it? Kiosk Mode basically allows a single Android application to have full control of the system. The user is prevented from leaving the current application or running other applications. Think of a hypothetical ATM machine that is running Android. It would be bad if the user could get out of the “ATM app” and start poking around with the underlying system. The idea is to run only one custom app and prevent any other applications to run (or only whitelisted applications). In this blog post I would like to share the approaches that you can take and the possible challenges you’ll face while developing these type of applications.

General Requirements for such applications:

  • Only one app is allowed to run.
  • App should automatically boot on device’s startup.
  • Only whitelisted contacts are allowed to be contacted (via Phone or SMS)
  • Only whitelisted apps are allowed to be used.
  • Tracking which applications are installed or uninstalled.
  • Disable status bar.

Continue reading