Aktivoi laitteen pääkäyttäjä ADB: n kautta
On helmikuu 17, 2021 by adminVoiko laitteen järjestelmänvalvojan aktivoida ADB-komennolla napauttamisen sijaan?
”Asetus -> Suojaus -> Laitteen järjestelmänvalvojat -> Valitse sovellus -> Aktivoi”
kannettavassa tietokoneessa?
Jos se on mahdollista, miten?
Kommentit
- Sinun kannattaa harkita вʀaᴎᴅᴏƞ вєнᴎєƞ ’ s vastaus , koska se toimii täydellisesti !!
Vastaa
Se ei ole mahdollista. Asetuskoodi on kirjoitettu nimenomaan tämän estämiseksi. Lähin tulet on tuoda Laitehallinta-asetukset -sivu Asetukset -sovellus. Voit tehdä tämän seuraavasti:
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
kommentit
- kiitos Dan, vähän korjausta: sen pitäisi olla
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
Ilman yksittäistä lainausta - Useimmissa komentosarjoissa komento alkaa vain Asetukset , ei Laitteen hallinta-asetukset sivu. Tässä ’ s Izzy ’ selitys miksi .
- Entä käytöstä poistaminen? onko se mahdollista?
Vastaa
Testattu ja toimii Android 7.0: lla ilman juuria:
adb shell dpm set-active-admin --user current com.company.foo.bar.package/.the.Admin.Reciever
Löydät asennetun paketin järjestelmänvalvojan vastaanottimen käyttämällä seuraavia komentoja ja tarkistamalla lähdön:
adb shell pm dump com.company.foo.bar.package | grep " filter" | cut -d " " -f 12 | sort | uniq
Tässä esimerkki todellisesta maailmasta: komento, jolla aktivoidaan IBM: n Maas360 Android -asiakas laitteen järjestelmänvalvojana:
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
Kommentit
- SE TOIMII! Tämän on oltava hyväksytty vastaus! Minulla on yksi kysymys, onko tähän komentoon mahdollista lisätä ylimääräistä? Minun on pyydettävä Samsung Knox -lisenssin aktivointioikeutta järjestelmänvalvojan aktivoinnin jälkeen ja haluaisin välittää lisenssin ’ -avaimen ylimääräisenä (joten minun ei tarvitse tallentaa sitä koodiini tai laitteelleni)
- Huomaa, että
dpm set-active-admin
ei ole käytettävissä Android 5: ssä, mutta saat samanlaisen vaikutuksen käyttämällädpm set-device-owner
Vastaa
Kyllä, jos sinulla on pääkäyttäjän oikeudet. Sinun on lisättävä sovelluksen vastaanotin ja käytäntölippu tiedostoon /data/system/device_policies.xml
. Jos esimerkiksi haluat ottaa käyttöön Tasker kun laitteen järjestelmänvalvoja lisää seuraavat rivit mainittuun tiedostoon,
Android 5.x: Poista viimeinen rivi </policies>
-toiminnolla, jos järjestelmässä on jo laitteen järjestelmänvalvoja käytössä. Lisää vain rivin tiedostoon rivillä merkkijonolla <policies setup-complete="true">
.
<admin name="net.dinglisch.android.taskerm/net.dinglisch.android.taskerm.MyDeviceAdminReceiver"> <policies flags="8" /> </admin> </policies>
Android 4.2.1: Poista viimeinen rivi kohdasta </policies>
, jos järjestelmässä on jo käytössä laitteen järjestelmänvalvoja. Lisää yksinkertaisesti tiedoston rivit rivillä merkkijonolla <policies>
.
<admin name="net.dinglisch.android.taskerm/net.dinglisch.android.taskerm.MyDeviceAdminReceiver"> <policies flags="8" /> </admin> </policies>
Käynnistä laite uudelleen, jotta muutokset tulevat voimaan.
( Busybox vaaditaan) Voit käyttää tai echo
tai mikä tahansa komento, johon olet mukava kirjoittaa tiedosto näillä riveillä. Jos tarvitset apua, katso vastaukseni täältä: Kuinka laitteen järjestelmänvalvoja otetaan käyttöön tietyille sovelluksille Taskerilla?
Vastaa
voit asettaa laitteen omistajaksi Android Studiosta. Mene ensin adb-sijaintiin, joka on Platform-toolsissa Android Sdk: ssä, ja suorita sitten adb-kuorikomento. Annan täydellisen polun ja voit mukauttaa vaatimuksesi mukaan muuttamalla adb-polkua ja paketin nimeä.
C:\Users\Owner\AppData\Local\Android\Sdk\platform-tools>adb shell dpm set-device-owner package-name/.MyDeviceAdminReceiver
MyDeviceAdminReceiver on käyttöliittymä.
Kommentit
- Huomaa, että kun sovellus on asetettu omistajaksi , tätä on erittäin vaikea kumota
- hei @Sam Tiedän, mutta onneksi voimme tehdä tämän koodaamalla kumoamaan omistajan.
Vastaa
Tämä on mahdollista. Voit käyttää androidin uutta työkalua UI-Automator napsauttamalla minkä tahansa järjestelmän näkymää tai painiketta ja vuorovaikutuksessa sen kanssa, mukaan lukien lyödä ”Aktivoi” laitteen järjestelmänvalvojalle. Näin:
- Hanki UI-Automator käynnissä. . Esimerkki:
UiScrollable settingsItem = new UiScrollable (new UiSelector (). ClassName (”android.widget.ListView”)); UiObject listButton = settingsItem.getChildByText (uusi UiSelector ().className (”android.widget.LinearLayout”), ”Ota laitehallinta käyttöön”); listButton.click (); (uusi UiObject (uusi UiSelector (). teksti (”Aktivoi”))). napsautaAndWaitForNewWindow (); me.celebrateWith (uusi olut ());
-
Käännä se:
ant build
- Työnnä purkitiedosto:
adb -d push bin/LookoutTest.jar /data/local/tmp/
- Käynnistä asetustoimintasi:
adb shell am start -S ""com.android.settings/.Settings\$DeviceAdminSettingsActivity""
- Suorita automaatio:
adb -d shell uiautomator runtest LookoutTest.jar -c DALaunch
- juhlat.
Kommentit
- Toimiiko tämä, vaikka laitteen nykyinen kieli ei olisikaan ’ t englanti?
Vastaa