Skip to content
Tiantan
Articles

Aktivera enhetsadministratör via ADB

On februari 17, 2021 by admin

Är det möjligt att aktivera enhetsadministratör via ADB-kommando istället för att trycka på

”Inställning -> Säkerhet -> Enhetsadministratörer -> Välj app -> Aktivera”

på handhållen?

Om det är möjligt, hur?

Kommentarer

  • Du bör överväga att acceptera вʀaᴎᴅᴏƞ вєнᴎєƞ ’ s svar eftersom det fungerar perfekt !!

Svar

Det är inte möjligt. Inställningskoden är specifikt skriven för att förhindra detta. Det närmaste du kan komma är att ta fram Enhetsadministrationsinställningar på Inställningar app. Du kan göra detta med:

adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity" 

Kommentarer

  • Tack Dan, lite korrigering: det borde vara adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity" Utan enstaka offert
  • I de flesta skal startar det kommandot bara Inställningar , inte Enhetsadministrationsinställningarna sida. Här ’ s Izzy ’ s förklaring till varför .
  • Hur är det med att inaktivera? är det möjligt?

Svar

Testat och fungerar på Android 7.0 utan root:

adb shell dpm set-active-admin --user current com.company.foo.bar.package/.the.Admin.Reciever 

För att hitta administratörsmottagaren för ett installerat paket, använd följande för att adb shell-kommandot och granska utdata:

adb shell pm dump com.company.foo.bar.package | grep " filter" | cut -d " " -f 12 | sort | uniq 

För att ge ett verkligt exempel, här är kommandot som används för att aktivera IBMs Maas360 Android-klient som enhetsadministratör:

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 

Kommentarer

  • DET FUNGERAR! Detta måste vara det accepterade svaret! Jag har en fråga, är det möjligt att lägga till en extra till det kommandot? Jag måste begära Samsung Knox licensaktiveringsrättighet efter administratörsaktivering och jag vill skicka licens ’ s-nyckel som extra (så jag behöver inte lagra den i min kod eller på min enhet)
  • Observera att dpm set-active-admin inte är tillgängligt på Android 5, men du kan få en liknande effekt med dpm set-device-owner

Svar

Ja, förutsatt att du har root-åtkomst. Du måste lägga till appens mottagare och policyflaggan i filen /data/system/device_policies.xml. Till exempel, för att aktivera Tasker som enhetsadministratör lägger till följande rader i nämnda fil,

För Android 5.x: Ta bort den sista raden med </policies> om det redan finns en enhetsadministratör aktiverad i systemet. Lägg bara till raderna i filen efter raden med sträng <policies setup-complete="true">.

<admin name="net.dinglisch.android.taskerm/net.dinglisch.android.taskerm.MyDeviceAdminReceiver"> <policies flags="8" /> </admin> </policies> 

För Android 4.2.1: Ta bort den sista raden med </policies> om det redan finns en enhetsadministratör aktiverad i systemet. Lägg bara till raderna i filen efter raden med sträng <policies>.

<admin name="net.dinglisch.android.taskerm/net.dinglisch.android.taskerm.MyDeviceAdminReceiver"> <policies flags="8" /> </admin> </policies> 

Starta om enheten för att ändringarna ska träda i kraft.

( Busybox krävs) Du kan använda eller echo eller något kommando som du är bekväm med att skriva filen med dessa rader. För hjälp kan du se mitt svar här: Hur aktiverar du enhetsadministratör för specifika appar med Tasker?

Svar

kan du ställa in enheten som ägare från Android Studio. Gå först till adb-platsen som finns vid Platform-tools i Android Sdk och kör sedan kommandot adb shell. Jag har gett hela sökvägen och du kan justera efter ditt behov när du ändrar adb-sökväg och paketnamn

C:\Users\Owner\AppData\Local\Android\Sdk\platform-tools>adb shell dpm set-device-owner package-name/.MyDeviceAdminReceiver 

MyDeviceAdminReceiver är gränssnittet.

Kommentarer

  • Observera att när en app väljs som ägare är det väldigt svårt att ångra detta
  • hej @Sam Jag vet men lyckligtvis kan vi göra detta genom kodning för att ångra ägaren

Svar

Detta är möjligt. Du kan använda Androids nya verktyg UI-Automator för att klicka och interagera med valfri vy eller knapp på systemet inklusive att trycka på ”Aktivera” för enhetsadministratör. Så här:

  1. Skaffa UI-Automator körs. (gå till ”Konfigurera din utvecklingsmiljö” och konfigurera ett nytt java-projekt).
  2. Skriv lite kod för att interagera med din preferenslista och klicka på ”Aktivera”. Exempel:

    UiScrollable settingsItem = new UiScrollable (new UiSelector (). ClassName (”android.widget.ListView”)); UiObject listButton = settingsItem.getChildByText (ny UiSelector ().className (”android.widget.LinearLayout”), ”Enable Device Admin”); listButton.click (); (nytt UiObject (ny UiSelector (). text (”Aktivera”))). klickaAndWaitForNewWindow (); me.celebrateWith (new Beer ());

  3. Kompilera det: ant build

  4. Tryck på jar-filen: adb -d push bin/LookoutTest.jar /data/local/tmp/
  5. Starta din inställningsaktivitet: adb shell am start -S ""com.android.settings/.Settings\$DeviceAdminSettingsActivity""
  6. Kör automatisering: adb -d shell uiautomator runtest LookoutTest.jar -c DALaunch
  7. Party.

Kommentarer

  • Kommer detta att fungera även om enhetens nuvarande språk inte är ’ t engelska?

Written by admin

Lämna ett svar Avbryt svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

Senaste inläggen

  • Med hjälp av en balun med en resonansdipol
  • Vad är skillnaden mellan “ kan inte ” och “ kan inte ”? [duplicera]
  • På JFK, kan du flytta mellan terminalerna på sidan om inrikesflyg?
  • “ Uppskattat djupt ” eller “ uppskattade ”
  • Vad betyder ' abstrakta idéer '? [stängd]

Arkiv

  • februari 2021
  • januari 2021
  • december 2020
  • november 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어

Copyright Tiantan 2021 | Theme by Theme in Progress | Proudly powered by WordPress

Back to top