Gue*_*est 4 android device-owner
大家好,我有一个问题,我一直在寻找解决方案的日子。
我有一个安装在100多个设备上的android应用。(Android 5.1.1 API22和6.0.1 API 23)
https://developer.android.com/reference/android/app/admin/package-summary.html
我经历了所有这些引用,但没有走运:/使用devicePolicyManager时,出现错误:XXXXX App不是设备所有者。我知道有一种方法可以通过Shell命令(ADB)来获得设备所有者,但是我不能通过USB在所有设备上单独做到这一点。
DevicePolicyManager deviceManger =(DevicePolicyManager)Forms.Context.GetSystemService(Context.DevicePolicyService); ComponentName demoDeviceAdmin =新的ComponentName(Forms.Context,Java.Lang.Class.FromType(typeof(DeviceAdmin))); deviceManger.SetGlobalSetting(demoDeviceAdmin,“ wifi_device_owner_configs_lockdown”,“ 1”);
源代码说:“设备所有者只能在未配置的设备上设置,除非它是由” adb”启动的,在这种情况下,如果没有与该设备关联的帐户,我们将允许它”
如果您没有设置任何帐户,则可以使用dpm以编程方式进行设置:
try {
Runtime.getRuntime().exec("dpm set-device-owner com.example.deviceowner/.MyDeviceAdminReceiver");
} catch (Exception e) {
Log.e(TAG, "device owner not set");
Log.e(TAG, e.toString());
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
参考:http : //florent-dupont.blogspot.fr/2015/01/android-shell-command-dpm-device-policy.html