Для тех, кто ещё не пользовался подобными программами, хотелось бы кратко пройтись по основным функциям:
Запуск ребёнком только тех приложений, которые вы разрешили.
Возможность запрета запуска приложения Google Play и совершения любых покупок.
Возможность запрета входящих/исходящих звонков и смс.
Запрет изменения настроек устройства.
Защита доступа к настройкам родительского контроля и выхода из детской оболочки.
С реализации этих функций мы и начали работу над приложением.
Для удобства использования и настройки выделено 5 категорий приложений: Игры, Развивающие, Обучающие, Другие и Недоступные ребёнку. По умолчанию все приложения недоступны ребёнку и, соответственно, находятся в пятой категории. Чтобы разрешить запуск приложения, вам достаточно просто перетащить его в одну из разрешённых категорий.
К сожалению, в Android полностью запретить доступ к приложениям нельзя, поэтому нам приходится мониторить все запущенные. За это отвечает сервис, который раз в секунду проверяет текущее приложение и «блокирует» его, если оно запрещено (например: настройки из статус-бара или приложения из списка недавно запущенных), выводя сообщение о блокировке.
Доступ к настройкам лаунчера традиционно защищён пин-кодом, который можно восстановить через email в случае утери. Мы предусмотрели, что ребёнок может запросить восстановление, тем самым сделав родительский пин-код недействительным. Во избежание таких недоразумений, мы не меняем старый пин-код до того момента, пока не будет введён новый. Восстановление пин-кода доступно каждые 15 минут.