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

Android Studio编译Gradle项目时AAR元数据检查报错如何解决

报错原因

这个错误和缓存损坏无关,清理缓存自然无效,本质是AGP 7.0开始新增的AAR元数据校验规则触发了版本不匹配拦截:

  • 你当前模块配置的compileSdkVersion为31(对应Android 12)
  • 构建时拉取到的androidx.core:core:1.9.0-alpha05、androidx.core:core-ktx:1.9.0-alpha05两个依赖,在自身AAR元数据中声明的最低要求编译SDK版本为32(对应Android 12L),低于这个版本编译时AGP会直接中断构建抛出你看到的错误。

这两个alpha版的core库是Android 12L预览阶段发布的测试版,本身就要求匹配32的编译SDK,出现这个问题要么是你主动引用了这个测试版依赖,要么是其他三方库传递依赖拉到了这个版本。

解决方案

你可以根据项目实际情况二选一:

方案一:升级编译SDK版本(官方推荐)

这是最稳妥的解决方式,后续高版本androidx库都会逐步要求更高的compileSdk版本,且升级compileSdk不会影响app在低版本安卓系统上的运行:

  1. 打开app模块下的build.gradle文件
  2. 在android配置块中修改compileSdk版本:
android {
    compileSdk 32 // 把原有的31修改为32,7.0+版本AGP支持直接写compileSdk不带Version后缀
    // 其余配置(包括minSdk、targetSdk)不需要改动
}
  1. 点击Sync Now同步Gradle配置,重新构建即可。

方案二:锁定core依赖为低版本稳定版(暂不升级compileSdk时使用)

如果暂时不想把compileSdk升到32,可以把core相关依赖降到要求minCompileSdk不高于31的稳定版本,注意正式项目尽量不要用alpha/beta这类测试版依赖,避免出现不必要的兼容问题:

  • 如果是你主动在dependencies块中声明了1.9.0-alpha05版本的core/core-ktx,直接把版本号改成1.8.0(适配compileSdk 31的最新稳定版)即可。
  • 如果是其他三方库传递引入的高版本测试版core,在build.gradle中添加全局强制版本配置,锁死core的版本:
configurations.all {
    resolutionStrategy {
        // 强制指定core相关依赖的版本,避免传递拉取高版本alpha版
        force 'androidx.core:core:1.8.0'
        force 'androidx.core:core-ktx:1.8.0'
    }
}

修改完成后同步Gradle,重新构建即可通过校验。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 07:06:10