Моя рекомендация: Не делайте этого , если это не похоже на корпоративный тип.
Но. В onDisableRequested()
вы могли бы startActivity
для главного экрана, а затем startActivity
для созданного вами Activity
, который подтверждает, хотят они продолжать или нет. Если они выбирают «да», вы делаете это по своему усмотрению (вытрите устройство), если они говорят «нет», просто просто снова введите startActivity
для главного экрана (или finish()
).
Это все еще рискует тем, что они могут запустить ту же страницу настроек из недавних задач, при которой они, скорее всего, смогут нажать «да» (или ок) в диалоговом окне, которое всплыло с вашим пользовательским текстом и затем продолжите отключение администратора устройства. Чтобы попытаться избежать этого, вы можете сделать this в надежде, что он откроет страницу начальных настроек и очистит самый верхний экран администрирования отключенного устройства.
Вместо того, чтобы вытирать, вы всегда можете сделать resetPassword("new password")
, а затем lockNow()
. Если это приложение, связанное с безопасностью, то устройство этого человека не нужно стирать, а пароль был бы заранее задан лицом, установившим приложение.
Дайте мне знать, если у вас есть другие вопросы. Надеюсь, это поможет.
РЕДАКТИРОВАТЬ: Я получил upvote, который напомнил мне, что этот ответ существует, поэтому я решил добавить некоторую информацию.
Вы можете использовать lockNow()
в сочетании с Активом, который будет отображаться в верхней части экрана блокировки, если вы хотите заблокировать, а затем предлагать стирание или что-то еще.
А блокировка перед запуском стирания будет хорошей идеей для предотвращения проблем, если по какой-либо причине в процессе очистки произошла ошибка или задержка.
И если вы делаете что-то подобное в распределенном приложении (через магазины приложений), постарайтесь не нарушать их политику, поскольку нарушение политики МОЖЕТ вызвать постоянный бан в магазине приложений (это случилось со мной в Google Play из-за не более, чем недоразумение.)