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

Android Studio构建Flutter安卓应用时华为HMS依赖报错

旧版Flutter安卓构建HMS依赖证书问题的规避方案

问题说明

构建时触发以下错误:

  • 核心失败任务::app:checkEssDebugAarMetadata

无法解析:app:essDebugRuntimeClasspath的所有依赖项。
无法确定com.huawei.hms:dynamicability:1.0.18.300的构件

无法获取资源https://developer.huawei.com/repo/com/huawei/hms/dynamicability/1.0.18.300/dynamicability-1.0.18.300.aar。
无法HEAD该资源,原因:<developer.huawei.com>的证书与任何主题备用名称都不匹配:[a248.e.akamai.net, *.akamaized.net, *.akamaized-staging.net, *.akamaihd.net, *.akamaihd-staging.net]

规避方案

1. 替换华为仓库地址

在安卓模块的build.gradle(项目级或模块级)中,将华为仓库地址替换为更稳定的镜像地址:

repositories {
    // 替换原华为仓库
    maven { url 'https://repo.huaweicloud.com/repository/maven/' }
    // 保留其他原有仓库
    google()
    mavenCentral()
}

2. 排除冲突的Dynamicability依赖

如果项目未直接使用该模块,可全局或针对性排除依赖:

  • 全局排除(在模块级build.gradle的dependencies块上方添加):
configurations.all {
    exclude group: 'com.huawei.hms', module: 'dynamicability'
}
  • 针对性排除(针对引入该依赖的具体包):
implementation 'com.huawei.hms:目标依赖包' {
    exclude group: 'com.huawei.hms', module: 'dynamicability'
}

3. 手动引入本地AAR包

  • 从华为官方Maven仓库(使用正常证书的地址)手动下载dynamicability-1.0.18.300.aar文件
  • 在安卓模块根目录创建libs文件夹,将AAR放入其中
  • 在模块级build.gradle中配置本地依赖:
repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    implementation(name: 'dynamicability-1.0.18.300', ext: 'aar')
}

4. 临时禁用证书校验(仅测试环境)

注意:此方法有安全风险,仅限本地测试使用
在项目级build.gradle中添加配置,跳过华为仓库的证书校验:

allprojects {
    repositories {
        maven {
            url 'https://developer.huawei.com/repo/'
            allowInsecureProtocol = true
        }
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 23:27:35