Informacje o wersji wtyczki Androida do obsługi Gradle 8.12

31 marca 2021 r. repozytorium JCenter stało się dostępne tylko do odczytu. Więcej informacji znajdziesz w tym artykule.

System kompilacji Androida Studio jest oparty na Gradle, a wtyczka Androida do obsługi Gradle dodaje kilka funkcji, które są specyficzne dla kompilowania aplikacji na Androida. Wtyczka Androida do obsługi Gradle (AGP) jest zwykle aktualizowana równolegle z Androidem Studio, ale może działać niezależnie od Androida Studio i być aktualizowana oddzielnie.

Z tego artykułu dowiesz się, jak aktualizować narzędzia Gradle i co zawierają najnowsze aktualizacje. Informacje o wersjach wtyczki Androida do obsługi Gradle z ubiegłych lat znajdziesz w informacjach o wersjach.

Ogólne podsumowanie nadchodzących zmian powodujących niezgodność we wtyczce Androida do obsługi Gradle znajdziesz w  planie rozwoju wtyczki Androida do obsługi Gradle.

Szczegółowe informacje o konfigurowaniu kompilacji Androida za pomocą Gradle znajdziesz na tych stronach:

Więcej informacji o systemie kompilacji Gradle znajdziesz w przewodniku użytkownika Gradle.

Aktualizowanie wtyczki Androida do obsługi Gradle

Podczas aktualizowania Androida Studio może pojawić się prośba o automatyczne zaktualizowanie wtyczki Androida do obsługi Gradle do najnowszej dostępnej wersji. Możesz zaakceptować aktualizację lub ręcznie określić wersję na podstawie wymagań projektu.

Wersję wtyczki możesz określić w menu Plik > Struktura projektu > Projekt w Android Studio lub w pliku build.gradle.kts najwyższego poziomu. Wersja wtyczki dotyczy wszystkich modułów utworzonych w tym projekcie Android Studio. W tym przykładzie wtyczka jest ustawiana na wersję 8.12.0 z pliku build.gradle.kts:

Kotlin

plugins {
    id("com.android.application") version "8.12.0" apply false
    id("com.android.library") version "8.12.0" apply false
    id("org.jetbrains.kotlin.android") version "2.1.20" apply false
}

Groovy

plugins {
    id 'com.android.application' version '8.12.0' apply false
    id 'com.android.library' version '8.12.0' apply false
    id 'org.jetbrains.kotlin.android' version '2.1.20' apply false
}

Ostrzeżenie: w numerach wersji nie należy używać zależności dynamicznych, takich jak 'com.android.tools.build:gradle:8.12.+'. Korzystanie z tej funkcji może powodować nieoczekiwane aktualizacje wersji i utrudniać rozwiązywanie różnic między wersjami.

Jeśli określona wersja wtyczki nie została pobrana, Gradle pobierze ją przy następnej kompilacji projektu lub gdy na pasku menu Android Studio klikniesz Plik > Synchronizuj projekt z plikami Gradle.

Aktualizowanie Gradle

Podczas aktualizacji Androida Studio może pojawić się prośba o zaktualizowanie Gradle do najnowszej dostępnej wersji. Możesz zaakceptować aktualizację lub ręcznie określić wersję na podstawie wymagań projektu.

W tabeli poniżej znajdziesz informacje o tym, która wersja Gradle jest wymagana w przypadku poszczególnych wersji wtyczki Androida do obsługi Gradle. Aby uzyskać najlepszą wydajność, używaj najnowszych wersji Gradle i wtyczki.

Wersja wtyczkiMinimalna wymagana wersja Gradle
8.128.13
8.118.13
8.108.11.1
8.98.11.1
8.88.10.2
8.78.9
8.68.7
8.58.7
8.48.6
8.38.4
8.28.2
8.1z Androidem 8.0
z Androidem 8.0z Androidem 8.0

Starsze wersje

Wersja wtyczkiWymagana wersja Gradle
7.47,5
7.37.4
7.27.3.3
7.17.2
7,07,0
4.2.0+6.7.1
4.1.0+6,5+
4.0.0+6.1.1+
3.6.0–3.6.45.6.4+
3.5.0–3.5.45.4.1+
3.4.0–3.4.35.1.1+
3.3.0–3.3.34.10.1+
3.2.0 - 3.2.14,6+
3.1.0+4.4+
3.0.0+4.1+
2.3.0+3,3+
2.1.3–2.2.32.14.1 - 3.5
2.0.0–2.1.22.10–2.13
1.5.02.2.1 - 2.13
1.2.0 - 1.3.12.2.1–2.9
1.0.0–1.1.32.2.1 - 2.3

