Migrating to Android Gradle Plugin 3.0.0

WOJTEK KALICINSKI : Android Studio 30은 주요 릴리스입니다

그리고 그것으로 우리는 또한 Android Gradle의 버전 3을 공개합니다 플러그인 새로운 Gradle API를 기반으로하며, 변형 인식 의존성 해결, 다중 모듈 빌드를 크게 가속화 할 수 있습니다 불행히도 업데이트를해야 할 수도 있습니다 전환시 Gradle 구성으로 새 플러그인 버전

그것은 단지 몇 단계에 불과하며 그만한 가치가 있습니다 더 maintainable 한 빌드 파일로 끝날 것입니다 그리고 더 빠른 빌드 Android에서 기존 프로젝트를 처음 열면 Studio 3, Android 플러그인을 업데이트하라는 메시지가 표시됩니다 번역

우리는 최소한 Gradle 41, 그러면 자동으로 고정됩니다 이러한 변경을 수동으로 수행하려는 경우, 두 곳을 확인해야합니다 첫째, 메인 빌드 Gradle 파일에서 AGP 버전을 변경하십시오 ~ 3

0 다음으로 Gradle Wrapper 특성 파일을 열고 편집하십시오 41을 가리키는 URL 그건 그렇고, 선택적 단계로서, 당신은 새 Google Maven 저장소를 메인에 추가 할 수 있습니다 빌드 파일

우리는 그것을 사용하여 빌드 아티팩트를 배포하고, 지원 라이브러리와 같은 최신 Gradle 버전으로, Google 키워드로 간단히 참조 할 수 있습니다 새 플러그인으로 앱을 컴파일하려고하면, 당신은 당신의 모듈에서 맛을 사용하고 있습니다 당신은 아마이 오류가 발생할 것입니다 이전에는 맛을 낸 차원이 선택 사항이었습니다

풍미와 도서관을 해결하기 위해서 더 강력한 모듈 각 플레이버의 크기를 지정합니다 Android Gradle 플러그인이 자동으로 실행됩니다 소비 된 라이브러리에서 일치하는 flavor 사용 찾을 수 있다면 라이브러리가 그렇지 않은 flavor 차원을 정의하면 기본 빌드 파일에 다음을 사용하여 명시 적으로 선택해야한다 새로운 누락 치수 전략 라이브러리 목록을 사용하는 모듈의 명령문 좋아하는 맛을 순서대로 맞추고 싶습니다

그리고 반대로 라이브러리 모듈이 앱에 정의 된 것과 일치하는 맛을가집니다 대체를 지정해야합니다 앱의 풍미에 맞는 fallbacks 키워드 사용 가능한 풍미에 선행 된 정의 라이브러리 모듈에서 선택할 이름 빌드 유형에 대해 동일한 작업을 수행 할 수 있습니다 앱에 라이브러리가 포함 된 빌드 유형이 포함될 때마다 의존성은 그렇지 않다 이러한 변화의 좋은 부작용 더 이상 지정할 필요가 없다는 것입니다

어떤 변종을 소비하고 싶은지 라이브러리 모듈에 따라 다릅니다 이 여분의 줄을 제거해야합니다 종속성 섹션에서 라이브러리를 한 번만 포함하십시오 또한 publishNonDefault를 제거 할 수 있습니다 라이브러리 모듈에서 true

외부 의존성을 위해, 그것은 여전히 원하는 경우 variant 지정자를 사용하는 것이 좋습니다 특정 빌드에 추가됩니다 그건 그렇고, 여기에 하나 더 자세한 내용이 있습니다 Android 플러그인 3이 새로운 종속성 구성을 채택하고 있습니다 Gradle에서 소개되었습니다

여기의 표에서 볼 수 있듯이, 이것은 대부분의 종속성 유형에 대한 이름 변경 일뿐입니다 컴파일은 API가되고 제공은 컴파일 만됩니다 그러나 새로운 구성이 하나 있습니다 이것은 올바르게 구현 될 때, 빌드 시간이 크게 향상 될 수 있습니다 구현 구성 사용을 선호해야합니다

모듈이 의존성을 내부적으로 만 사용할 때마다 API를 다른 모듈에 유출하려고하지는 않습니다 그런 식으로 종속성이 바뀔 때마다, 그렇지 않으면 모듈의 수를 제한합니다 다시 컴파일해야합니다 다음은 Android의 모든 기본 변경 사항입니다 Android Gradle로 마이그레이션 할 때 프로젝트가 만들어야하는 사항 플러그인 3

더 많은 마이그레이션 시나리오는 문서에서 다룹니다 주석 처리기를 처리 할 때 또는 변형 API를 사용하여 빌드 출력에 액세스 할 수 있습니다 따라서 설명의 링크를 살펴보십시오 보고 주셔서 감사합니다 [음악 재생]