从Android 12开始,Knox DomainFilterRule不再起作用,因此需要使用Android的Network Security Config来实现该功能。以下是使用Network Security Config实现包含域名过滤规则的Knox策略的示例代码。
首先,在res/xml/文件夹中创建一个名为network_security_config.xml的文件,并定义域名过滤规则:
example.com
然后,在res/raw/文件夹中创建一个名为example_ca.crt的证书文件,其中包含你信任的证书。
接下来,在Knox策略中启用Network Security Config,如下所示:
val restrictionData = Bundle().apply {
putString("policy_network-security-config", "network_security_config")
}
knoxManager.setRestrictions(KnoxManager.POLICY_NETWORK_SECURITY_CONFIG, restrictionData)
其中,"network_security_config"是你在network_security_config.xml文件中定义的名称。
完成以上步骤后,Knox策略将包含定义的域名过滤规则。