Android Gradle 플러그인 7.2.0(2022년 5월)

Android Gradle 플러그인 7.2.0은 다양한 새 기능과 개선사항이 포함된 메이저 버전입니다.

7.2.2 (2022년 8월)

이번 소규모 업데이트는 Android 스튜디오 Chipmunk 패치 2의 출시에 해당하며 다음 버그 수정을 포함합니다.

  • 문제 #232438924: AndroidGradlePlugin 버전 7.2는 ASM API와 함께 사용할 경우 변환 API를 중단함
  • 문제 #231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
7.2.1 (2022년 5월)

이번 소규모 업데이트는 Android 스튜디오 Chipmunk 패치 1의 출시에 해당하며 다음 버그 수정을 포함합니다.

  • 문제 #230361284: bundletool이 기준 프로필을 제대로 패키징하지 않음

이 출시에 포함된 다른 버그 수정을 보려면 Android 스튜디오 Chipmunk 패치 1 출시 노트를 참고하세요.

호환성

최소 버전 기본 버전
Gradle 7.3.3 7.3.3
SDK 빌드 도구 30.0.3 30.0.3
NDK 해당 사항 없음 21.4.7075529
JDK 11 11

빌드 분석 도구의 Jetifier 경고 및 확인

이제 빌드 분석 도구에서 프로젝트의 gradle.properties 파일에 android.enableJetifier=true가 포함되어 있으면 경고를 표시합니다. 이 플래그는 AndroidX를 기본적으로 지원하지 않는 라이브러리에 AndroidX를 사용 설정하기 위해 이전 버전의 Android 스튜디오에서 도입되었습니다. 그러나 라이브러리 생태계가 대부분 AndroidX를 기본적으로 지원하도록 이동했으므로 Jetifier 플래그는 더 이상 프로젝트에 필요하지 않을 수 있습니다. 또한 이 플래그로 인해 빌드 성능이 저하될 수 있습니다. 이 경고가 표시되면 빌드 분석 도구 내에서 검사를 실행하여 플래그를 삭제할 수 있는지 확인할 수 있습니다.

테스트 픽스처 지원

Android 스튜디오 Chipmunk 베타 1부터 Android 스튜디오는 Android와 자바 테스트 픽스처를 모두 지원합니다. 테스트 픽스처 기능과 자바 프로젝트에서 이를 사용하는 방법에 관한 자세한 내용은 Gradle의 테스트 픽스처 사용{:.external} 가이드를 참고하세요.

Android 라이브러리 모듈에서 테스트 픽스처를 사용 설정하려면 라이브러리 수준 build.gradle 파일에 다음을 추가하세요.

android {
  testFixtures {
    enable true
    // enable testFixtures's android resources (disabled by default)
    // androidResources true
  }
}

기본적으로 라이브러리를 게시하면 기본 라이브러리와 함께 테스트 픽스처 AAR도 게시됩니다. Gradle 모듈 메타데이터 파일에는 testFixtures 구성요소를 요청할 때 Gradle이 올바른 아티팩트를 사용할 수 있도록 하는 정보가 포함됩니다.

출시 변형에서 라이브러리의 테스트 픽스처 AAR 게시를 중지하려면 라이브러리 수준 build.gradle 파일에 다음을 추가하세요.

afterEvaluate {
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}

게시된 Android 라이브러리의 테스트 픽스처 AAR을 사용하려면 Gradle의 도우미 메서드 testFixtures()를 사용하면 됩니다.

dependencies {
  testImplementation testFixtures('com.example.company:publishedLib:1.0')
}

기본적으로 린트는 테스트 픽스처 소스를 분석합니다. 다음과 같이 테스트 픽스처 소스를 무시하도록 린트를 구성할 수 있습니다.

android {
  lint {
    ignoreTestFixturesSources true
  }
}

중복 콘텐츠 루트는 지원되지 않음

AGP 7.2부터는 여러 소스 세트에서 동일한 소스 디렉터리를 공유할 수 없습니다. 예를 들어, 단위 테스트와 계측 테스트 모두에 동일한 테스트 소스를 사용할 수 없습니다. 자세한 내용은 기본 소스 세트 구성 변경을 참고하세요.