Wersję Gradle możesz określić w menu Plik > Struktura projektu > Projekt w Android Studio lub zaktualizować wersję Gradle za pomocą wiersza poleceń. Zalecamy użycie narzędzia wiersza poleceń Gradle Wrapper, które aktualizuje skrypty gradlew. W tym przykładzie ustawiamy wersję Gradle na 8.13 za pomocą Gradle Wrapper. Pamiętaj, że to polecenie musisz uruchomić 2 razy, aby zaktualizować zarówno Gradle, jak i sam Gradle Wrapper (więcej informacji znajdziesz w sekcji Aktualizowanie Gradle Wrapper).

gradle wrapper --gradle-version 8.13

Może się to jednak nie udać w niektórych przypadkach, np. jeśli właśnie zaktualizowano AGP i nie jest on już zgodny z obecną wersją Gradle. W takim przypadku musisz edytować odwołanie do dystrybucji Gradle w pliku gradle/wrapper/gradle-wrapper.properties. W tym przykładzie w pliku gradle-wrapper.properties ustawiamy wersję Gradle na 8.13.

...
distributionUrl = https\://services.gradle.org/distributions/gradle-8.13-bin.zip
...

Zgodność wtyczki Androida do obsługi Gradle i Androida Studio

System kompilacji Androida Studio jest oparty na Gradle, a wtyczka Androida do obsługi Gradle (AGP) dodaje kilka funkcji, które są specyficzne dla kompilowania aplikacji na Androida. W tabeli poniżej znajdziesz informacje o tym, która wersja AGP jest wymagana w przypadku poszczególnych wersji Androida Studio.

Wersja Android Studio Wymagana wersja AGP
Pakiet nowych funkcji Narwhal | 2025.1.2 4,0–8,12
Narwhal | 2025.1.1 3.2-8.11
Pakiet nowych funkcji Meerkat | 2024.3.2 3.2-8.10
Meerkat | 2024.3.1 3,2–8,9
Pakiet nowych funkcji Ladybug | 2.2.2024 3,2–8,8
Ladybug | 2024.2.1 3,2–8,7
Pakiet nowych funkcji Koala | 2024.1.2 3,2–8,6
Koala | 2024.1.1 3,2–8,5
Jellyfish | 2023.3.1 3,2–8,4
Iguana | 2023.2.1 3,2–8,3
Jeż | 2023.1.1 3.2-8.2
Giraffe | 2022.3.1 3.2-8.1
Flamingo | 2022.2.1 3,2–8,0

Starsze wersje

Wersja Android Studio Wymagana wersja AGP
Electric Eel | 2022.1.1 3,2–7,4
Dolphin | 2021.3.1 3,2–7,3
Chipmunk | 2021.2.1 3.2-7.2
Bumblebee | 2021.1.1 3.2-7.1
Arctic Fox | 2020.3.1 3,1–7,0

Informacje o nowościach we wtyczce Androida do obsługi Gradle znajdziesz w informacjach o wersji wtyczki Androida do obsługi Gradle.

Minimalne wersje narzędzi dla poziomu interfejsu API Androida

Istnieją minimalne wersje Androida Studio i AGP, które obsługują określony poziom API. Używanie starszych wersji Android Studio lub AGP niż wymagane przez targetSdk lub compileSdk projektu może prowadzić do nieoczekiwanych problemów. Do pracy nad projektami, które są przeznaczone dla wersji przedpremierowych systemu operacyjnego Android, zalecamy używanie najnowszej wersji przedpremierowej Androida Studio i AGP. Możesz zainstalować wersje podglądowe Android Studio obok wersji stabilnej.

Minimalne wersje Android Studio i AGP są następujące:

Poziom interfejsu API Minimalna wersja Android Studio Minimalna wersja AGP
36,0 Meerkat | 2024.3.1 Patch 1 8.9.1
35 Pakiet nowych funkcji Koala | 2024.2.1 8.6.0
34 Jeż | 2023.1.1 8.1.1
33 Flamingo | 2022.2.1 7.2

