I\'ve developed and app that is a slide show of pictures which each play a sound when you tap them. It\'s like a picture book for ages 2-4.
The problem is, since and
I needed to have toddler lock in a new app, and did not want to use a launcher. Here is what I did, you can see the app at https://play.google.com/store/apps/details?id=com.justforkids.animalsounds
For step 3, here are more details:
Create the overlay layout, for example file locked_overlay.xml:
In your service to show or hide the overlay use:
private View lockedOverlay = null;
private void hideLockedOverlay() {
if (lockedOverlay != null) {
WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
windowManager.removeView(lockedOverlay);
lockedOverlay = null;
}
}
private void showLockedOverlay() {
if (lockedOverlay != null) {
return;
}
WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
WindowManager.LayoutParams viewLayoutParams = new WindowManager.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
PixelFormat.TRANSLUCENT);
viewLayoutParams.gravity = Gravity.TOP | Gravity.LEFT;
LayoutInflater inflater = LayoutInflater.from(this);
lockedOverlay = inflater.inflate(R.layout.locked_overlay, null);
windowManager.addView(lockedOverlay, viewLayoutParams);
}
You will need the permission