在Android

时间:2017-05-26 03:14:55

标签: android

我在Android上有设备所有者应用,并且想要为device-admin.xml文件添加其他策略。这是必需的,因为我想在keyguard上禁用摄像头,这需要在device-admin.xml中提供<disable-keyguard-features />。该应用程序最初使用NFC安装,可以通过本地保存的apk文件安装该应用程序的新版本,该文件可以从我们的私人服务器下载,但是,当安装新版本的应用程序时,它似乎没有影响将<disable-keyguard-features />添加到device-admin.xml,因为我们在调用

时遇到SecurityException
aDevicePolicyManager.setKeyguardDisabledFeatures(aDeviceAdmin,
    DevicePolicyManager.KEYGUARD_DISABLE_SECURE_CAMERA);

现在,如果我们使用NFC重新配置具有新版本所有者应用的设备,那么一切顺利,但我正在寻找一种方法将此更改应用于现有应用,如何实现?

换句话说,我们如何更新Android设备上的设备所有者应用的政策要求而无需重新配置?

1 个答案:

答案 0 :(得分:4)

您无法将新策略添加到device-admin.xml并更新应用程序以激活所需的策略。

您必须重新请求权限才能激活该权限。

因此要么使用版本代码寻求更新处理机制,要么仅按照本link中的说明检查权限是否存在。

也请不要忘记添加一行代码,以检查依赖于新管理策略的任何代码或功能。

如果您觉得每次尝试运行代码时都要检查是否获得许可很昂贵,请在onEnabled的回调上DeviceAdminReceiver对其进行重置