从 Android 14 开始,多个设备政策管理代理可以使用 DevicePolicyManager
API 设置政策。
通用原则
如果多个设备政策管理代理对用户强制执行政策
- 设备政策管理代理可以查询他们能够设置的任何政策的已强制执行或已解析政策。
- 每个政策设置都会产生一个回调 (
onPolicySetResult
),指示政策已正确设置,或者因给定原因(例如政策冲突或硬件故障)而未能设置。 - 如果政策的已解析状态稍后发生更改,则会收到一个回调 (
onPolicyChanged
),指示政策是否与该代理设置的政策匹配。 - 大多数政策都基于最严格优先原则运行。这意味着任何设备政策管理代理选择的最严格政策都将得到强制执行。
Android 14(API 级别 34)及更高版本
在 Android 14(API 级别 34)及更高版本中,兼容 Android 的设备必须实现下表定义的政策解析机制,以便在多个设备政策管理代理设置政策时解析冲突。下表 (MostRecent
、MostRestrictive
、StringSetUnion
和 TopPriority
) 中引用的解析机制是 Android 开源项目中定义的解析机制的类名称。
DevicePolicyManager API | 解析机制 |
---|---|
MostRecent :当多个管理员设置时,强制执行最近的政策。 |
|
|
MostRestrictive :如果任何管理员设置了用户限制,则设置该限制。 |
StringSetUnion :解析为由一个或多个管理员设置的政策的并集(对于表示为字符串集的政策)。 |
|
TopPriority :根据设备政策管理代理所持角色定义的以下从高到低的优先级顺序进行解析
|