代码之家  ›  专栏  ›  技术社区  ›  artem

无法在安装Android 11的三星设备上设置设备所有者

  •  0
  • artem  · 技术社区  · 5 年前

    我正试图将我的应用程序设置为三星A51和安卓11的设备所有者。这是一个新设备,没有添加帐户:

    adb shell dpm set-device-owner <package>/<package>.receiver.AdminReceiver
    java.lang.RuntimeException: Can't set package ComponentInfo{<package>/<package>.receiver.AdminReceiver} as device owner.
        at com.android.commands.dpm.Dpm.runSetDeviceOwner(Dpm.java:204)
        at com.android.commands.dpm.Dpm.onRun(Dpm.java:115)
        at com.android.internal.os.BaseCommand.run(BaseCommand.java:60)
        at com.android.commands.dpm.Dpm.main(Dpm.java:41)
        at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
        at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:409)
    

    有一个活动的内置设备管理员:

    adb shell dumpsys device_policy
    Current Device Policy Manager state:
      
      
      
      Enabled Device Admins (User 0, provisioningState: 0):
        com.samsung.android.kgclient/.receiver.KGAdminReceiver:
          uid=10089
          testOnlyAdmin=false
    

    此方法适用于其他设备,但不适用于此三星。为什么以及如何修复它?

    附笔。 我已经阅读了关于SO的所有(或几乎所有)类似主题。

    0 回复  |  直到 5 年前
        1
  •  0
  •   ZuxZux    3 年前

    我认为你无法将你的应用设置为设备所有者,因为你的应用还没有设备管理员权限。您必须将应用程序设置为设备管理员,然后才能将应用程序设为设备所有者。使用此命令将您的应用设置为设备管理员。

    adb shell dpm set-active-admin <package>/<package>.receiver.AdminReceiver
    

    然后,您可以使用命令将应用程序设置为设备所有者

    adb shell dpm set-device-owner <package>/<package>.receiver.AdminReceiver
    

    它对我有效^^你可以试试。

    推荐文章