【发布时间】:2018-10-14 01:10:44
【问题描述】:
我知道命令"adb shell dpm set-device-owner pacakgename"
我想知道是否有办法在一个应用启动后以编程方式询问和设置设备所有者
基本上是相反的:
DevicePolicyManager.clearDeviceOwnerApp("com.package.something");
提前致谢!
【问题讨论】:
标签: android administrator owner
我知道命令"adb shell dpm set-device-owner pacakgename"
我想知道是否有办法在一个应用启动后以编程方式询问和设置设备所有者
基本上是相反的:
DevicePolicyManager.clearDeviceOwnerApp("com.package.something");
提前致谢!
【问题讨论】:
标签: android administrator owner
我最近遇到了这个问题,我无法通过 adb 设置设备管理员,经过一番折腾后,我找到了一种在 Android 9 上执行此操作的方法(它也可能适用于较低版本)。 我用的手机是小米MIX 3
adb shell dpm set-active-admin --user current package_name/device_admin_receiver
adb shell dpm set-device-owner --user current package_name/device_admin_receiver
【讨论】:
如果设备上没有用户帐户,或者设备已root,您只能设置设备所有者。这通常意味着您只能在恢复出厂设置后立即设置设备所有者。您可以使用 NFC 配置(我从未这样做过)或在 adb shell 中设置设备所有者。 adb 方法需要用户开启开发者模式,将安卓设备连接到电脑,然后在 shell 中输入命令。
成为设备所有者的伪代码:
if the app is not the device owner
if there is a user account
inform the user that the app cannot become the device owner
else if the app is a device administrator
instruct the user to run the adb command
else
request to become a device administrator
我的Device Owner 应用程序是一个完整的工作示例,包括如何从应用程序的包名称生成用户必须键入的命令。
【讨论】:
adb 设置设备所有者是不可能的。正确的方法是使用 NFC 或 QR 码配置。