Nouvelles fonctionnalités de la version preview d'Android Studio

Cette page présente les nouvelles fonctionnalités introduites dans les versions Preview d'Android Studio. Les versions Preview offrent un accès anticipé aux dernières fonctionnalités et améliorations d'Android Studio. Vous pouvez télécharger ces versions d'aperçu. Si vous rencontrez des problèmes lors de l'utilisation d'une version Preview d'Android Studio, faites-le nous savoir. Vos rapports de bug nous aident à améliorer Android Studio.

Les versions Canary contiennent des fonctionnalités de pointe en cours de développement et sont peu testées. Vous pouvez utiliser les versions Canary pour le développement, mais sachez que des fonctionnalités peuvent être ajoutées ou modifiées. Les versions candidates (RC) sont la prochaine version d'Android Studio et sont presque prêtes à être publiées en version stable. L'ensemble de fonctionnalités de la prochaine version a été stabilisé. Consultez Noms des versions d'Android Studio pour comprendre la dénomination des versions d'Android Studio.

Pour obtenir les dernières actualités sur les versions preview d'Android Studio, y compris une liste des correctifs notables dans chaque version preview, consultez les mises à jour des versions sur le blog Android Studio.

Versions actuelles d'Android Studio

Le tableau suivant répertorie les versions actuelles d'Android Studio et leurs canaux respectifs.

Version Chaîne
Mise à jour groupée d'Android Studio Narwhal | 2025.1.2 Stable
Plug-in Android Gradle 8.12.0 Stable
Mise à jour groupée d'Android Studio Narwhal 3 | 2025.1.3 RC
Mise à jour groupée d'Android Studio Narwhal 4 | 2025.1.4 Canary

Compatibilité avec les aperçus du plug-in Android Gradle

Chaque version preview d'Android Studio est publiée avec une version correspondante du plug-in Android Gradle (AGP). Les versions preview de Studio devraient fonctionner avec n'importe quelle version stable compatible d'AGP. Toutefois, si vous utilisez une version preview d'AGP, vous devez utiliser la version preview correspondante de Studio (par exemple, Android Studio Chipmunk Canary 7 avec AGP 7.2.0-alpha07). Toute tentative d'utilisation de versions divergentes (par exemple, Android Studio Chipmunk bêta 1 avec AGP 7.2.0-alpha07) entraînera un échec de la synchronisation, ce qui vous invitera à passer à la version correspondante d'AGP.

Pour obtenir un journal détaillé des arrêts et suppressions de l'API du plug-in Android Gradle, consultez les mises à jour de l'API du plug-in Android Gradle.

Studio Labs

Studio Labs vous permet de tester les dernières fonctionnalités expérimentales d'IA dans une version stable d'Android Studio. Vous pouvez ainsi intégrer plus rapidement nos offres d'assistance par IA dans votre workflow de développement. Pour en savoir plus, consultez Studio Labs.

Voici les fonctionnalités actuellement disponibles dans Studio Labs.

Fonctionnalité Description Docs
Génération de l'aperçu Compose Gemini peut générer automatiquement des aperçus Compose, y compris des données fictives pour les paramètres d'aperçu, pour un composable spécifique ou pour tous les composables d'un fichier. Générer des aperçus Compose
Joindre des images Joignez une image à votre requête pour générer une UI, déboguer des bugs d'UI, documenter l'architecture d'une application et plus encore. Joindre des images
Joindre des fichiers Joignez des fichiers à votre requête pour aider Gemini à mieux comprendre le contexte de votre question et à identifier le code à mettre à jour. Joindre des fichiers
Transformer l'UI Utilisez le langage naturel pour mettre à jour l'UI de votre application directement depuis le panneau d'aperçu Compose. UI de transformation

Mise à jour groupée d'Android Studio Narwhal 3 | 2025.1.3

Voici les nouvelles fonctionnalités de la mise à jour groupée d'Android Studio Narwhal 3 | 2025.1.3.

Pour voir les corrections apportées à cette version d'Android Studio, consultez les problèmes résolus.

