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

如何解决Android项目AAR元数据minCompileSdk版本不匹配错误

解决AAR元数据检查错误:依赖minCompileSdk高于项目compileSdkVersion的问题

方案1:升级项目compileSdkVersion(推荐)

这是最稳妥的解决方式,依赖库提升minCompileSdk通常是为了适配新API或遵循Android官方规范。

  • 打开模块级的build.gradle(或build.gradle.kts)
  • 将compileSdkVersion(Kotlin DSL里是compileSdk)改成依赖要求的最高版本(比如34),同时建议同步升级targetSdkVersion:
    // Groovy写法
    android {
        compileSdkVersion 34
    
        defaultConfig {
            targetSdkVersion 34
            // 其他配置不变
        }
    }
    
    // Kotlin DSL写法
    android {
        compileSdk = 34
    
        defaultConfig {
            targetSdk = 34
            // 其他配置不变
        }
    }
    
  • 点击Sync Now同步Gradle,之后重新构建项目

方案2:降级冲突依赖的版本

如果暂时没法升级compileSdk,就找这些依赖的旧版本——要求minCompileSdk不超过31的:

  • 比如Hilt的2.42及以下版本支持compileSdk 31,修改依赖声明:
    implementation 'com.google.dagger:hilt-android:2.42'
    kapt 'com.google.dagger:hilt-compiler:2.42'
    
  • Navigation组件的2.5.3及以下版本适配31:
    implementation 'androidx.navigation:navigation-fragment-ktx:2.5.3'
    implementation 'androidx.navigation:navigation-ui-ktx:2.5.3'
    
  • 注意:降级会丢失新版本的功能和bug修复,需要自己权衡

方案3:临时禁用元数据检查(不推荐)

如果前两种方案都走不通,可以临时关闭检查,但这可能埋下兼容性隐患:

  • 在模块级构建文件里加这段配置:
    // Groovy写法
    android {
        configurations.all {
            resolutionStrategy {
                // 可选:强制用兼容的核心库版本
                force 'androidx.core:core-ktx:1.7.0'
                // 也可以结合降级,指定冲突依赖的旧版本
                eachDependency { details ->
                    if (details.requested.group in ['androidx.hilt', 'androidx.navigation']) {
                        details.useVersion '对应旧版本号'
                    }
                }
                // 禁用元数据检查
                disableDependencyVerification()
            }
        }
    }
    
    // Kotlin DSL写法
    configurations.all {
        resolutionStrategy {
            force("androidx.core:core-ktx:1.7.0")
            eachDependency {
                if (requested.group in listOf("androidx.hilt", "androidx.navigation")) {
                    useVersion("对应旧版本号")
                }
            }
            disableDependencyVerification()
        }
    }
    

额外注意

  • 确保所有子模块的compileSdkVersion和主模块保持一致,别出现版本不匹配的情况
  • 检查gradle.properties里有没有android.compileSdkVersion的全局配置,有的话也要同步修改

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 21:49:49