Chronologie de la migration du DSL et de l'API du plug-in Android Gradle

Le plug-in Android Gradle est le système de compilation pris en charge par les applications Android. Il permet de compiler de nombreux types de sources différents et de les associer dans une application que vous pouvez exécuter sur un appareil Android physique ou un émulateur.

La section suivante décrit l'évolution prévue du DSL et de l'API du plug-in Android Gradle. À mesure que de nouvelles API seront introduites dans des versions stables, les anciennes seront marquées comme obsolètes. Ces API obsolètes deviendront alors indisponibles dans la prochaine version stable. Vous trouverez ci-dessous des informations sur les modifications à venir dans chaque version majeure du plug-in Android Gradle.

Pour obtenir un journal plus détaillé des abandons ou des suppressions d'API dans le plug-in Android Gradle, consultez les mises à jour de l'API du plug-in Android Gradle.

AGP 9.0 (mi-2024)

Les nouvelles API Variant sont stables, les anciennes API sont abandonnées

  • Les API Variant en phase d'incubation dans les versions 4.1 et 4.2 sont stables.
  • Toutes ces interfaces se trouvent dans l'artefact gradle-api.
  • Les interfaces et classes précédentes utilisées dans l'ancienne API Variant sont désormais obsolètes.

Les nouvelles interfaces DSL sont stables, les anciennes sont abandonnées

  • Les interfaces DSL en phase d'incubation dans les versions 4.1, 4.2 et 7.0 sont désormais stables.
  • Toutes ces interfaces se trouvent dans l'artefact gradle-api.
  • Les interfaces et classes précédentes utilisées dans le DSL sont désormais obsolètes.

Les classes internes privées du plug-in Android Gradle restent accessibles

Les classes internes privées du plug-in Android Gradle, situées dans d'autres artefacts, sont toujours accessibles lors de la compilation des fichiers de version, mais il est déconseillé de les utiliser, car elles peuvent changer de façon brutale à tout moment.

AGP 10.0 (2025)

Les anciennes API sont supprimées

  • Toutes les interfaces et classes précédentes utilisées dans le DSL et l'ancienne API Variant sont supprimées.
  • L'artefact gradle-api est le seul artefact dont vous avez besoin pour accéder aux interfaces et aux classes du DSL et de l'API Variant. Il doit être utilisé pour le développement de plug-ins.
  • En utilisant les métadonnées Gradle, qui proposent différents graphiques de dépendance pour la compilation et l'exécution, seul l'artefact gradle-api est disponible lors de la compilation des fichiers de version.

(Provisoire) L'accès aux classes internes privées du plug-in Android Gradle est supprimé

La dépendance à l'artefact gradle masque désormais toutes les classes internes et n'accorde l'accès à la compilation qu'aux interfaces et aux classes disponibles dans l'artefact gradle-api. Cela concerne à la fois la compilation des plug-ins et des fichiers de version.

Il n'est pas possible d'ajouter manuellement une dépendance pour accéder aux classes internes.