根据 Android N文档-
默认情况下,面向 Android N 的应用仅信任系统提供的证书,不再信任用户添加的证书颁发机构 (CA)。面向 Android N 的应用如果希望信任用户添加的 CA,应使用网络安全配置来指定应如何信任用户 CA。
我从文档中了解到,Android N 将不再信任用户安装的证书。所以应该有一种方法可以让它信任。Doc说您可以在清单文件中指定网络安全配置,例如-
<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
<application android:networkSecurityConfig="@xml/network_security_config"
... >
...
</application>
</manifest>
然后指定网络配置 -
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config>
<domain includeSubdomains="true">example.com</domain>
<trust-anchors>
<certificates src="@raw/my_ca"/>
</trust-anchors>
</domain-config>
</network-security-config>
但这显然是静态数据。我很想知道是否有办法在信任库中动态添加证书,因为在实际场景中会有动态证书和到期场景。文档没有为我清除这些。
Q1。关于如何实现动态添加可信证书的任何想法或建议?
Q2。这是否也会影响其他证书,例如可能不是特定于应用程序的 wifi 证书?那么如何信任自定义wifi证书呢?如何添加它本机信任存储?