Aktivovat správce zařízení pomocí ADB
On 17 února, 2021 by adminJe možné místo klepnutí aktivovat správce zařízení pomocí příkazu ADB
„Nastavení -> Zabezpečení -> Správci zařízení -> Vyberte aplikaci -> Aktivovat“
na kapesním počítači?
Pokud je to možné, jak?
Komentáře
- Měli byste zvážit přijetí вʀaᴎᴅᴏƞ вєнᴎєƞ ' s odpovědí , protože funguje perfektně !!
Odpověď
Není to možné. Kód nastavení je speciálně napsán, aby se tomu zabránilo. Nejbližší, co můžete přijít, je vyvolat stránku Nastavení správy zařízení na Nastavení aplikace. Můžete to udělat pomocí:
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
komentářů
- děkuji Dane, malá oprava: mělo by to být
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
Bez jednoduchých uvozovek - Ve většině prostředí tento příkaz spustí pouze Nastavení , nikoli Nastavení správy zařízení stránka. Zde je ' s Izzy ' vysvětlení proč .
- A co deaktivace? je to možné?
odpověď
Testováno a funguje na Androidu 7.0 bez root:
adb shell dpm set-active-admin --user current com.company.foo.bar.package/.the.Admin.Reciever
Chcete-li najít přijímač správce nainstalovaného balíčku, použijte následující příkaz příkazu adb shell a zkontrolujte výstup:
adb shell pm dump com.company.foo.bar.package | grep " filter" | cut -d " " -f 12 | sort | uniq
Chcete-li uvést příklad ze skutečného světa, je zde příkaz, který slouží k aktivaci klienta IBM Maas360 pro Android jako správce zařízení:
adb shell pm dump com.fiberlink.maas360.android.control | grep " filter" | cut -d " " -f 12 | sort | uniq Output: … com.fiberlink.maas360.android.control/.receivers.GoogleCampaignReceiver com.fiberlink.maas360.android.control/.receivers.LocalEventReceiver com.fiberlink.maas360.android.control/.receivers.Maas360DeviceAdminReceiver <-- This is the one I want com.fiberlink.maas360.android.control/.receivers.Maas360SecondaryDeviceAdminReceiver … Set Device Admin: dpm set-active-admin --user current com.fiberlink.maas360.android.control/.receivers.Maas360DeviceAdminReceiver
Komentáře
- Funguje to! To musí být přijatá odpověď! Mám jednu otázku, je možné k tomuto příkazu přidat další? Potřebuji požádat o aktivační právo licence Samsung Knox po aktivaci správce a chtěl bych předat licenční klíč ' s jako extra (takže ho nemusím ukládat do svého kódu ani do svého zařízení)
- Upozorňujeme, že
dpm set-active-admin
není k dispozici pro Android 5, ale podobný efekt můžete získat pomocídpm set-device-owner
Odpověď
Ano, za předpokladu, že máte přístup root. Budete muset přidat přijímač aplikace a příznak zásad do souboru /data/system/device_policies.xml
. Chcete-li například povolit Tasker jako správce zařízení přidejte do uvedeného souboru následující řádky,
pro Android 5.x: Pokud je v systému již povolen správce zařízení, odeberte poslední řádek pomocí </policies>
. Řádky do souboru jednoduše přidejte za řádek s řetězcem <policies setup-complete="true">
.
<admin name="net.dinglisch.android.taskerm/net.dinglisch.android.taskerm.MyDeviceAdminReceiver"> <policies flags="8" /> </admin> </policies>
Pro Android 4.2.1: Odstraňte poslední řádek s </policies>
, pokud je v systému již povolen správce zařízení. Jednoduše přidejte řádky do souboru za řádek s řetězcem <policies>
.
<admin name="net.dinglisch.android.taskerm/net.dinglisch.android.taskerm.MyDeviceAdminReceiver"> <policies flags="8" /> </admin> </policies>
Restartujte zařízení, aby se změny projevily.
( Busybox vyžadováno) Můžete použít nebo echo
nebo jakýkoli příkaz, který vám vyhovuje k zápisu souboru s těmito řádky. Pokud potřebujete další pomoc, přečtěte si mou odpověď zde: Jak povolit administrátora zařízení pro konkrétní aplikace pomocí Taskeru?
Odpovědět
můžete nastavit zařízení jako vlastníka z Android Studio. Nejprve přejděte do umístění adb, které je v Platform-tools v systému Android Sdk, a poté spusťte příkaz adb shell. Dal jsem úplnou cestu a můžete upravit podle svého požadavku při změně cesty adb a názvu balíčku
C:\Users\Owner\AppData\Local\Android\Sdk\platform-tools>adb shell dpm set-device-owner package-name/.MyDeviceAdminReceiver
MyDeviceAdminReceiver je rozhraní.
Komentáře
- Upozorňujeme, že jakmile je aplikace nastavena jako vlastník , je velmi obtížné to vrátit
- ahoj @Sam Vím, ale naštěstí to můžeme udělat pomocí kódování, abychom vlastníka vrátili zpět.
Odpovědět
Toto je možné. Pomocí nového nástroje pro Android UI-Automator pro Android můžete klikat a pracovat s jakýmkoli pohledem nebo tlačítkem v systému, včetně stisknutí tlačítka „Aktivovat“ pro správce zařízení. Zde je postup:
- Získat UI-Automator spuštěn. (přejděte do části „Nakonfigurujte své vývojové prostředí“ a nastavte nový projekt Java).
-
Napište nějaký kód pro interakci se seznamem předvoleb a klikněte na „Aktivovat“. Příklad:
UiScrollable settingsItem = new UiScrollable (new UiSelector (). ClassName („android.widget.ListView“)); UiObject listButton = settingsItem.getChildByText (nový UiSelector ().className („android.widget.LinearLayout“), „Povolit správce zařízení“); listButton.click (); (new UiObject (new UiSelector (). text („Activate“))). clickAndWaitForNewWindow (); me.celebrateWith (new Beer ());
-
Zkompilovat:
ant build
- Zatlačte na soubor jar:
adb -d push bin/LookoutTest.jar /data/local/tmp/
- Spusťte aktivitu nastavení:
adb shell am start -S ""com.android.settings/.Settings\$DeviceAdminSettingsActivity""
- Spusťte automatizace:
adb -d shell uiautomator runtest LookoutTest.jar -c DALaunch
- párty.
komentáře
- Bude to fungovat, i když aktuální národní prostředí zařízení není ' t angličtina?
Napsat komentář