it-swarm.com.de

Kann ich meine Anwendung im abgesicherten Modus arbeiten lassen?

Ich habe eine Android-Anwendung, die installierte und Systemanwendungen separat auflistet. Wenn der Benutzer versucht, das Gerät von meiner Anwendung aus neu zu starten, öffnet er meine Anwendung anstelle des Standardstartprogramms.

Wenn das Gerät jedoch neu gestartet wird, um 'safe mode' alle Logikabstürze zu verursachen, stürzt das Gerät im abgesicherten Modus zu meiner Anwendung ab, listet jedoch keine installierten Anwendungen auf und stoppt den Betrieb.

  1. Kann ich meine Anwendung auch in 'Safe mode' arbeiten lassen?

  2. Gibt es eine Möglichkeit, zu verhindern, dass das Gerät während der Ausführung meiner Anwendung zu 'safe mode' wechselt, beispielsweise mit einem RECEIVE_BOOT_COMPLETED-Broadcast-Empfänger?

  3. Was sind Geräte-Admin-Anwendungen? Ist es hilfreich in dieser Situation?

  4. Kann der abgesicherte Modus programmgesteuert erkannt werden?

Danke im Voraus

20
Devu Soman

Ich weiß, dass diese Frage alt ist, aber vielleicht hilft dies jemandem. Wenn Ihre Anwendung Geräteeigentümer oder Profilbesitzer für den Hauptbenutzer ist, können Sie den abgesicherten Modus vollständig deaktivieren (dies funktioniert ohne root):

DevicePolicyManager manager = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE);
ComponentName admin = new ComponentName(getApplicationContext(), DeviceAdminReceiver.class);
// To disable safe boot
manager.addUserRestriction(admin, UserManager.DISALLOW_SAFE_BOOT);
// To enable safe boot again
// manager.clearUserRestriction(admin, UserManager.DISALLOW_SAFE_BOOT);

BEARBEITEN: Sie können den Geräteeigentümer oder den Profilbesitzer einfach über ADB einstellen: https://developer.Android.com/studio/command-line/adb#dpm

adb Shell dpm set-device-owner com.example.deviceownerapp/.DeviceAdminReceiver

Beachten Sie, dass bei der Aktivierung des Gerätebesitzers keine Konten hinzugefügt werden müssen (Sie müssen jedoch nicht das System zurücksetzen, sondern alle Konten aus den Einstellungen entfernen). Nach dem Festlegen des Gerätebesitzers können Sie alle Konten erneut hinzufügen.

3
Robyer

Die einzige Möglichkeit, dies zu tun, besteht darin, die Benutzer-App zu einer System-App auf/system/app zu machen

Wenn Ihr Gerät jedoch verwurzelt ist, können Sie dies auf einfache Weise tun

  1. laden Sie den glücklichen Patcher herunter und aktivieren Sie den Root-Zugriff

  2. verwenden Sie die Suchoption, um die App zu finden, die Sie im abgesicherten Modus verwenden möchten, oder suchen Sie sie einfach im Scroll-Menü

  3. klicken Sie auf die App, klicken Sie auf Tools, und drücken Sie dann auf/system/app

  4. nachdem der Vorgang abgeschlossen ist, muss das Gerät neu gestartet werden

  5. die Benutzer-App kann jetzt im abgesicherten Modus aufgerufen werden

1
Sam Moldenha

Wenn Sie eine Verknüpfung dieser bestimmten App erstellen, die Sie im abgesicherten Modus starten möchten, können Sie dies im abgesicherten Modus tun. Sie sollten sich jedoch im Normalmodus befinden, wenn Sie die Verknüpfung erstellen.

1
Abdulatif Salat

Geräte-Admin-Apps werden ebenfalls nicht ausgeführt.

Um Ihre App im abgesicherten Modus auszuführen, müssen Sie Ihre App nach/system/app kopieren, für die Sie Root-Zugriff benötigen. 

So ist es nur auf gerooteten Geräten möglich.

0
Karthik