裝置政策解析架構

從 Android 14 開始,多個裝置政策管理代理程式可以使用 DevicePolicyManager API 設定政策。

一般原則

如果有多個裝置政策管理代理程式對使用者強制執行政策,則會發生以下情況:

  • 裝置政策管理代理程式可以查詢已強制執行或已解決的政策,以便設定任何政策。
  • 每個政策設定都會產生回呼 (onPolicySetResult),指出政策設定正確或因特定原因 (例如政策衝突或硬體故障) 而設定失敗。
  • 如果政策的已解決狀態日後有所變更,系統會收到回呼 (onPolicyChanged),指出政策是否與該代理程式所設定的政策相符。
  • 大多數政策都會以最嚴格的政策為準。也就是說,系統會強制執行任何裝置政策管理代理程式所選取的嚴格政策。

Android 14 (API 級別 34) 以上版本

在 Android 14 (API 級別 34) 以上版本中,相容的 Android 裝置必須實作下表所定義的政策解析機制,以便在有多個裝置政策管理代理程式設定政策時解決衝突。下表中參照的解析機制 (MostRecentMostRestrictiveStringSetUnionTopPriority) 是 Android 開放原始碼計畫中定義的解析機制類別名稱。

DevicePolicyManager API 解析度機制
MostRecent:如果有多位管理員設定政策,系統會套用最新的政策。
MostRestrictive:如果有管理員設定使用者限制,則會設定該限制。
StringSetUnion:會解析為一或多位管理員設定的政策的聯集 (政策以字串集表示)。
TopPriority:根據裝置政策管理代理程式所持有的角色,以以下由高至低的優先順序解析:
  1. 裝置鎖定管理員
  2. 企業管理員
  3. 其他管理員