Aperçus Compose redimensionnables

Compose Preview est désormais compatible avec le redimensionnement dynamique pour vous donner un aperçu visuel instantané de la façon dont votre UI s'adapte à différentes tailles d'écran.

Pour utiliser cette fonctionnalité, passez en mode Focus dans l'aperçu Compose en modifiant l'option d'affichage dans la barre d'outils :

Mode Focus de l'aperçu Compose
Mode Focus de l'aperçu Compose

Vous pouvez maintenant redimensionner la fenêtre d'aperçu en faisant glisser ses bords :

Redimensionner la fenêtre d'aperçu en faisant glisser ses bords.

Vous pouvez également utiliser la barre d'outils de redimensionnement qui s'affiche une fois l'aperçu redimensionné :

Redimensionner la fenêtre d'aperçu à l'aide de la barre d'outils de redimensionnement.

Si vous souhaitez enregistrer la nouvelle taille en tant que nouvelle annotation Preview, utilisez le menu contextuel :

Compose Resizeable Preview save new size
Compose Resizeable Preview save new size

La fonctionnalité de redimensionnement dynamique vous aide à créer des UI qui s'affichent parfaitement sur n'importe quelle taille d'écran.

Paramètre de vue Android permettant d'afficher les fichiers de compilation sous les modules correspondants

Un nouveau paramètre permet d'afficher les fichiers de compilation sous leur module correspondant dans la vue Android. Cette vue peut être utile lorsque vous travaillez sur des projets comportant de nombreux modules. Pour activer la vue, ouvrez le menu Options disponible à côté de la vue Android. Sélectionnez ensuite Appearance > Display Build Files In Module (Apparence > Afficher les fichiers de compilation dans le module).

Vue Android : fichiers de compilation dans le module
Option permettant d'afficher les fichiers de compilation sous les modules correspondants dans la vue Android.

Play Policy Insights dans Android Studio

Android Studio inclut désormais des informations et des conseils plus détaillés sur les règles Google Play qui peuvent avoir un impact sur votre application. Ces informations vous aident à créer des applications plus sûres dès le départ, en évitant les problèmes qui pourraient perturber votre processus de lancement et vous faire perdre du temps et des ressources à résoudre plus tard.

À partir de la version 3 d'Android Studio Narwhal, vous pouvez afficher les insights sur les règles Play sous forme de vérifications lint. Ces vérifications lint présenteront les informations suivantes :

  • Présentation de la règle.
  • Conseils pour éviter les pièges courants
  • Liens vers les pages des règles Play, où vous trouverez l'intégralité des règles officielles, ainsi que des informations et des ressources utiles.

Cette fonctionnalité vise à vous fournir des conseils utiles avant l'examen de votre application afin de vous permettre de la soumettre plus facilement. Elle ne couvre pas toutes les règles et ne fournit pas les résultats d'examen des applications. Consultez toujours l'intégralité du règlement dans le Centre d'informations sur les règles pour obtenir des conseils. Nous nous efforçons également de développer et d'améliorer cette intégration. Si vous avez des commentaires, veuillez les signaler.

Pour vérifier si des insights sur les règles Play sont disponibles pour votre projet, accédez à Code > Inspecter pour les insights sur les règles Play… Les insights seront listés dans la fenêtre d'outil "Problèmes" et apparaîtront également sous forme d'avertissements Lint dans les fichiers correspondants.

Play Policy Insights dans Android Studio
Informations sur les règles Play dans la mise à jour groupée Android Studio Narwhal 3.

Tester et développer avec la sauvegarde et la restauration d'applications

S'assurer que la fonctionnalité Sauvegarde et restauration Android fonctionne correctement pour votre application est essentiel pour que les utilisateurs restent engagés avec votre application après être passés à un nouvel appareil ou après avoir restauré des données depuis le cloud. Toutefois, il peut être difficile de tester si la sauvegarde et la restauration des données fonctionnent pour votre application.

