System kompilacji Android Studio jest oparty na Gradle, a wtyczka Androida do obsługi Gradle dodaje kilka funkcji specyficznych dla kompilacji aplikacji na Androida. Wtyczka Androida do obsługi Gradle (AGP) jest zwykle aktualizowana w Android Studio w ramach blokady, jednak może działać niezależnie od Android Studio i można ją aktualizować oddzielnie.
Z tej strony dowiesz się, jak aktualizować narzędzia Gradle i co zawiera najnowsza wersja. Informacje o wersjach wtyczki Gradle na Androida znajdziesz w informacjach o poprzednich wersjach.
Aby sprawdzić, co zostało naprawione w tej wersji wtyczki Gradle dla Androida, zapoznaj się z rozwiązanymi problemami.
Ogólne podsumowanie nadchodzących zmian powodujących niezgodność wtyczki do Androida do obsługi Gradle znajdziesz w harmonogramie jej działania.
Szczegółowe informacje o konfigurowaniu kompilacji Androida za pomocą Gradle znajdziesz na tych stronach:
- Konfigurowanie kompilacji
- Wtyczka Androida do obsługi Gradle – dokumentacja DSL
- Informacje o Gradle DSL
- Przewodnik użytkownika dotyczący wydajności Gradle
Więcej informacji o systemie kompilacji Gradle znajdziesz w przewodniku użytkownika Gradle.
Aktualizacja wtyczki Androida do obsługi Gradle
Podczas aktualizacji Android Studio możesz zobaczyć prośbę 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ń kompilacji projektu.
Wersję wtyczki możesz określić w menu Plik > Struktura projektu > Projekt w Android Studio lub w pliku najwyższego poziomu build.gradle.kts
. Wersja wtyczki dotyczy wszystkich modułów utworzonych w tym projekcie Android Studio. Ten przykład ustawia dla wtyczki w wersji 8.7.0 z pliku build.gradle.kts
:
Kotlin
plugins { id("com.android.application") version "8.7.0" apply false id("com.android.library") version "8.7.0" apply false id("org.jetbrains.kotlin.android") version "2.0.20" apply false }
Groovy
plugins { id 'com.android.application' version '8.7.0' apply false id 'com.android.library' version '8.7.0' apply false id 'org.jetbrains.kotlin.android' version '2.0.20' apply false }
Uwaga: w numerach wersji nie należy używać dynamicznych zależności, takich jak 'com.android.tools.build:gradle:8.7.+'
.
Korzystanie z tej funkcji może spowodować nieoczekiwane aktualizacje wersji i trudności w rozwiązywaniu różnic między wersjami.
Jeśli wskazana wersja wtyczki nie została pobrana, Gradle pobierze ją przy kolejnym kompilowaniu projektu lub kliknie Plik > Synchronizuj projekt z plikami Gradle na pasku menu Androida Studio.
Aktualizacja Gradle
Po zaktualizowaniu Android Studio możesz zobaczyć prośbę o zaktualizowanie Gradle do najnowszej dostępnej wersji. Możesz zaakceptować aktualizację lub ręcznie określić wersję zgodnie z wymaganiami kompilacji projektu.
W tabeli poniżej podano, która wersja Gradle jest wymagana w przypadku każdej wersji wtyczki Androida do obsługi Gradle. Aby uzyskać najlepszą wydajność, używaj najnowszej możliwej wersji zarówno Gradle, jak i wtyczki.
Wersja wtyczki | Minimalna wymagana wersja Gradle |
---|---|
8,7 | 8,9 |
8,6 | 8,7 |
8,5 | 8,7 |
8.4 | 8,6 |
8.3 | 8.4 |
8.2 | 8.2 |
8.1 | z Androidem 8.0 |
z Androidem 8.0 | z Androidem 8.0 |
7.4 | 7,5 |
Starsze wersje
Wersja wtyczki | Wymagana wersja Gradle |
---|---|
7.3 | 7.4 |
7.2 | 7.3.3 |
7.1 | 7.2 |
7,0 | 7,0 |
4.2.0 lub nowszy | 6.7.1 |
4.1.0 lub nowszy | 6,5+ |
4.0.0 lub nowsze | 6.1.1 lub nowszy |
3.6.0 – 3.6.4 | 5.6.4+ |
3.5.0 – 3.5.4 | 5.4.1 lub nowszy |
3.4.0 – 3.4.3 | 5.1.1+ |
3.3.0–3.3.3 | 4.10.1+ |
3.2.0 – 3.2.1 | 4,6+ |
3.1.0 lub nowsza | 4.4+ |
3.0.0 lub nowsze | 4.1+ |
2.3.0 lub nowsza | 3,3+ |
2.1.3 – 2.2.3 | 2.14.1 – 3.5 |
2.0.0 – 2.1.2 | 2.10 – 2.13 |
1.5.0 | 2.2.1–2.13 |
1.2.0 – 1.3.1 | 2.2.1 - 2.9 |
1.0.0 – 1.1.3 | 2.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ń.
Preferowanym sposobem jest użycie narzędzia wiersza poleceń Gradle Wrapper, które aktualizuje skrypty gradlew
. W tym przykładzie za pomocą Gradle Wrapper ustawiamy wersję Gradle na 8.7.
Pamiętaj, że musisz uruchomić to polecenie 2 razy, aby uaktualnić Gradle i sam Gradle Wrapper (więcej informacji znajdziesz w artykule Uaktualnianie Gradle Wrapper).
gradle wrapper --gradle-version 8.7
W niektórych przypadkach może się to jednak nie udać, np. gdy właśnie zaktualizowano AGP i nie jest ono już zgodne z bieżącą wersją Gradle. W takim przypadku musisz zmodyfikować odniesienie do dystrybucji Gradle w pliku gradle/wrapper/gradle-wrapper.properties
. W tym przykładzie w pliku gradle-wrapper.properties
ustawiamy wersję Gradle na 8.7.
...
distributionUrl = https\://services.gradle.org/distributions/gradle-8.7-bin.zip
...
Wtyczka Androida do obsługi Gradle i zgodność z Android Studio
System kompilacji Android Studio jest oparty na Gradle, a wtyczka Android Gradle (AGP) dodaje kilka funkcji specyficznych dla kompilowania aplikacji na Androida. W tabeli poniżej znajdziesz, która wersja AGP jest wymagana w przypadku każdej wersji Android Studio.
Wersja Android Studio | Wymagana wersja AGP |
---|---|
Biedronka | 2.1.2024 | 3.2–8.7 |
Koala Feature Drop | 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 |
Żyrafa | 1.03.2022 | 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 |
Delphin | 1.03.2021 | 3,2–7,3 |
Wiewiórka | 2021.2.1 | 3,2–7,2 |
Bumblebee | 1.1.2021 | 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 notatkach do wersji wtyczki Androida do obsługi Gradle.
Minimalne wersje narzędzi dla poziomu interfejsu API Androida
Istnieją minimalne wersje Android Studio i AGP, które obsługują określony poziom interfejsu API. Używanie starszych wersji Android Studio lub AGP niż wymaganych przez targetSdk
lub compileSdk
w Twoim projekcie może spowodować nieoczekiwane problemy. Przy projektach kierowanych na wersje testowe systemu operacyjnego Android zalecamy korzystanie z najnowszych wersji przedpremierowych Android Studio i AGP. Możesz zainstalować wersje podglądowe Android Studio obok stabilnej wersji.
Minimalne wersje Android Studio i AGP:
Poziom interfejsu API | Minimalna wersja Android Studio | Minimalna wersja AGP |
---|---|---|
35 | Koala Feature Drop | 2024.2.1 | 8.6.0 |
34 | Jeż | 2023.1.1 | 8.1.1 |
33 | Flamingo | 2022.2.1 | 7.2 |
Zmiany dotyczące wersji (listopad 2020 r.)
Aktualizujemy numerację wersji wtyczki Androida do obsługi Gradle (AGP), aby była bardziej zbliżona do bazowego narzędzia do kompilacji Gradle.
Oto najważniejsze zmiany:
AGP będzie teraz używać wersji semantycznej, a zmiany powodujące przerwanie działania będą kierowane na główne wersje.
Rocznie publikujemy jedną główną wersję pakietu AGP, która jest zgodna z wersją główną Gradle.
Po aktualizacji AGP 4.2 zostanie ona udostępniona w wersji 7.0 i będzie wymagać uaktualnienia Gradle do wersji 7.x. Każda główna wersja AGP będzie wymagać uaktualnienia wersji głównej w podstawowym narzędziu Gradle.
Interfejsy API zostaną wycofane z około rokiem wcześniej, a funkcja zastępowania będzie dostępna jednocześnie. Wycofane interfejsy API zostaną usunięte około roku później podczas kolejnej dużej aktualizacji.
Zgodność
Maksymalny poziom interfejsu API obsługiwany przez wtyczkę Gradle 8.6 to poziom 34. Oto inne informacje o zgodności:
Wersja minimalna | Wersja domyślna | Uwagi | |
---|---|---|---|
„Gradle” | 8,9 | 8,9 | „Aby dowiedzieć się więcej, zapoznaj się z artykułem Aktualizowanie Gradle”. |
Narzędzia do kompilowania pakietu SDK | 34.0.0 | 34.0.0 | Zainstaluj lub skonfiguruj narzędzia SDK Build Tools. |
NDK | Nie dotyczy | 27.0.12077973 | „Zainstaluj lub skonfiguruj inną wersję NDK. |
JDK | 17 | 17 | „Aby dowiedzieć się więcej, zapoznaj się z informacjami o ustawianiu wersji JDK”. |
Zmiana działania lintowania
Od wersji 8.7.0-alpha08 wtyczki Androida do obsługi Gradle, jeśli podczas uruchamiania lint za pomocą Gradle występuje błąd LintError
, zadanie analizy lint wyrzuca wyjątek.
Ta zmiana zapobiega buforowaniu rzadkich błędów w pamięci podręcznej kompilacji.
Ta zmiana powoduje jednak przerwanie kompilacji w przypadku projektów, które zawierają prawdziwe wystąpienia LintError
w plikach bazowych lint. Komunikat o błędzie zawiera informacje o tym, które kontrole lint są przyczyną problemu. W niektórych przypadkach problem może rozwiązać zaktualizowanie odpowiedniej biblioteki zależnej. W przeciwnym razie możesz wyłączyć funkcję sprawdzania lintowania, dopóki autor biblioteki go nie poprawi.
Rozwiązane problemy
Wtyczka Androida do obsługi Gradle 8.7.0
Rozwiązane problemy | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
Wtyczka Android Gradle |
|
|||||||||
Lint |
|
Wtyczka Androida do obsługi Gradle w wersji 8.7.1
Rozwiązane problemy | |||
---|---|---|---|
Wtyczka Android Gradle |
|
||
Lint |
|
Wtyczka Androida do obsługi Gradle 8.7.2
Rozwiązane problemy | ||||
---|---|---|---|---|
Lint |
|
|||
Shrinker (R8) |
|