I know there is a great example and discussion on this for Samsung devices and Android, so you might want to start there and see if it takes you to where you want to go with everything else.
http://developer.samsung.com/android/technical-docs/Neat-tricks-when-implementing-a-kiosk-app
Removing the title bar and status bar
... you may want to ... remove the app title bar and the system status bar, which will make an app full-screen. Please note that some devices (like the Galaxy Nexus or Galaxy Tab tablets) have another bar with buttons which are represented by hardware buttons in other devices. That bar cannot be covered by any app. In order to remove those bars, use the code below before calling the setContentView
method in your Activity. It will request the extended feature (to remove the title bar) and set the proper flag to the window (to cover the status bar).
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
Prevent exiting the app via the back button Since the kiosk app shouldn’t be closed, you can handle pushing the back button and assign
another action to it. For instance, you may want to go to the homepage
when user tries to exit the app. To do so, override one of the
Activity methods, which is called every time the back button is
pressed. [or set this to null or refresh to keep it on the same display]
@Override
public void onBackPressed() {
mWebView.loadUrl(mHomepageUrl);
}
Disable the home button In general, disabling the home button is not a good practice, but it can be very useful when developing a kiosk
app. Since Android 4.0 there is no effective method to do so, so you
may need to use another solution, e.g. setting your app as a home
screen, which is described further. However, for older OS versions you
may switch the window type to keyguard, which will prevent from
handling home button pressing.
@Override
public void onAttachedToWindow() {
getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
Set an app to cover the lock screen If you want your app to be visible all the time, setting it to be on top of the lock screen may
be useful. This is quite simple to achieve, you only need to set few
additional flags for your Activity window.
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
(snippets of the most useful elements of the document relating to a kiosk app)