You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从应用网络安全配置中引用Android库内置的CA证书?

解决方案

Android构建过程会自动合并所有依赖库的公共资源,你不需要拷贝证书文件,直接在应用的网络安全配置中引用库中res/raw目录下的证书即可,写法和引用应用本地资源完全一致。


前提条件

你依赖的Android库需要满足两个要求:

  • CA证书存放在库的res/raw目录下
  • 库没有配置资源私有(默认Android库的资源均为公开可访问状态)

具体配置示例

假设依赖库中存放的CA证书文件名为lib_ca_root.crt、lib_ca_intermediate.crt,你应用的网络安全配置写法如下:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config>
        <domain includeSubdomains="true">example.com</domain>
        <trust-anchors>
            <!-- 直接引用依赖库中的CA证书,无需拷贝到本地 -->
            <certificates src="@raw/lib_ca_root"/>
            <certificates src="@raw/lib_ca_intermediate"/>
        </trust-anchors>
    </domain-config>
</network-security-config>

注意事项

  • 避免应用本地res/raw目录下的文件和库中的证书文件名重名,重名时构建工具会优先使用应用本地的资源,覆盖库的资源
  • 如果库的CA证书存放在assets目录而非res/raw目录,无法直接在网络安全配置中引用,要么要求库开发者将证书迁移到res/raw目录,要么你需要拷贝证书到应用本地res/raw目录使用
  • 本方案仅支持Android 7.0(API level 24)及以上系统版本

内容的提问来源于stack exchange,提问作者Alix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 08:24:03