Как удалить приложение с активным администратором устройства на Android?

Я написал приложение с включенным администратором устройства (DevicePolicyManager) и установил его. Но когда я хочу удалить его, он возвращает ошибку с этим сообщением

WARN/PackageManager(69): пакет не удаляется com.mypackage.test: есть активный администратор устройства

Как я могу удалить его или удалить программно? Спасибо.


person shiami    schedule 22.03.2011    source источник


Ответы (7)


Перейдите в НАСТРОЙКИ->Местоположение и безопасность-> Администратор устройства и отмените выбор администратора, которого вы хотите удалить.

Теперь удалите приложение. Если он по-прежнему говорит, что вам нужно деактивировать приложение перед удалением, вам может потребоваться принудительно остановить приложение перед удалением.

person Atmaram    schedule 22.03.2011
comment
У меня немного по другому, по крайней мере на хуавей. Вы должны перейти в настройки-›безопасность-›администраторы устройства, а затем вы должны деактивировать свое приложение. - person desmond13; 15.12.2015
comment
APK (сервисы Google Play) не отображается в этом списке администратора устройства. - person andreszs; 25.03.2018

Вы также можете создать новый DevicePolicyManager, а затем использовать removeAdmin(adminReceiver) из onClickListener кнопки в вашем приложении.

//set the onClickListener here
{
   ComponentName devAdminReceiver = new ComponentName(context, deviceAdminReceiver.class);
   DevicePolicyManager dpm = (DevicePolicyManager)context.getSystemService(Context.DEVICE_POLICY_SERVICE);
   dpm.removeActiveAdmin(devAdminReceiver);
}

И тогда вы можете удалить

person Reed    schedule 26.08.2011
comment
Как я могу запросить пароль моего приложения перед выполнением удаления администратора устройства, указанного выше?? есть ли к этому способ?? - person rolling.stones; 14.06.2012
comment
Не существует законного способа сделать это. Вы можете включить в onDisableRequested некоторый код для блокировки устройства с помощью класса администратора. Затем пользователю нужно будет разблокировать телефон с помощью выбранного вами пароля (вероятно, пароля приложения). А затем, чтобы ДЕЙСТВИТЕЛЬНО отключить администратора, пользователю нужно будет перейти к вашему приложению и нажать кнопку в нем. Конечно, если вы собираетесь запретить пользователю отключать администратора, необходимо ОЧЕНЬ объяснить пользователю, что если он попытается отключить, его устройство будет заблокировано. - person Reed; 15.06.2012
comment
Jakar: обратите внимание, что onDisableRequested вызывается сразу после того, как пользователь нажимает «Отключить» в настройках системы. В этот момент код AdminReceiver может что-то сделать — заблокировать устройство, очистить устройство и т. д., но нет возможности задать пользователю дополнительные вопросы, отобразить какие-либо предупреждения или спросить пользователя, уверен ли он. Любые диалоги или действия, которые вы показываете из onDisableRequested, будут показаны, но пользователь может просто закрыть их с помощью кнопки «Назад», и тогда ваш администратор БУДЕТ ОТКЛЮЧЕН, и ваше приложение ничего не предпримет, чтобы предотвратить это. - person winitzki; 20.06.2012
comment
Вышеприведенное верно для Android 3.1 и ниже. Кажется, в Android 3.2 эта проблема устранена! См. также stackoverflow.com/questions/9298364/ - person winitzki; 20.06.2012

На Samsung перейдите в «Настройки» -> «Экран блокировки и безопасность» -> «Другие настройки безопасности» -> «Администраторы телефона» и отмените выбор администратора, которого вы хотите удалить.

Слово «безопасность» было скрыто на моем дисплее, поэтому не было очевидно, что я должен нажать «Экран блокировки».

person raacer    schedule 08.03.2017
comment
опция деактивации для меня отключена. что делать дальше? - person apm; 10.11.2017

Пользователь Redmi/Xiaomi

Перейдите к "Settings" -> "Password & security" -> "Privacy" -> "Special app access" -> "Device admin apps" и выберите учетную запись, которую вы хотите удалить.

Или просто

перейдите в настройки -> Затем найдите Приложения администратора устройства -> нажмите и выберите учетную запись, которую вы хотите удалить.

person Srikrushna    schedule 15.06.2020

Введите пароль хранилища, и в правом верхнем углу хранилища появится значок параметров хранилища. Нажмите на нее. В этом -> настройки-> обряды администратора хранилища не должны быть выбраны. Работа сделана. Теперь вы можете удалить приложение.

person Natendra    schedule 12.05.2015

Для пользователей Редми,

Настройки -> Пароль и безопасность -> Конфиденциальность -> Специальный доступ к приложениям -> Приложения администратора устройства

Нажмите деактивировать приложения

person Rajan    schedule 10.01.2020

Если вы знаете имя пакета, с помощью abd вы можете удалить устройство владелец

adb shell dpm remove-active-admin packagename/.yourAdminReceiver

потом

adb uninstall packagename
person fangxing    schedule 18.05.2021