5

我試圖通過啓動意向(Intent --> DevicePolicyManager.ACTION_START_ENCRYPTION)以編程方式觸發我的ICS設備的加密。這工作得很好。我想知道是否發送了廣播或類似的內容來識別用戶是否點擊了「加密設備」或拒絕了請求。 我需要注意用戶的決定。Android ICS設備加密

我的第二個問題涉及在DevicePolicyManager內實施的方法setStorageEncryption(admin, boolean)。如果我之後啓動了上述的加密意圖,setStorageEncryption(admin, false)的呼叫是否會對設備加密產生影響?

親切的問候

+1

」我想知道是否發送了廣播或類似的信息來識別用戶是否單擊了「加密設備」或拒絕了請求「 - AFAIK,否,可能是因爲加密過程將涉及重新啓動。 「我需要注意用戶的決定」 - 我想可以根據需要調用'getStorageEncryptionStatus()'。 – CommonsWare 2012-08-09 10:53:32

+0

嗯,我其實只需要知道用戶是否點擊了「加密設備」。有沒有可能獲得這些信息? – user1168876 2012-08-09 13:22:24

+0

不是我所知道的。 – CommonsWare 2012-08-09 15:48:24

回答

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也不會被阻止。 「