Czy możliwe jest aktywowanie administratora urządzenia za pomocą polecenia ADB zamiast dotykania
„Ustawienia -> Bezpieczeństwo -> Administratorzy urządzeń -> Wybierz aplikację -> Aktywuj”
na palmtopie?
Jeśli to możliwe, w jaki sposób?
adb
device-administrator
marengga
źródło
źródło
Odpowiedzi:
To nie jest możliwe. Kod ustawień został specjalnie napisany, aby temu zapobiec. Najbliżej możesz przywołać stronę ustawień Administrowania urządzeniem w aplikacji Ustawienia . Możesz to zrobić za pomocą:
źródło
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
Bez pojedynczego cytatuTestowane i działające na Androidzie 7.0 bez roota:
Aby znaleźć odbiorcę administratora zainstalowanego pakietu, użyj następującego polecenia do polecenia powłoki adb i przejrzyj dane wyjściowe:
Aby podać przykład ze świata rzeczywistego, oto polecenie użyte do aktywacji klienta Maas360 dla Androida IBM jako administrator urządzenia:
źródło
Tak, pod warunkiem, że masz uprawnienia roota. Musisz dodać odbiornik aplikacji i flagę zasad do pliku
/data/system/device_policies.xml
. Na przykład, aby włączyć Tasker jako administrator urządzenia, dodaj następujące wiersze do tego pliku,W systemie Android 5.x: Usuń ostatni wiersz z,
</policies>
jeśli w systemie jest już włączony administrator urządzenia. Po prostu dodaj linie w pliku po linii z łańcuchem<policies setup-complete="true">
.W Androidzie 4.2.1: Usuń ostatni wiersz z,
</policies>
jeśli w systemie jest już włączony Administrator urządzenia. Po prostu dodaj linie w pliku po linii z łańcuchem<policies>
.Uruchom ponownie urządzenie, aby zmiany odniosły skutek.
( Wymagany Busybox ) Możesz użyć
sed
lubecho
dowolnego polecenia, które ci odpowiada, aby zapisać plik za pomocą tych linii. Aby uzyskać pomoc, zobacz moją odpowiedź tutaj: Jak włączyć administratora urządzenia dla określonych aplikacji za pomocą Taskera?źródło
To jest możliwe. Możesz użyć nowego narzędzia Android UI-Automator, aby klikać i wchodzić w interakcje z dowolnym widokiem lub przyciskiem w systemie, w tym naciskając „Aktywuj” dla administratora urządzenia. Oto jak:
Napisz kod, aby wejść w interakcję z listą preferencji i kliknij „Aktywuj”. Przykład:
UiScrollable settingsItem = new UiScrollable (new UiSelector (). ClassName („android.widget.ListView”)); UiObject listButton = settingsItem.getChildByText (nowy UiSelector (). ClassName („android.widget.LinearLayout”), „Enable Device Admin”); listButton.click (); (nowy UiObject (nowy UiSelector (). tekst („Aktywuj”))). clickAndWaitForNewWindow (); me.celebrateWith (new Beer ());
Skompiluj to:
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
źródło
możesz ustawić urządzenie jako właściciela w Android Studio. Najpierw przejdź do lokalizacji adb, która znajduje się w Platform-tools w Android Sdk, a następnie uruchom polecenie powłoki adb. Podałem pełną ścieżkę i możesz zmienić swój wymóg po zmianie ścieżki adb i nazwy pakietu
MyDeviceAdminReceiver to interfejs.
źródło