본문 바로가기
Programing/android

[android studio] 빌드시 ..checking AAR metadata..compileSdkVersion ... 오류해결

by Benedictus711 2021. 11. 14.
728x90

최근 안드로이드 스튜디오를 업데이트 하고 난 후 새로 만드는 프로젝트마다 첫 실행시에 오류가 발생하는듯 하다.;;;

일단 이번에는 오류가 아래와 같이 발생하였다.

One or more issues found when checking AAR metadata values:

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.lifecycle:lifecycle-livedata-ktx:2.4.0.
AAR metadata file: C:\Users\amada\.gradle\caches\transforms3\75dc0a3eba94a11ae7e5aa9e13e573bb\transformed\jetified-lifecycle-livedata-ktx-2.4.0\META-INF\com\android\build\gradle\aar-metadata.properties.

이런 내용이 나왔다.

대략 compile시에 sdk의 Version이 안맞거나 잘못되어 오류가 발생하는 듯 했다.
해결방법을 찾다보니 우선 첫번째 방법이 build.gradle 파일에서 아래 defaultConfig 부분에 문구를 추가해주는 방법이 있었다.

android {
    compileSdk 30

    defaultConfig {
        applicationId "com.textbox.seafishingindex"
        minSdk 21
        targetSdk 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

추가해야 될 문구는 아래와 같다.

configurations.all {
            resolutionStrategy { force 'androidx.core:core-ktx:1.6.0' }
        }

defaultConfig 아래에 넣어주면 된다고 하였으나 나는 어떻게 된 것인지 되질 않았다. 헐~

다시 2번째 방법을 찾았다.

음... 의외로 간단한 문제였었다.
기존에 계속 자동으로 만들어진 compileSdk나 targetSdk를 그냥 사용했었는데 현재 compile이나 target으로 맞춰야 하는 Version이 이제 31로 맞춰줘야 하는가보다

android {
    compileSdk 31

    defaultConfig {
        applicationId "com.textbox.seafishingindex"
        minSdk 21
        targetSdk 31
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

위 코드처럼 31로 맞추고난뒤 빌드시에 문제없이 빌드가 된다.

이렇게 오늘 하루도 식은땀을 닦고 잘 넘긴다.

728x90

댓글