Ist es möglich, den Geräteadministrator über den ADB-Befehl zu aktivieren, anstatt auf zu tippen?
"Einstellung -> Sicherheit -> Geräteadministratoren -> App auswählen -> Aktivieren"
auf Handheld?
Wenn es möglich ist, wie?
adb
device-administrator
Marengga
quelle
quelle
Antworten:
Es ist nicht möglich. Der Einstellungscode wurde speziell geschrieben, um dies zu verhindern. Am nächsten können Sie die Seite mit den Einstellungen für die Geräteverwaltung in der App Einstellungen aufrufen . Sie können dies tun mit:
quelle
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
ohne einfaches Anführungszeichen seinGetestet und funktioniert unter Android 7.0 ohne root:
Um den Administratorempfänger eines installierten Pakets zu finden, verwenden Sie den folgenden Befehl, um die Shell zu adbieren und die Ausgabe zu überprüfen:
Um ein Beispiel aus der Praxis zu geben, finden Sie hier den Befehl zum Aktivieren des IBM Maas360 Android-Clients als Geräteadministrator:
quelle
Ja, vorausgesetzt, Sie haben Root-Zugriff. Sie müssten den Empfänger der App und das Richtlinienflag in die Datei einfügen
/data/system/device_policies.xml
. Um beispielsweise Tasker als Geräteadministrator zu aktivieren, fügen Sie die folgenden Zeilen in die Datei ein:Für Android 5.x: Entfernen Sie die letzte Zeile mit,
</policies>
wenn bereits ein Geräteadministrator im System aktiviert ist. Fügen Sie einfach die Zeilen in der Datei nach der Zeile mit der Zeichenfolge hinzu<policies setup-complete="true">
.Für Android 4.2.1: Entfernen Sie die letzte Zeile mit,
</policies>
wenn bereits ein Geräteadministrator im System aktiviert ist. Fügen Sie einfach die Zeilen in der Datei nach der Zeile mit der Zeichenfolge hinzu<policies>
.Starten Sie das Gerät neu, damit die Änderungen wirksam werden.
( Busybox erforderlich) Sie können mit
sed
oderecho
oder einem Befehl , dass Sie bequem mit der Datei mit den Zeilen zu schreiben. Hilfe finden Sie in meiner Antwort hier: Wie aktiviere ich den Geräteadministrator für bestimmte Apps mit Tasker?quelle
Das ist möglich. Sie können das neue Android-Tool UI-Automator verwenden, um auf eine beliebige Ansicht oder Schaltfläche im System zu klicken und mit dieser zu interagieren, einschließlich "Aktivieren" für den Geräteadministrator. Hier ist wie:
Schreiben Sie Code, um mit Ihrer Voreinstellungsliste zu interagieren, und klicken Sie auf "Aktivieren". Beispiel:
UiScrollable settingsItem = new UiScrollable (new UiSelector (). ClassName ("android.widget.ListView")); UiObject listButton = settingsItem.getChildByText (neuer UiSelector (). ClassName ("android.widget.LinearLayout"), "Enable Device Admin"); listButton.click (); (neues UiObject (neues UiSelector (). Text ("Aktivieren")). clickAndWaitForNewWindow (); me.celebrateWith (neues Bier ());
Kompiliere es:
ant build
adb -d push bin/LookoutTest.jar /data/local/tmp/
adb shell am start -S "'com.android.settings/.Settings\$DeviceAdminSettingsActivity'"
adb -d shell uiautomator runtest LookoutTest.jar -c DALaunch
quelle
Sie können das Gerät in Android Studio als Eigentümer festlegen. Gehen Sie zuerst zum adb-Speicherort unter Platform-tools in Android Sdk und führen Sie dann den Befehl adb shell aus. Ich habe den vollständigen Pfad angegeben und Sie können ihn an Ihre Anforderungen anpassen, wenn Sie den ADB-Pfad und den Paketnamen ändern
MyDeviceAdminReceiver ist die Schnittstelle.
quelle