我试图通过启动意图(Intent --> DevicePolicyManager.ACTION_START_ENCRYPTION)
以编程方式触发我的ICS设备加密。这非常有效。我想知道是否发送了广播或类似的广告来识别用户是否点击了“加密设备”或拒绝了请求。
我需要注意用户的决定。
我的第二个问题涉及方法setStorageEncryption(admin, boolean)
,该方法在DevicePolicyManager
内实施。如果我之后启动上面提到的加密意图,setStorageEncryption(admin, false)
的呼叫是否会对设备加密产生影响?
亲切的问候
答案 0 :(得分:2)
意图DevicePolicyManager.ACTION_START_ENCRYPTION
将用户发送到Settings -> Security -> Encrypt Phone
对话框,其中用户必须两次确认操作。此外,该设备需要至少80%的电池并连接到充电电缆。
如果用户拒绝此操作,或者他被禁止,例如未插入充电线,未发送广播。
正如CommonsWare正确提到的那样,您的应用程序可以使用DevicePolicyManager.getStorageEncryptionStatus()
定期检查加密状态。
致电DevicePolicyManager.setStorageEncryption(admin, false)
会将该管理员的最低政策设为not encrypted
。但是,其他管理员可以有更强的政策。
如果设备已加密,则设置not encrypted policy
不会解密设备。此外,它不会阻止用户使用Settings -> Security -> Encrypt Phone
手动加密设备。在这种情况下,意图DevicePolicyManager.ACTION_START_ENCRYPTION
也不会被阻止。