Wie entferne ich eine App mit aktivem Geräteadministrator unter Android?

81

Ich habe eine App mit aktiviertem Geräteadministrator (DevicePolicyManager) geschrieben und installiert. Aber wenn ich es deinstallieren möchte, ist es mit dieser Nachricht fehlgeschlagen

WARN / PackageManager (69): Paket com.mypackage.test wird nicht entfernt: Der Administrator des aktiven Geräts ist aktiv

Wie kann ich es deinstallieren oder programmgesteuert deinstallieren? Vielen Dank.

Shiami
quelle

Antworten:

171

Gehen Sie zu EINSTELLUNGEN-> Speicherort und Sicherheit-> Geräteadministrator und deaktivieren Sie den Administrator, den Sie deinstallieren möchten.

Deinstallieren Sie nun die Anwendung. Wenn weiterhin angezeigt wird, dass Sie die Anwendung vor der Deinstallation deaktivieren müssen, müssen Sie die Anwendung möglicherweise vor der Deinstallation erzwingen.

Atmaram
quelle
2
Es ist ein bisschen anders für mich, zumindest auf einem Huawei. Sie sollten zu Einstellungen-> Sicherheit-> Geräteadministratoren gehen und dann Ihre App deaktivieren.
Desmond13
Die APK (Google Play Services) wird in dieser Geräteadministratorliste nicht angezeigt.
Andreszs
34

Sie können auch einen neuen DevicePolicyManager erstellen und dann removeAdmin (adminReceiver) aus einem onClickListener einer Schaltfläche in Ihrer App verwenden

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

Und dann können Sie deinstallieren

Schilf
quelle
Wie kann ich nach meinem Anwendungskennwort fragen, bevor ich den oben angegebenen Administrator zum Entfernen des Geräts ausführe? Gibt es einen Weg dazu?
rollende Steine
1
Es gibt keinen legitimen Weg, dies zu tun. Sie können in onDisableRequestedeinen Code einschließen , um das Gerät mithilfe der Admin-Klasse zu sperren. Der Benutzer müsste dann das Telefon mit dem von Ihnen gewählten Passwort entsperren (wahrscheinlich App-Passwort). Um den Administrator tatsächlich zu deaktivieren, muss der Benutzer zu Ihrer App navigieren und auf eine Schaltfläche darin klicken. Wenn Sie verhindern möchten, dass der Benutzer den Administrator deaktiviert, muss dem Benutzer natürlich SEHR klar gemacht werden, dass sein Gerät gesperrt wird, wenn er versucht, es zu deaktivieren.
Reed
Jakar : Beachten Sie, dass dies onDisableRequestedsofort aufgerufen wird, nachdem der Benutzer in den Systemeinstellungen auf "Deaktivieren" geklickt hat. Zu diesem Zeitpunkt kann der AdminReceiver-Code etwas bewirken - das Gerät sperren, das Gerät löschen usw. Es gibt jedoch keine Möglichkeit, dem Benutzer weitere Fragen zu stellen, Warnungen anzuzeigen oder den Benutzer zu fragen, ob er sicher ist. Alle Dialoge oder Aktivitäten, die Sie onDisableRequestedanzeigen, werden angezeigt. Der Benutzer kann sie jedoch einfach mit der Schaltfläche Zurück schließen. Dann wird Ihr Administrator deaktiviert, und Ihre App hat nichts unternommen, um dies zu verhindern.
Winitzki
Das obige ist für Android 3.1 und niedriger korrekt. Es scheint, dass Android 3.2 dieses Problem behoben hat! Siehe auch stackoverflow.com/questions/9298364/…
winitzki
4

Auf Samsung gehen Sie auf „Einstellungen“ -> „Bildschirm sperren und Sicherheit“ -> „Andere Sicherheitseinstellungen“ -> „Telefon Administratoren“ und deaktivieren Sie die Server - Betreiber , die Sie deinstallieren möchten.

Das Wort "Sicherheit" war auf meinem Display versteckt, daher war es nicht offensichtlich, dass ich auf "Bildschirm sperren" klicken sollte.

Raacer
quelle
4
Die Option zum Deaktivieren ist für mich deaktiviert. Was macht man als nächstes?
Apm
1

Geben Sie das Tresorkennwort ein und das Symbol für die Optionen in der rechten oberen Ecke des Tresors befindet sich dort. Drücken Sie darauf. In diesem -> Einstellungen-> Vault-Administrator werden Riten nicht ausgewählt. Arbeit erledigt. Sie können die App jetzt deinstallieren.

Natendra
quelle
1

Für Redmi-Benutzer

Einstellungen -> Passwort & Sicherheit -> Datenschutz -> Spezieller App-Zugriff -> Geräte-Admin-Apps

Klicken Sie auf, um die Apps zu deaktivieren

Rajan
quelle
0

Redmi / Xiaomi Benutzer

Gehen Sie zu "Settings" -> "Password & security" -> "Privacy" -> "Special app access" -> "Device admin apps"und wählen Sie das Konto aus, das Sie deinstallieren möchten.

Oder einfach

Gehen Sie zu Einstellung -> Suchen Sie dann nach Geräte-Administrator-Apps -> Klicken Sie auf und wählen Sie das Konto aus, das Sie deinstallieren möchten.

Srikrushna
quelle