Harmonogram migracji DSL/API wtyczki Androida do obsługi Gradle

Wtyczka Android Gradle (Android Gradle) to obsługiwany system kompilacji aplikacji na Androida, który umożliwia kompilowanie wielu różnych typów źródeł oraz łączenie ich w aplikacje, które można uruchomić na fizycznym urządzeniu z Androidem lub w emulatorze.

W poniższej sekcji opisano planowane ewolucję DSL i interfejsu API AGP. W miarę wprowadzania nowych interfejsów API w stabilnych wersjach stare interfejsy API zostaną oznaczone jako wycofane. Wycofane interfejsy API staną się wtedy niedostępne w następnej wersji stabilnej. Poniżej zamieściliśmy informacje o nadchodzących zmianach w poszczególnych ważnych wersjach RODO.

Bardziej szczegółowy opis wycofanych lub usuniętych interfejsów API AGP znajdziesz w artykule o aktualizacjach interfejsu API AGP.

AGP 9.0 (połowa 2024 r.)

Nowe interfejsy API wariantów są stabilne, a stare interfejsy API zostały wycofane

  • Interfejsy API wariantów, które były dostępne w wersjach 4.1 i 4.2, są stabilne.
  • Wszystkie te interfejsy znajdują się w artefakcie gradle-api.
  • Poprzednie interfejsy i klasy używane w starym interfejsie Variant API zostały wycofane.

Nowe interfejsy DSL są stabilne, a stare są wycofywane

  • Interfejsy DSL znane z wersji 4.1, 4.2 i 7.0 są teraz stabilne.
  • Wszystkie te interfejsy znajdują się w artefakcie gradle-api.
  • Poprzednie interfejsy i klasy używane w DSL zostały wycofane.

Prywatne, wewnętrzne zajęcia AGP, które są nadal dostępne

Prywatne klasy wewnętrzne z AGP, które znajdują się w innych artefaktach, są wciąż dostępne podczas kompilacji plików kompilacji, ale nie zalecamy ich używania, ponieważ w każdej chwili mogą się zmienić w sposób powodujący naruszenie zasad.

10.0 AUD (2025)

Stare interfejsy API zostały usunięte

  • Wszystkie poprzednie interfejsy i klasy używane w DSL i starym interfejsie Variant API zostaną usunięte.
  • Artefakt gradle-api to jedyny artefakt, który jest potrzebny do uzyskiwania dostępu do interfejsów i klas DSL oraz interfejsów API wariantów. Należy go używać podczas tworzenia wtyczek.
  • Korzystając z metadanych Gradle, które oferują różne wykresy zależności przy kompilowaniu i uruchamianiu, podczas kompilacji plików kompilacji dostępny jest tylko artefakt gradle-api.

(Wersja wstępna) Dostęp do prywatnych wewnętrznych klas AGP zostanie usunięty

Zależność od artefaktu gradle ukrywa teraz wszystkie klasy wewnętrzne i daje dostęp do kompilacji tylko do interfejsów i klas dostępnych w artefakcie gradle-api. Dotyczy to zarówno wtyczki, jak i kompilacji plików kompilacji.

Nie można ręcznie dodać zależności, aby uzyskać dostęp do klas wewnętrznych.