Android Studio Narwhal vous permet de générer une sauvegarde de votre application et de la restaurer sur un autre appareil. Cela peut être utile pour tester si votre application se comporte comme prévu lors de la restauration des données d'une application d'un appareil à un autre ou à partir d'une sauvegarde cloud, ou si vous souhaitez configurer plus rapidement un appareil de test avec les données dont vous avez besoin pour développer et déboguer votre application.

Générer une sauvegarde

Pour générer un fichier de sauvegarde, procédez comme suit :

  1. Déployer une version de débogage de votre application sur un appareil connecté
  2. Effectuez l'une des actions suivantes pour générer une sauvegarde :
    • Dans la fenêtre Running Device (Appareil en cours d'exécution), cliquez sur l'action Backup App Data (Sauvegarder les données de l'application) dans la barre d'outils.
    • Sélectionnez Exécuter > Sauvegarder les données de l'application dans la barre de menu principale.
    • Dans l'onglet Explorateur d'appareils > Processus, effectuez un clic droit sur le processus de l'application, puis sélectionnez Sauvegarder les données de l'application.
  3. Dans la boîte de dialogue qui s'affiche, procédez comme suit :
    • Confirmez l'ID de l'application pour laquelle vous souhaitez générer une sauvegarde.
      • Indiquez si vous souhaitez générer une sauvegarde d'appareil à appareil, cloud ou cloud (non chiffrée).
    • Confirmez le nom et l'emplacement de la sauvegarde que vous souhaitez enregistrer. Par défaut, la sauvegarde est enregistrée dans le répertoire racine du projet Android Studio actuel.
      Générez une sauvegarde pour votre application.
  4. Cliquez sur OK lorsqu'Android Studio vous demande s'il peut arrêter l'application. Pour générer la sauvegarde, Android Studio doit arrêter le processus de l'application.

Vous pouvez afficher les sauvegardes que vous générez dans la fenêtre d'outil Project > Android (Projet > Android), sous le nœud Backup Files (Fichiers de sauvegarde).

Types de sauvegardes

Vous pouvez générer différents types de sauvegarde pour votre application. Lorsque vous générez une sauvegarde, sélectionnez le type de sauvegarde correspondant au scénario que vous souhaitez tester :

  • Appareil à appareil : génère une sauvegarde de votre application, semblable à celle créée lors d'un transfert d'appareil à appareil. Lors des transferts d'appareil à appareil, les données de sauvegarde de l'application sont envoyées directement à un autre appareil, par exemple via USB ou Wi-Fi.
  • Cloud : génère une sauvegarde de votre application, semblable à celle enregistrée dans l'espace de stockage du compte Google de l'utilisateur. Lorsqu'un utilisateur configure un nouvel appareil, il peut choisir de restaurer une sauvegarde cloud.
  • Cloud (non chiffré) : génère une sauvegarde de votre application, semblable à celle enregistrée dans l'espace de stockage du compte Google de l'utilisateur sur un appareil sur lequel le chiffrement côté client n'est pas activé.

Remarque : Lorsque vous utilisez la fonctionnalité pour tester Cloud, Cloud (non chiffré) ou Sauvegardes d'appareil à appareil, la sauvegarde générée n'est pas envoyée au cloud ni à un autre appareil, contrairement au flux de sauvegarde réel. Il génère la sauvegarde de votre application comme si elle allait être enregistrée dans le cloud ou envoyée à un autre appareil. Les sauvegardes générées pour n'importe quel type de sauvegarde se trouvent sous Fichiers de sauvegarde dans la fenêtre d'outil Projet > Android.

Restaurer les données d'une application

Pour restaurer les données d'une application, procédez comme suit :

  1. Déployez votre application sur l'appareil connecté. L'application doit avoir le même ID application que le fichier de sauvegarde que vous souhaitez restaurer sur l'appareil.
  2. Accédez à l'une des actions suivantes et cliquez dessus :
    • Dans la fenêtre Running Device (Appareil en cours d'exécution), cliquez sur l'action Restore App Data (Restaurer les données de l'application) dans la barre d'outils, puis sélectionnez un fichier de sauvegarde dans l'historique récent ou cliquez sur Browse (Parcourir).
    • Accédez à Exécuter > Restaurer les données de l'application dans la barre de menu principale.
    • Dans l'onglet Explorateur d'appareils > Processus, effectuez un clic droit sur le processus de l'application, puis sélectionnez Restaurer les données de l'application.
    • Dans la fenêtre d'outil Projet > Android, effectuez un clic droit sur une sauvegarde sous le nœud Fichiers de sauvegarde, puis sélectionnez Restaurer les données de l'application.
  3. Le cas échéant, sélectionnez une sauvegarde dans l'historique récent ou cliquez sur Parcourir pour sélectionner un fichier de sauvegarde à restaurer à partir du stockage local.

Vous pouvez également inclure un fichier de sauvegarde dans une configuration d'exécution, de sorte que le déploiement de votre application restaure également les données de l'application à partir d'un fichier de sauvegarde. Pour ce faire, procédez comme suit :

  1. Accédez à Exécuter > Modifier les configurations dans la barre de menu principale.
  2. Sélectionnez une configuration d'exécution d'application, puis accédez à Options de restauration.
    Restaurez les options dans une configuration d'exécution.
  3. Pour restaurer une application à partir d'une sauvegarde, cochez la case Restaurer l'état de l'application.
  4. Sélectionnez un fichier de sauvegarde dans l'historique récent ou parcourez le stockage local pour le sélectionner.
  5. Si vous souhaitez uniquement restaurer les données d'application lors d'une nouvelle installation, cochez la case Restaurer uniquement lors d'une nouvelle installation de l'APK. Cette option peut être utile si vous déployez l'application sur un nouvel appareil de test et que vous souhaitez restaurer des données pour faciliter le débogage et le développement de l'application.
  6. Cliquez sur OK pour enregistrer la configuration d'exécution.
  7. Déployez votre application à l'aide de la configuration d'exécution pour tester la restauration des données de votre application sur un appareil connecté.

Inspections Proguard

Android Studio inclut désormais des inspections pour éviter les règles ProGuard mal conçues ou celles qui empêchent les optimisations R8. Les règles de conservation trop larges, telles que -keep class **.*, et les configurations de règles ProGuard pour les consommateurs, telles que dontshrink et -dontoptimize, déclenchent désormais un avertissement dans l'IDE Studio. Pour créer une règle Keep efficace qui autorise la réduction du code, limitez la portée de la règle à un package spécifique et indiquez explicitement ce que vous souhaitez conserver.

Fichiers AGENT.md pour le contexte au niveau du projet

Vous pouvez désormais inclure des fichiers AGENT.md dans votre projet. Il s'agit de fichiers Markdown qui fournissent à Gemini des instructions spécifiques au projet, des règles de style de codage et d'autres conseils en tant que contexte.

Gemini détecte et applique automatiquement les instructions de tout fichier nommé AGENT.md dans votre projet. Si aucun fichier AGENT.md n'est présent, Gemini recherche un fichier GEMINI.md en remplacement.

Nouveau paramètre permettant de désactiver la synchronisation automatique

Android Studio propose désormais un paramètre permettant de passer du mode de synchronisation automatique par défaut (par exemple, la synchronisation s'exécute automatiquement lorsqu'un projet est ouvert) à un nouveau mode de synchronisation manuelle avec des rappels. Le comportement par défaut reste la synchronisation automatique. Pour passer à la synchronisation manuelle, accédez à File (Android Studio sous macOS) > Settings > Build, Execution, Deployment > Build Tools, puis définissez Project Sync mode sur Manual Sync with reminders.

Fonctionnalités qui quittent Studio Labs

Les fonctionnalités expérimentales suivantes de Studio Labs sont stables à partir de la version Narwhal 3 Feature Drop :

Mise à jour groupée d'Android Studio Narwhal 4 | 2025.1.4

Voici les nouvelles fonctionnalités de la mise à jour groupée d'Android Studio Narwhal 4 | 2025.1.4.

Pour voir les corrections apportées à cette version d'Android Studio, consultez les problèmes résolus.

Parcours pour Android Studio

Journeys pour Android Studio vous aide à écrire et à gérer facilement des tests de bout en bout en vous permettant d'utiliser le langage naturel pour décrire les étapes et les assertions de chaque test, appelé "parcours". En tirant parti des capacités de vision et de raisonnement de Gemini, les étapes rédigées en langage naturel sont converties en actions que Gemini effectue dans votre application. Il est ainsi facile d'écrire et de comprendre vos parcours. Vous pouvez également écrire et décrire des assertions plus complexes, que Gemini évalue en fonction de ce qu'il voit sur l'appareil afin de déterminer si vos parcours réussissent ou échouent.

Comme Gemini réfléchit aux actions à effectuer pour atteindre les objectifs, les parcours sont plus résistants aux changements subtils de la mise en page ou du comportement de votre application. Cela permet de réduire le nombre de tests instables lors de l'exécution sur différentes versions de votre application et différentes configurations d'appareil.

Écrivez et exécutez des parcours directement depuis Android Studio sur n'importe quel appareil Android local ou à distance. L'IDE offre une nouvelle expérience d'éditeur pour créer des parcours, ainsi que des résultats enrichis qui vous aident à mieux comprendre le raisonnement et l'exécution de votre parcours par Gemini.

Sauvegarde et synchronisation

Vous pouvez désormais sauvegarder les paramètres Android Studio dans le stockage cloud à l'aide de votre compte Google ou JetBrains. Cela permet de synchroniser vos paramètres, tels que les mappages de touches, les paramètres de l'éditeur de code, les paramètres système, etc. Pour commencer, effectuez l'une des opérations suivantes :

  • Après avoir ouvert un projet dans Android Studio, connectez-vous à votre compte Google en cliquant sur l'avatar en haut à droite de l'IDE, puis sur Se connecter.

    1. Suivez les instructions de la boîte de dialogue qui s'affiche et veillez à cocher la case pour autoriser Android Studio à accéder à votre espace de stockage de compte Google.
    2. Suivez les instructions pour autoriser Android Studio.
  • Accédez à Paramètres > Sauvegarde et synchronisation.

    1. Sélectionnez Google pour utiliser l'espace de stockage de votre compte Google afin de synchroniser les données de votre application sur les installations Android Studio. Vous pouvez également utiliser un compte JetBrains pour synchroniser les données de votre application entre les installations IntelliJ et Android Studio.
    2. Après avoir suivi les instructions pour autoriser Android Studio à accéder à l'espace de stockage de votre compte préféré, revenez dans Android Studio.
    3. Sur la page Paramètres > Sauvegarde et synchronisation, vous pouvez examiner les catégories de données d'application que vous souhaitez synchroniser avec votre compte.
    4. Pour désactiver Sauvegarde et synchronisation, décochez la case qui active la fonctionnalité.

Si des données sont déjà synchronisées avec l'appareil sélectionné, Android Studio vous donne la possibilité de télécharger les paramètres depuis votre stockage à distance (option par défaut) ou d'importer vos paramètres locaux et d'écraser les paramètres synchronisés avec votre stockage à distance.

Solutions suggérées en cas de plantages

Dans la mise à jour groupée Android Studio Meerkat, nous avons lancé les insights Gemini pour les plantages signalés dans la fenêtre d'outil App Quality Insights (Insights sur la qualité des applications). Android Studio peut désormais utiliser Gemini pour analyser les données de plantage ainsi que votre code source afin de suggérer des solutions potentielles. Après avoir sélectionné un plantage dans la fenêtre d'outil "Insights sur la qualité des applications", accédez à l'onglet Insights, puis cliquez sur Suggérer une correction une fois que Gemini a généré un insight pour le plantage. Gemini génère ensuite des suggestions de modifications de code que vous pouvez examiner et accepter dans un onglet de comparaison de l'éditeur.

Nouveau paramètre permettant d'ouvrir les nouveaux projets avec la vue "Projet"

Un nouveau paramètre permet d'ouvrir les nouveaux projets dans la vue "Projet" par défaut. Pour activer ce paramètre, accédez à File (Android Studio sur macOS) > Settings > Advanced Settings > Project View, puis sélectionnez Set Project view as the default.

Outil de test de captures d'écran de l'aperçu Compose

Utilisez l'outil de test de capture d'écran de prévisualisation Compose pour tester vos UI Compose et éviter les régressions. Ce nouvel outil vous aide à générer des rapports HTML qui vous permettent de détecter visuellement les modifications apportées à l'UI de votre application. Pour en savoir plus, consultez Compose Preview Screenshot Testing.

Amélioration de l'arborescence des composants de l'outil d'inspection de la mise en page intégré

L'interaction avec l'arborescence des composants dans l'outil d'inspection de la mise en page intégrée est désormais plus intuitive et efficace grâce à plusieurs améliorations clés. Ces mises à jour sont conçues pour simplifier votre workflow et vous fournir des informations plus claires sur vos structures d'interface utilisateur Compose.

  1. Défilement horizontal : vous pouvez désormais faire défiler horizontalement l'arborescence des composants, ce qui facilite la navigation et l'inspection des mises en page larges ou profondément imbriquées sans perdre le contexte.
  2. Défilement automatique lors de la sélection : la vue défile désormais automatiquement, à la fois horizontalement et verticalement, lorsque vous sélectionnez un élément dans l'arborescence des composants, afin de mettre en évidence l'élément sélectionné. Ainsi, l'élément qui vous intéresse est toujours au premier plan.
  3. Amélioration de la visualisation des relations : nous avons affiné les lignes d'assistance dans l'arborescence des composants pour offrir des repères visuels plus explicites permettant de comprendre les relations entre les nœuds. Les lignes en pointillés indiquent désormais clairement une relation de pile d'appel entre un nœud parent et son nœud enfant, ce qui vous aide à suivre plus efficacement les connexions programmatiques. Les lignes continues continuent de représenter toutes les autres relations parent-enfant standards dans l'arborescence.

Ces améliorations visent à vous offrir une expérience de débogage plus fluide et plus efficace, vous permettant de comprendre et d'affiner rapidement votre UI.

L'arborescence des composants de l'outil d'inspection de la mise en page intégrée prend désormais en charge le défilement horizontal et le défilement automatique lors de la sélection.
Amélioration de l'arborescence des composants de l'outil d'inspection de la mise en page intégrée

Utiliser un LLM local

La mise à jour de fonctionnalités Narwhal 4 d'Android Studio vous permet de choisir le LLM qui alimente les fonctionnalités d'IA de l'IDE.

Fenêtre de chat Gemini dans Android Studio montrant le sélecteur de modèle avec les options pour Gemini et un LLM local.
Sélecteur de modèle dans Android Studio.

Le LLM doit se trouver sur votre ordinateur local, ce qui est avantageux si votre connexion Internet est limitée ou si vous avez des restrictions concernant l'utilisation de modèles d'IA, ou si vous souhaitez simplement expérimenter avec des modèles de recherche open source.

Un LLM local offre une alternative à la prise en charge des LLM intégrée à Android Studio. Toutefois, Gemini dans Android Studio offre généralement la meilleure expérience de développement Android, car Gemini est optimisé pour Android et est compatible avec toutes les fonctionnalités d'Android Studio. Avec Gemini, vous pouvez choisir parmi différents modèles pour vos tâches de développement Android, y compris le modèle par défaut sans frais ou les modèles accessibles avec une clé API Gemini payante.

Pour prendre en charge les LLM locaux, vous devez installer un fournisseur de LLM tel que LM Studio ou Ollama sur votre ordinateur local, ainsi qu'un modèle compatible de votre choix.

L'assistant de mise à niveau pour SDK Android est désormais compatible avec Android 16 / API 36

La migration d'Android 15 / API 35 vers Android 16 / API 36 a été ajoutée à l'assistant de mise à niveau du SDK Android. Pour obtenir de l'aide sur la migration, accédez à Tools > Android SDK Upgrade Assistant (Outils > Assistant de mise à niveau pour SDK Android).

Plug-in Android Gradle 9.0

Le plug-in Android Gradle 9.0 est une nouvelle version majeure d'AGP qui apporte des modifications à l'API et au comportement.

Pour passer au plug-in Android Gradle 9.0.0-alpha02, utilisez l'assistant de mise à niveau du plug-in Android Gradle dans Android Studio Narwhal 4 Feature Drop | 2025.1.4.

L'assistant de mise à niveau AGP vous aide à préserver les comportements existants lors de la mise à niveau de votre projet, le cas échéant. Vous pouvez ainsi mettre à niveau votre projet pour utiliser AGP 9.0, même si vous n'êtes pas prêt à adopter toutes les nouvelles valeurs par défaut d'AGP 9.0.

Compatibilité

Le niveau d'API Android maximal compatible avec le plug-in Android Gradle 9.0.0-alpha02 est le niveau d'API 36.

Le plug-in Android Gradle 9.0.0-alpha02 nécessite Gradle 9.0.0.

Changements de comportement

Le plug-in Android Gradle 9.0 présente les nouveaux comportements suivants :

Comportement Recommandation
Le plug-in Android Gradle 9.0 utilise la version r28c du NDK par défaut. Envisagez de spécifier explicitement la version du NDK que vous souhaitez utiliser.
Le plug-in Android Gradle 9.0 exige par défaut que les consommateurs d'une bibliothèque utilisent la même version du SDK de compilation ou une version ultérieure. Utilisez le même SDK de compilation ou un SDK de compilation plus récent lorsque vous consommez une bibliothèque. Si cela n'est pas possible ou si vous souhaitez donner plus de temps aux consommateurs d'une bibliothèque que vous publiez pour effectuer la transition, définissez explicitement AarMetadata.minCompileSdk.

AGP 9.0 inclut des mises à jour des valeurs par défaut des propriétés Gradle suivantes. Vous avez ainsi le choix de conserver le comportement d'AGP 8.13 lors de la mise à niveau :

Propriété Fonction Passer d'AGP 8.13 à AGP 9.0 Recommandation
android.uniquePackageNames Garantit que chaque bibliothèque possède un nom de package distinct. falsetrue Spécifiez des noms de packages uniques pour toutes les bibliothèques de votre projet. Si ce n'est pas possible, vous pouvez désactiver ce signal pendant la migration.
android.dependency.useConstraints Contrôle l'utilisation des contraintes de dépendance entre les configurations.
La valeur par défaut dans AGP 9.0 est false, qui n'utilise que des contraintes dans les tests d'appareil d'application (AndroidTest). Si vous définissez cette valeur sur true, vous rétablirez le comportement de la version 8.13.
truefalse N'utilisez pas de contraintes de dépendance partout, sauf si vous en avez besoin. Accepter la nouvelle valeur par défaut de ce flag permet également d'activer des optimisations dans le processus d'importation de projet, ce qui devrait réduire le temps d'importation pour les compilations comportant de nombreux sous-projets de bibliothèque Android.
aandroid.enableAppCompileTimeRClass Compiler le code dans les applications par rapport à une classe R non finale, ce qui permet d'aligner la compilation des applications sur celle des bibliothèques.
Cela améliore l'incrémentalité et ouvre la voie à de futures optimisations des performances du flux de traitement des ressources.
falsetrue De nombreux projets peuvent simplement adopter le nouveau comportement sans modifier le code source. Si les champs de la classe R sont utilisés dans un emplacement nécessitant une constante, comme les cas de switch, refactorisez-les pour utiliser des instructions if chaînées.
android.sdk.defaultTargetSdkToCompileSdkIfUnset Utilise la version du SDK de compilation comme valeur par défaut pour la version du SDK cible dans les applications et les tests.
Avant cette modification, la version du SDK cible était définie par défaut sur la version minimale du SDK.
falsetrue Spécifiez explicitement la version du SDK cible pour les applications et les tests.
android.onlyEnableUnitTestForTheTestedBuildType Ne crée que des composants de test unitaire pour le type de compilation testé.
Dans le projet par défaut, cela se traduit par un seul test unitaire pour le débogage, alors que le comportement précédent consistait à exécuter des tests unitaires pour le débogage ou la version.
falsetrue Si votre projet n'exige pas l'exécution de tests pour le débogage et la version Release, aucune modification n'est requise.
android.proguard.failOnMissingFiles Échec de la compilation avec une erreur si l'un des fichiers de conservation spécifiés dans le DSL AGP n'existe pas sur le disque. Avant cette modification, les fautes de frappe dans les noms de fichiers entraînaient l'ignorance silencieuse des fichiers. falsetrue Supprimez toutes les déclarations de fichiers ProGuard non valides.
android.r8.optimizedResourceShrinking Permet à R8 de conserver moins de ressources Android en considérant les classes et les ressources Android ensemble. falsetrue Si les règles de conservation de votre projet sont déjà complètes, aucune modification n'est requise.
android.r8.strictFullModeForKeepRules Permet à R8 de conserver moins d'éléments en ne conservant pas implicitement le constructeur par défaut lorsqu'une classe est conservée. En d'autres termes, -keep class A n'implique plus -keep class A { <init>(); }
.
falsetrue Si les règles de conservation de votre projet sont déjà complètes, aucune modification n'est requise.

Remplacez -keep class A par -keep class A { <init>(); } dans les règles de conservation de votre projet pour tous les cas où vous avez besoin que le constructeur par défaut soit conservé.
android.defaults.buildfeatures.shaders Active la compilation des nuanceurs dans tous les sous-projets. truefalse Activez la compilation des nuanceurs uniquement dans les sous-projets qui contiennent des nuanceurs à compiler en définissant les éléments suivants dans les fichiers de compilation Gradle de ces projets :
android {
  buildFeatures {
    shaders = true
  }
}

Fonctionnalités supprimées

Le plug-in Android Gradle 9.0 supprime les fonctionnalités suivantes :

DSL modifiée

Le plug-in Android Gradle 9.0 présente les modifications DSL importantes suivantes :

DSL supprimée

Le plug-in Android Gradle 9.0 supprime les éléments suivants :

Propriétés Gradle supprimées

Les propriétés Gradle suivantes ont été ajoutées à l'origine pour désactiver globalement les fonctionnalités activées par défaut.

Ces fonctionnalités sont désactivées par défaut depuis AGP 8.0 ou version antérieure. Activez ces fonctionnalités uniquement dans les sous-projets qui les utilisent pour une compilation plus efficace.

Propriété Fonction Remplacement
android.defaults.buildfeatures.aidl Active la compilation AIDL dans tous les sous-projets. Activez la compilation AIDL uniquement dans les sous-projets où se trouvent des sources AIDL en définissant la propriété suivante dans les fichiers de compilation Gradle de ces projets :
android {
  buildFeatures {
    aidl = true
  }
}
dans le fichier de compilation Gradle de chaque sous-projet contenant des sources AIDL
android.defaults.buildfeatures.renderscript Active la compilation RenderScript dans tous les sous-projets. Activez la compilation Renderscript uniquement dans les sous-projets où se trouvent des sources Renderscript en définissant la propriété suivante dans les fichiers de compilation Gradle de ces projets :
android {
  buildFeatures {
    renderScript = true
  }
}

API supprimées

Le plug-in Android Gradle 9.0 supprime les éléments suivants :

  • Les API BaseExtension.registerTransform obsolètes et désactivées, qui n'étaient conservées que pour permettre la compilation avec la dernière version d'AGP tout en ciblant l'exécution sur AGP 4.2 ou version antérieure.

Propriétés Gradle appliquées

AGP 9.0 génère une erreur si vous définissez les propriétés Gradle suivantes.

L'assistant de mise à niveau du plug-in Android Gradle ne mettra pas à niveau les projets vers AGP 9.0 qui utilisent ces propriétés.

Propriété Fonction
android.r8.integratedResourceShrinking La réduction des ressources est désormais toujours exécutée dans le cadre de R8. L'implémentation précédente a été supprimée.