5

我正在尝试通过启动意图以编程方式触发我的 ICS 设备的加密(Intent --> DevicePolicyManager.ACTION_START_ENCRYPTION)。这工作得很好。我想知道是否发送了广播或类似的东西来识别用户是否点击了“加密设备”或拒绝了请求。我需要注意用户的决定。

我的第二个问题涉及setStorageEncryption(admin, boolean)DevicePolicyManager. setStorageEncryption(admin, false)如果我之后启动上面提到的加密意图,调用是否对设备加密有任何影响?

亲切的问候

4

1 回答 1

2

意图DevicePolicyManager.ACTION_START_ENCRYPTION将用户发送到Settings -> Security -> Encrypt Phone对话,用户必须在对话中确认两次操作。此外,该设备需要至少有 80% 的电池电量并连接到充电电缆。

如果用户拒绝这个动作或者他被禁止,例如充电电缆没有插入,则不发送广播。

正如 CommonsWare 正确提到的,您的应用程序可以使用DevicePolicyManager.getStorageEncryptionStatus().

调用DevicePolicyManager.setStorageEncryption(admin, false)将该管理员的最低策略设置为not encrypted. 然而,其他管理员可以有更强的策略。

如果设备已经加密,则设置 anot encrypted policy不会解密设备。此外,它不会阻止用户使用Settings -> Security -> Encrypt Phone. 在这种情况下,意图DevicePolicyManager.ACTION_START_ENCRYPTION也不会被阻止。

于 2014-07-23T22:15:03.877 回答