Wtyczka Androida do obsługi Gradle 8.6.0 (sierpień 2024 r.)

Wtyczka Androida do obsługi Gradle w wersji 8.6.0 to wersja główna, która zawiera wiele nowych funkcji i ulepszeń.

Zgodność

Maksymalny poziom interfejsu API obsługiwany przez wtyczkę Androida do obsługi Gradle w wersji 8.6 to poziom 35. Inne informacje o zgodności:

Wersja minimalna Wersja domyślna Uwagi
Gradle 8.7 8.7 Więcej informacji znajdziesz w artykule o aktualizowaniu Gradle.
Narzędzia do kompilacji pakietu SDK 34.0.0 34.0.0 Zainstaluj lub skonfiguruj narzędzia SDK do kompilacji.
NDK Nie dotyczy 26.1.10909125 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.6.1

Rozwiązane problemy
Dexer (D8)
Zadanie/transformacja dexing generuje niedeterministyczną zawartość classes.dex
Kompresor (R8)
R8 8.5.x StackOverflowError w SimpleInliningConstraintAnalysis
Zadanie :xxxx:minifyXXXReleaseWithR8 ERROR: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: Cannot invoke "com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()"

Wtyczka Androida do obsługi Gradle w wersji 8.6.0

Rozwiązane problemy
Wtyczka Androida do obsługi Gradle
Regresja AGP 7.0.0-alpha10: nie udało się zastosować wtyczki „com.android.internal.library”, gdy włączone jest powiązanie danych
Błędy podczas uruchamiania lintera z K2 UAST i bez niego
Manifest nie został wygenerowany dla konfiguracji androidTest wariantu
AGP 8.4 próbuje skonfigurować profile uruchamiania w kompilacjach debugowania
[Koala 2024.1.2 Canary 2] Błąd podczas uruchamiania modułu profilu podstawowego w podzielonym pakiecie APK
Zwalnianie miejsca / usuwanie ProjectInfo
Aktualizowanie nieaktualnej dokumentacji kdoc dla `isIncludeAndroidResources` w AGP DSL
Linter używa katalogu res bez dodawania zależności zadania
AGP 8.5: uruchamianych jest znacznie więcej zadań „mergeDebugResources”, co spowalnia kompilacje.
Dodawanie katalogu srcs za pomocą interfejsu API wariantu nie działa zgodnie z oczekiwaniami
Dexer (D8)
Aktualizowanie bazy danych interfejsu API do Androida 15 (poziom 35 interfejsu API)
java.lang.VerifyError: Verifier rejected class com.pax.log.LogUtils: java.lang.StackTraceElement com.pax.log.LogUtils.getCaller(com.pax.log.b, java.lang.StackTraceElement[], int) failed to verify
Linter
Linter nie wywołuje visitAnnotationUsage w przypadku użycia adnotacji z adnotacjami
Błąd lintera UnknownNullness podczas używania adnotacji typu
[library desugar] Linter wyświetla fałszywe ostrzeżenie NewApi, gdy włączone jest odcukrzanie
Ostrzeżenie lintera Menedżera danych logowania jest nieprawidłowe w Wear
Linter: SetTextI18n zgłasza błąd przypisania pustego ciągu znaków.
Integracja z linterem
Zadania lintera kończą się niepowodzeniem w przypadku dołączonej kompilacji
Kompresor (R8)
[r8 8.5]Poziome scalanie klas r8 powoduje błąd weryfikacji w Androidzie 5, gdy modelowanie interfejsu API jest wyłączone
Wersja na Wear OS utworzona za pomocą wtyczki Gradle 8.4.0/8.5.0 może powodować błąd java.lang.IllegalAccessError
R8 niejawnie zastępuje pustą klauzulę elementu dopasowaniem ()
[r8 8.5] Pionowe scalanie klas powoduje błąd NPE w czasie działania
Błąd przetwarzania R8 prawdopodobnie spowodowany operatorem przesunięcia w prawo
R8 (AGP 8.5.0+) kończy się niepowodzeniem z powodu błędu "Unexpected rewriting of item: ... to two distinct items:..."
Plik dex wygenerowany przez R8 wyświetla komunikat „Unable to find static main(String[]) in 'Test'” podczas wykonywania
Różne zachowanie programów spakowanych przez R8 i D8
R8 NullPointer po zaktualizowaniu do Kotlina 2.0