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

为何构建过程会将network_security_config.xml的Host合并至Android AppLinks?

为什么构建过程会把network_security_config.xml的主机合并到AppLinks的Intent Filter中?

这其实是Android Gradle插件(AGP)的默认设计行为,目的是帮开发者减少重复配置、确保App Links验证和网络信任规则的一致性,具体原因可以拆解成这几点:

  • 自动同步信任域名,避免重复劳动
    你在network_security_config.xml里配置的<domain-config>主机,都是应用明确信任的域名——AGP默认会认为这些域名也应该是App Links需要验证的目标,所以会自动把它们合并到带有android:autoVerify="true"的<intent-filter>里。毕竟如果一个域名是应用网络层信任的,很大概率也是你想通过App Links唤起应用的域名,手动重复添加太麻烦了。

  • 适配App Links的验证逻辑
    当你的Intent Filter标记了autoVerify="true",Android系统会对Intent Filter里所有主机的assetlinks.json进行验证。AGP自动导入信任主机,是为了确保所有你信任的域名都能参与App Links验证,不用你手动把network_security_config里的每一个域名都复制到Intent Filter中,降低漏配的概率。

回到你的例子,你之前的network_security_config里肯定配置了scribble-cloud-v24-test-dot-scribble-cloud.appspot.com和scribble-cloud.appspot.com这两个信任主机,所以AGP在构建合并清单时,自动把它们添加到了带有autoVerify的Intent Filter里,同时保留了你原本配置的letsdraw.fun相关规则。

如果不想让AGP自动做这件事,你可以在模块的build.gradle(或build.gradle.kts)里关闭这个特性:

android {
    defaultConfig {
        appLinks {
            autoVerify {
                enabled = false
            }
        }
    }
}

或者更精细地指定哪些域名需要被包含,避免意外的主机被加入验证列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 07:46:37