Zmiany w wersjach (listopad 2020 r.)

Aktualizujemy numerację wersji wtyczki Androida do obsługi Gradle (AGP), aby była bardziej zgodna z numeracją narzędzia do kompilacji Gradle.

Oto najważniejsze zmiany:

  • AGP będzie teraz używać wersji semantycznych, a zmiany powodujące niezgodność będą wprowadzane w głównych wersjach.

  • Co roku będziemy publikować jedną wersję główną AGP, która będzie zgodna z wersją główną Gradle.

  • Wersja po AGP 4.2 to 7.0, która będzie wymagać uaktualnienia do Gradle w wersji 7.x. Każda główna wersja AGP będzie wymagać uaktualnienia wersji głównej bazowego narzędzia Gradle.

  • Interfejsy API będą wycofywane z wyprzedzeniem około roku, a funkcje zastępcze będą udostępniane w tym samym czasie. Wycofane interfejsy API zostaną usunięte około rok później podczas kolejnej dużej aktualizacji.

Zgodność

Maksymalny poziom API obsługiwany przez wtyczkę Androida do obsługi Gradle w wersji 8.12 to poziom 36. Oto inne informacje o zgodności:

Wersja minimalna Wersja domyślna Uwagi
Gradle 8.13 8.13 Więcej informacji znajdziesz w sekcji Aktualizowanie Gradle.
SDK Build Tools 35.0.0 35.0.0 Zainstaluj lub skonfiguruj narzędzia do kompilacji pakietu SDK.
NDK Nie dotyczy 27.0.12077973 Zainstaluj lub skonfiguruj inną wersję NDK.
JDK 17 17 Więcej informacji znajdziesz w artykule o ustawianiu wersji JDK.

Rozwiązane problemy

Wtyczka Androida do obsługi Gradle w wersji 8.12.0

Rozwiązane problemy
Wtyczka Androida do obsługi Gradle
Określanie wartości logicznej dla właściwości experimentalProperties
Jawne włączanie testów urządzeń w typie kompilacji innym niż domyślny za pomocą AGP nie działa
Przeniesienie AGP do configurations.register, aby uniknąć natychmiastowej realizacji konfiguracji
Uwzględnij zagnieżdżone pliki MANIFEST.MF w defaultExcludes
Wtyczka Gradle powinna scalać plik manifestu testu, gdy includeAndroidResources == true
Pliki źródłowe z src/extraMain/java nie są dodawane do kompilatora za pomocą „built-in-kotlin”.
SourceDirectories.addGeneratedSourceDirectory nie obsługuje wielu wariantów
AGP 8.8.0-alpha09 powoduje problemy z raportowaniem JaCoCo
[fused lib - public] dodawanie biblioteki KMP, np. Coil, nie działa
Nie można tworzyć testów za pomocą AGP 8.12.0-alpha05 z powodu deklaracji pakietu w scalonym pliku manifestu
Wersja AGP 8.12.0-alpha07 nie może utworzyć wersji do publikacji, gdy zastosowana jest wtyczka Gradle Firebase Performance
Dodawanie ExtractAnnotations do AGP KMP
BuiltInKotlinJvmAndroidCompilation nie działa z wtyczkami kompilatora Kotlin, takimi jak Anvil i KSP
Wtyczka biblioteki scalonej nie działa podczas zadania `:mergingArtifactAAR_METADATA`
Lint
Klasa AbstractAnnotationDetector sprawdza nieprawidłowe przeciążone funkcje lub konstruktory
Lint ostrzega, gdy w teście używana jest wartość Config.OLDEST_SDK
TypoDetector regularnie ulega awarii z błędem IllegalArgumentException podczas szybkiej poprawki
Błąd: możliwe fałszywie pozytywne wykrycie przez Android Studio słowa „die die” w języku niemieckim
Reguła SupportAnnotationUsage powinna obsługiwać KT-73255
[Lint] Nadmierna liczba fałszywych alarmów w przypadku `MemberExtensionConflict` – nieprawidłowy opis problemu
[lint] Błąd fałszywie pozytywny MemberExtensionConflict w przypadku konfliktu nazw parametrów
[lint] Błąd fałszywie pozytywny PropertyEscape w prawidłowym pliku właściwości