如何解决:依赖项的 AAR 元数据中指定的 minCompileSdk (31)

Mr.*_*ero 21 java android gradle android-studio

检查 AAR 元数据值时发现的一个或多个问题:

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.appcompat:appcompat:1.4.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\46d15f5c58a469270eeba15db4463d05\transformed\appcompat-1.4.0\META-INF\com\android\build\gradle\aar-metadata 。特性。

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.appcompat:appcompat-资源:1.4.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\70088de83757cd2e92dadb8b386e6adb\transformed\jetified-appcompat-resources-1.4.0\META-INF\com\android\build\gradle \aar-metadata.properties。

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.emoji2:emoji2-views-helper:1.0.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\6cbed90352b213553df3539e2e7f22af\transformed\jetified-emoji2-views-helper-1.0.0\META-INF\com\android\build \gradle\aar-metadata.properties。

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.emoji2:emoji2:1.0.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\09b79be83fba3907471fe1de63f439d3\transformed\jetified-emoji2-1.0.0\META-INF\com\android\build\gradle\aar -元数据.属性。

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.core:core:1.7.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\9339927e08badd09bc5459e4ba900d5f\transformed\core-1.7.0\META-INF\com\android\build\gradle\aar-metadata 。特性。

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.lifecycle:lifecycle-process:2.4.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\0e4a425e61d135d109d64d5f17d999df\transformed\jetified-lifecycle-process-2.4.0\META-INF\com\android\build\gradle \aar-metadata.properties。

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项:androidx.lifecycle:lifecycle-runtime:2.4.0。AAR 元数据文件:C:\Users\USER\AppData\Local\Android\Sdk\caches\transforms-3\bca1bb61c15ab5807e64593ca04debef\transformed\lifecycle-runtime-2.4.0\META-INF\com\android\build\gradle\aar -元数据.属性。

Jus*_*inW 28

依赖项的 AAR 元数据 (META-INF/com/android/build/gradle/aar-metadata.properties) 中指定的 minCompileSdk (31) 大于此模块的compileSdkVersion (android-30)。依赖项: androidx.appcompat:appcompat:1.4.0

解决方案就在错误本身。可以有两种解决方案:

  1. 在您的项目中使用 Android SDK 版本 31。找到compileSdkVersion 30你的 app\build.gradle 文件,并将其更改为compileSdkVersion 31.
  2. 强制 gradle 使用旧版本的依赖项androidx.lifecycle:lifecycle-process:2.4.0。如果您不直接使用此依赖项,请强制 gradle 使用旧版本,如下所示:
android {
  defaultConfig {
       configurations.all {
          resolutionStrategy { 
            force 'androidx.lifecycle:lifecycle process:2.3.1'
            force 'androidx.appcompat:appcompat:1.3.1'
            force 'androidx.appcompat:appcompat-resources:1.3.1'  
            // force 'androidx.emoji2:emoji2-views-helper:1.0.0', This won't work, because it is made to work with Android SDK version 31 only
            force 'androidx.core:core:1.6.0'        
            force 'androidx.lifecycle:lifecycle-runtime:2.3.1'
         }
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

强制使用其他依赖项的旧版本只会导致这样的错误。

仅执行这两个步骤中的一个


And*_*rew 3

在 app/build.gradle 文件中将compileSdk的值更改为31

(一些较新的组件默认需要比Android studio设置高的sdk版本)