编译错误应该告诉您导致问题的依赖项。在 Android Studio 中,检查构建选项卡的右侧。就我而言,我发现它是androidx.core:core-ktx,因为编译器给出了这个错误:
The minCompileSdk (31) specified in a dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)is greater than this module's compileSdkVersion (android-30).
Dependency: androidx.core:core-ktx:1.7.0-beta01.
AAR metadata file: /Users/XX/.gradle/caches/transforms-2/files-2.1/XX/jetified-core-ktx-1.7.0-beta01/META-INF/com/android/build/gradle/aar-metadata.properties.
BETA 立即向我跳了出来。仔细检查您的 gradle.build 文件。该错误可能是由您的项目实现的库的不明确的版本规范引起的。可能正在使用需要更高最低编译版本的新版本。在检查了我所有模块的 build.gradle 文件后,我发现我的一个模块中包含以下内容:
implementation "androidx.core:core-ktx:+"
查了Android Developer website,发现最新的稳定版居然是1.6.0。更改上面的行以指定稳定版本后,它解决了我的问题,即:
implementation "androidx.core:core-ktx:1.6.0"
使所有依赖项保持最新很重要,但我宁愿手动管理这些以防止出现此类问题,而不是让编译器使用不稳定版本或需要更高最低编译目标的版本。