Wtyczka Androida do obsługi Gradle w wersji 8.3.0 to duża aktualizacja, która zawiera wiele nowych funkcji i ulepszeń.
Zgodność
Maksymalny poziom API obsługiwany przez wtyczkę Androida do Gradle w wersji 8.3 to poziom 34. Oto inne informacje o zgodności:
Wersja minimalna | Wersja domyślna | Uwagi | |
---|---|---|---|
Gradle | 8.4 | 8.4 | Więcej informacji znajdziesz w sekcji Aktualizowanie Gradle. |
SDK Build Tools | 34.0.0 | 34.0.0 | Zainstaluj lub skonfiguruj narzędzia do kompilacji pakietu SDK. |
NDK | Nie dotyczy | 25.1.8937393 | Zainstaluj lub skonfiguruj inną wersję NDK. |
JDK | 17 | 17 | Więcej informacji znajdziesz w artykule o ustawianiu wersji JDK. |
Oto nowe funkcje wtyczki Androida do obsługi Gradle w wersji 8.3.
Wersje poprawek
Oto lista wersji poprawek w Android Studio Iguana i wtyczce Androida do obsługi Gradle 8.3.
Android Studio Iguana | 2023.2.1 Patch 2 i AGP 8.3.2 (kwiecień 2024 r.)
Ta niewielka aktualizacja zawiera poprawki błędów.
Android Studio Iguana | 2023.2.1 Patch 1 i AGP 8.3.1 (marzec 2024 r.)
Ta niewielka aktualizacja zawiera poprawki błędów.
Obsługa katalogów wersji Gradle
Android Studio obsługuje oparte na TOML katalogi wersji Gradle, czyli funkcję, która umożliwia zarządzanie zależnościami w jednym centralnym miejscu i udostępnianie zależności w modułach lub projektach. Android Studio ułatwia teraz konfigurowanie katalogów wersji dzięki sugestiom edytora i integracji z oknem Struktura projektu. Dowiedz się, jak skonfigurować katalogi wersji Gradle lub przenieść kompilację do katalogów wersji.
Uzupełnianie kodu i nawigacja
Android Studio oferuje uzupełnianie kodu podczas edytowania katalogu wersji w pliku TOML lub dodawania zależności z katalogu wersji do pliku kompilacji. Aby użyć uzupełniania kodu, naciśnij Ctrl+Spacja (Command+Spacja w macOS). Dodatkowo możesz szybko przejść od odwołania do zależności w pliku build.gradle
aplikacji do miejsca, w którym jest ono zadeklarowane w katalogu wersji, naciskając Ctrl+b (Command+b w systemie macOS).
Integracja z oknem Struktura projektu
Jeśli Twój projekt korzysta z katalogu wersji zdefiniowanego w pliku TOML, możesz edytować zdefiniowane w nim zmienne w oknie Struktura projektu w widoku Zmienne (Plik > Struktura projektu > Zmienne) w Android Studio. W przypadku każdego katalogu wersji znajduje się menu, w którym wyświetlane są zmienne z tego katalogu. Aby edytować zmienną, kliknij jej wartość i zastąp ją nową. Gdy zapiszesz te zmiany, plik TOML zostanie odpowiednio zaktualizowany.
Zależności możesz też aktualizować w oknie Struktura projektu w widoku Zależności (Plik > Struktura projektu > Zależności). Aby zaktualizować wersje za pomocą okna Project Structure (Struktura projektu), przejdź do modułu i zależności, które chcesz edytować, a następnie zaktualizuj pole Requested Version (Wersja wymagana). Gdy zapiszesz te zmiany, plik TOML zostanie odpowiednio zaktualizowany. Pamiętaj, że jeśli wersja zależności została zdefiniowana za pomocą zmiennej, zaktualizowanie jej w ten sposób spowoduje zastąpienie zmiennej zakodowaną na stałe wartością. Pamiętaj też, że usunięcie zależności z pliku kompilacji, niezależnie od tego, czy używasz okna Project Structure, nie powoduje usunięcia zależności z katalogu wersji.
Znane problemy i ograniczenia
Poniżej znajdziesz znane problemy i ograniczenia związane z obsługą katalogów wersji Gradle w Android Studio.
Błąd podświetlania deklaracji aliasów wtyczek w plikach skryptów Kotlin: gdy dodasz deklarację wtyczki w formacie
alias(libs.plugins.example)
, edytor doda czerwone podkreślenie pod częściąlibs
. Jest to znany problem w Gradle w wersji 8.0 i starszych, który zostanie rozwiązany w przyszłej wersji Gradle.Android Studio obsługuje tylko katalogi wersji w formacie TOML: obecnie funkcja autouzupełniania kodu, nawigacji i okna dialogowego Struktura projektu w Android Studio jest dostępna tylko w przypadku katalogów wersji zdefiniowanych w pliku w formacie TOML. Możesz jednak dodać katalog wersji bezpośrednio w
settings.gradle
pliku i używać jego zależności w projekcie.Nawigacja po plikach kompilacji KTS jest niedostępna: nawigowanie do definicji zależności w katalogu wersji za pomocą Ctrl+kliknięcie (Command+kliknięcie na macOS) nie jest jeszcze obsługiwane w przypadku plików kompilacji napisanych za pomocą skryptu Kotlin.
Asystent Firebase dodaje zależności bezpośrednio w skryptach kompilacji: Asystent Firebase dodaje zależności bezpośrednio do skryptów kompilacji, a nie za pomocą katalogów wersji.
Funkcja „Znajdź użycia” nie jest obsługiwana: znajdowanie użyć zmiennej katalogu wersji w innych plikach kompilacji nie jest jeszcze obsługiwane, niezależnie od tego, czy plik kompilacji jest w KTS czy Groovy. Oznacza to, że kliknięcie definicji zmiennej w katalogu wersji z naciśniętym klawiszem Control (Command na komputerach Mac) nie powoduje przejścia do plików kompilacji, w których używana jest ta zmienna.
Okno Struktura projektu w Android Studio wyświetla wiele plików katalogu, jeśli znajdują się one w folderze głównym
gradle
, ale nie wyświetla katalogów dla kompilacji złożonej. Jeśli na przykład masz 2 pliki katalogu – jeden dla aplikacji, a drugi dla kompilacji złożonej – w oknie Struktura projektu wyświetlany jest tylko plik katalogu aplikacji. Możesz użyć kompozytowej wersji, ale musisz bezpośrednio edytować jej plik TOML.
Dodatkowe informacje o pakietach SDK: problemy związane ze zgodnością z zasadami
Android Studio wyświetla ostrzeżenia narzędzia lint w plikach build.gradle.kts
i build.gradle
oraz w oknie struktury projektu w przypadku publicznych pakietów SDK, które naruszają zasady Google Play i są wymienione na platformie Google Play SDK Index. Zaktualizuj wszystkie zależności, które naruszają zasady Google Play, ponieważ te naruszenia mogą w przyszłości uniemożliwić Ci publikowanie w Konsoli Google Play. Ostrzeżenia o naruszeniu zasad uzupełniają ostrzeżenia o nieaktualnej wersji wyświetlane przez Android Studio.
Obsługa wersji compileSdk w Android Studio
Android Studio wyświetli ostrzeżenie, jeśli Twój projekt używa compileSdk
, która nie jest obsługiwana przez bieżącą wersję Androida Studio. Jeśli to możliwe, sugeruje też przejście na wersję Androida Studio, która obsługuje compileSdk
używane w projekcie. Pamiętaj, że aktualizacja Androida Studio może wymagać aktualizacji AGP.
AGP wyświetla też ostrzeżenie w oknie narzędzia Build, jeśli compileSdk
używany przez projekt nie jest obsługiwany przez bieżącą wersję AGP.
Zmiany w działaniu narzędzia Lint
Od wersji 8.3.0-alpha02 wtyczki Androida do obsługi Gradle podczas uruchamiania narzędzia lint w module są wykonywane oddzielne zadania analizy lint dla głównych i testowych komponentów modułu. Przyczyną tej zmiany jest zwiększenie skuteczności.
Aby przywrócić wcześniejsze działanie, ustaw wartość
android.experimental.lint.analysisPerComponent=false
w pliku
gradle.properties
.
Domyślnie włączone precyzyjne zmniejszanie zasobów
Precyzyjne zmniejszanie zasobów, które usuwa nieużywane wpisy z pliku
resources.arsc
i nieużywane pliki zasobów, jest domyślnie włączone.
Gdy to zmniejszanie jest włączone, tabela zasobów jest mniejsza i zawiera tylko wpisy folderu res
, do których odwołuje się kod.
Aby wyłączyć dokładne zmniejszanie zasobów, ustaw w pliku gradle.properties
projektu wartość android.enableNewResourceShrinker.preciseShrinking
.false
Rozwiązane problemy
Wtyczka Androida do obsługi Gradle w wersji 8.3.0
Rozwiązane problemy | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Wtyczka Androida do obsługi Gradle |
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Dexer (D8) |
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Lint |
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Integracja z Lint |
|
|||||||||||||||||||||||||||||||||||||||||||||||||
Shrinker (R8) |
|
Wtyczka Androida do obsługi Gradle w wersji 8.3.1
Rozwiązane problemy | ||
---|---|---|
Wtyczka Androida do obsługi Gradle |
|
|
Integracja z Lint |
|
Wtyczka Androida do obsługi Gradle w wersji 8.3.2
Rozwiązane problemy | |||
---|---|---|---|
Wtyczka Androida do obsługi Gradle |
|
||
Integracja z Lint |
|