Android Studio Flamingo | 2022.2.1 (avril 2023)

Voici les nouvelles fonctionnalités d'Android Studio Flamingo :

Versions de correctif

Voici une liste des versions de correctif dans Android Studio Flamingo.

Android Studio Flamingo | 2022.2.1 Correctif 2 (mai 2023)

Cette mise à jour mineure inclut ces corrections de bugs.

Android Studio Flamingo | 2022.2.1 Correctif 1 (mai 2023)

Cette mise à jour mineure inclut ces corrections de bugs pour le plug-in Android Gradle.

Icônes d'application à thème et couleur dynamique

Avec l'introduction de la couleur dynamique dans Material 3 et des icônes d'application à thème sous Android 13, vous pouvez désormais créer des mises en page ou des icônes d'applications qui héritent de la couleur du fond d'écran choisi par l'utilisateur. Cette fonctionnalité est disponible à partir de la version bêta 1 d'Android Studio Flamingo.

Prise en charge de la prévisualisation des icônes d'application à thème

Pour les fichiers launcher.xml, vous pouvez désormais utiliser le nouveau sélecteur System UI Mode (Mode d'UI du système) dans la barre d'outils pour changer de fond d'écran et voir comment les icônes d'application à thème réagissent au fond d'écran choisi par différents utilisateurs.

Sélecteur du mode d'UI du système


Prévisualisation des icônes d'application à thème sur différents fonds d'écran

Prévisualisation de la couleur dynamique

Pour l'aperçu de Compose : nous avons ajouté un nouvel attribut, wallpaper, à l'annotation Aperçu du composable. Si vous avez activé la couleur dynamique dans votre application, vous pouvez utiliser ce nouvel attribut pour changer de fond d'écran et voir comment votre UI réagit au fond d'écran de différents utilisateurs. Pour utiliser cette fonctionnalité, vous devez utiliser Compose 1.4.0-alpha03 ou une version ultérieure.

Fond d'écran à couleur dynamique dans l'aperçu de Compose

Pour le code XML Android : si vous avez activé la couleur dynamique dans votre application, vous pouvez maintenant utiliser le nouveau sélecteur System UI Mode (Mode d'UI du système) dans la barre d'outils pour changer de fond d'écran et voir comment vos mises en page réagissent au fond d'écran de différents utilisateurs. Notez que vous devez d'abord sélectionner un thème de couleur dynamique Material, puis modifier le fond d'écran.

Fond d'écran à couleur dynamique dans l'éditeur de mise en page

Mises à jour de la fonctionnalité de modification en temps réel

La modification en temps réel propose désormais deux modes : manuel et automatique. En mode manuel, les modifications de code sont appliquées à chaque enregistrement manuel, à l'aide des combinaisons de touches Ctrl + S (Command + S pour macOS). En mode automatique, lorsque vous mettez à jour une fonction composable, vos modifications sont directement appliquées sur l'appareil ou l'émulateur. Pour choisir le mode dans lequel vous souhaitez exécuter la fonctionnalité de modification en temps réel, accédez à File > Settings (Fichier > Paramètres) dans la barre de menu ou sur Android Studio > Preferences (Android Studio > Préférences) sous macOS. Cliquez ensuite sur Editor > Live Edit (Éditeur > Modification en temps réel), puis cochez la case Push Edits Manually (Transmettre manuellement les modifications) ou Push Edits Automatically (Transmettre automatiquement les modifications).

Traçage Compose

L'utilitaire de traçage système est un outil Android qui enregistre l'activité de l'appareil dans un fichier de suivi, qui fournit une vue d'ensemble des processus système de votre application pour une période donnée. À partir d'Android Studio Flamingo, vous pouvez afficher les fonctions Compose dans le Profileur de trace système à l'aide du traçage Compose. Le traçage Compose implique une faible intrusion par rapport au traçage système avec les niveaux de détail du traçage de méthode dans la composition, ce qui vous permet d'identifier les fonctions Compose qui sont recomposées.

Aperçu de l'interface utilisateur du traçage Compose

Pour commencer à utiliser le traçage des recompositions, vous devez passer, au minimum, aux versions suivantes :

  • Android Studio Flamingo Canary 5
  • Interface utilisateur de Compose : 1.3.0-beta01
  • Compilateur de Compose : 1.3.0
  • Vous devez utiliser au minimum le niveau d'API 30 sur l'appareil ou l'émulateur sur lequel vous exécutez le traçage.

De plus, vous devez ajouter la dépendance suivante au traçage d'exécution Compose :

implementation("androidx.compose.runtime:runtime-tracing:1.0.0-alpha01")

Pour afficher le traçage des recompositions, ouvrez le profileur Android Studio, puis sélectionnez le profileur de processeur. Dans votre application, accédez à l'interface utilisateur que vous souhaitez tracer, sélectionnez System Trace (Trace système), puis Record (Enregistrer). Lors de l'enregistrement, utilisez votre application pour générer la recomposition. Une fois que vous arrêtez les processus d'enregistrement et de traçage, les fonctions Compose s'affichent dans la trace de recomposition directement dans la timeline Threads. Vous pouvez également voir les fonctions Compose dans les onglets Flame Chart (Graphique de type "flamme"), Top Down (Descendant), Bottom Up (Ascendant) et Events (Événements) du volet Analysis (Analyse).

Il s'agit d'une fonctionnalité expérimentale qui est encore en cours de développement. N'hésitez donc pas à nous faire part de vos commentaires. Pour en savoir plus, consultez la section Traçage Compose.

Mises à jour des modèles de projet

Android Studio Flamingo Canary 6 inclut de nouveaux modèles pour créer un projet ou un module. Par défaut, les modèles utilisent Compose Material 3, sauf s'ils sont spécifiés comme modèles de vues. Nous vous recommandons d'utiliser les modèles Compose Material 3, tel que le modèle Empty Activity (Activité vide), pour créer une application Android. Pour en savoir plus, consultez la documentation de référence sur Compose Material 3.

Pour afficher les modèles, ouvrez l'assistant New Project (Nouveau projet) ou Create New Module (Créer un module). Pour ce faire, sélectionnez File > New > New Project (Fichier > Nouveau > Nouveau projet) ou New Module (Nouveau module) dans le menu principal.

Assistant de création de projet

Duplication d'appareils

Réduisez le nombre d'interruptions lors du développement en diffusant l'écran de votre appareil directement dans Android Studio. La duplication d'appareils vous permet d'interagir avec un appareil physique à l'aide de la fenêtre Running Devices (Appareils en cours d'exécution) dans Studio. Pour activer cette fonctionnalité, accédez à File > Settings > Tools > Device Mirroring (Fichier > Paramètres > Outils > Duplication de l'appareil), puis cochez la case Enable mirroring of physical Android devices (Activer la duplication d'appareils Android physiques). Une fois la fonctionnalité activée, connectez votre appareil et déployez votre application, ou ouvrez la fenêtre Running Devices (Appareils en cours d'exécution) pour commencer à diffuser l'écran de l'appareil et interagir avec celui-ci à partir de l'IDE.

Pour commencer, assurez-vous d'être connecté à un appareil. Tous les appareils auxquels vous êtes connecté sont indiqués dans des onglets de la fenêtre Running Devices (Appareils en cours d'exécution). Pour l'ouvrir, accédez à View > Tool Windows > Running Devices (Affichage > Fenêtres d'outils > Appareils en cours d'exécution). Lorsque vous déployez une application ou effectuez un test sur un appareil connecté, la fenêtre Running Devices (Appareils en cours d'exécution) s'affiche automatiquement et montre l'appareil dupliqué.

UI des appareils en cours d'exécution

Avis de confidentialité

Si la duplication des appareils est activée, Android Studio lance automatiquement la duplication pour tous les appareils connectés et associés. Cela peut entraîner la divulgation d'informations pour les appareils connectés avec la commande adb tcpip, car les informations et commandes de duplication sont transmises sur un canal non chiffré. En outre, Android Studio utilise un canal non chiffré pour communiquer avec le serveur adb. Dès lors, les informations de duplication peuvent être interceptées par d'autres utilisateurs de votre machine hôte.

Interception de trafic de l'outil d'inspection du réseau

À partir d'Android Studio Flamingo Canary 1, l'outil d'inspection du réseau affiche par défaut toutes les données de trafic pour la timeline complète. Vous pouvez sélectionner une plage dans la timeline pour n'afficher que le trafic correspondant.

Vous pouvez également créer et gérer des règles qui permettent de tester le comportement de votre application lorsqu'elle doit faire face à différentes réponses telles que des codes d'état, ainsi que des en-têtes et des corps de réponse. Les règles déterminent les réponses à intercepter et les modifient avant qu'elles n'atteignent l'application. Pour choisir celles que vous souhaitez activer ou désactiver, cochez ou décochez la case Active à côté de chaque règle. Les règles sont enregistrées automatiquement chaque fois que vous les modifiez.

Volets "Rules" (Règles) et "Rule Details" (Détails des règles) de l'outil d'inspection du réseau

Pour commencer, accédez à l'onglet Rules (Règles) dans l'outil d'inspection du réseau, puis cliquez sur + pour créer une règle. Dans le panneau Rule Details (Détails de la règle), attribuez un nom à la nouvelle règle et ajoutez des informations sur l'origine de la réponse que vous souhaitez intercepter dans la sous-section Origin (Origine). L'URL indiquée dans le tableau Rules (Règles) devrait refléter les modifications apportées à l'origine de la réponse. Tous les champs de cette sous-section sont facultatifs.

Sous-section "Origin" (Origine) dans la section "Rules" (Règles)

Dans la sous-section Response (Réponse), vous pouvez modifier la réponse avant de l'envoyer à votre application. Par exemple, vous pouvez définir la règle à exécuter au niveau des réponses associées à un code d'état spécifique et modifier ce code d'état.

Sous-section "Response" (Réponse) dans la section "Rules" (Règles)

Modifier les en-têtes

Dans la sous-section Header rules (Règles d'en-tête), vous pouvez créer plusieurs sous-règles qui ajoutent ou modifient des en-têtes dans une réponse. Lorsque vous créez plusieurs règles d'en-tête, utilisez les flèches vers le haut et vers le bas en haut du tableau Rules (Règles) pour modifier l'ordre dans lequel elles apparaissent. L'ordre a une incidence sur l'en-tête de la réponse modifiée, car les règles d'en-tête sont appliquées dans l'ordre dans lequel elles sont répertoriées.

Pour commencer, cliquez sur le signe + dans la section Header rules (Règles d'en-tête).

Pour ajouter un en-tête, saisissez un nom et une valeur dans la section Add new header (Ajouter un en-tête).

Onglet "Add new header" (Ajouter un en-tête)

Pour modifier un en-tête, accédez à l'onglet Edit existing header (Modifier un en-tête) et spécifiez le nom ou la valeur de l'en-tête qui vous intéresse. Modifiez le nom ou la valeur d'en-tête comme vous le souhaitez.

Onglet "Edit existing header" (Modifier un en-tête)

Modifier le corps de la réponse

Vous pouvez également créer des sous-règles pour modifier le corps de la réponse. Vous pouvez choisir de rechercher et de remplacer une section du corps, dans laquelle la première instance du corps sera remplacée. Vous pouvez également choisir de remplacer tout le contenu du corps en sélectionnant Replace entire body (Remplacer l'intégralité du corps).

Comme pour les règles d'en-tête, vous pouvez créer plusieurs règles de corps qui sont appliquées dans l'ordre dans lequel elles sont indiquées dans le tableau.

Connexion automatique au processus de premier plan dans l'outil d'inspection de la mise en page

L'outil d'inspection de la mise en page se connecte désormais automatiquement aux applications sur les appareils virtuels ou physiques. Plus précisément, il se connecte automatiquement aux processus débogables qui s'exécutent au premier plan d'un appareil connecté. Si vous avez des commentaires sur cette fonctionnalité, veuillez signaler un bug.

Mises à jour des insights sur la qualité des applications

Android Studio Flamingo Canary 5 et les versions ultérieures contiennent plusieurs nouvelles fonctionnalités d'insights sur la qualité des applications. Celles-ci vous permettent de vous concentrer sur les problèmes de priorité élevée et de collaborer avec votre équipe de développement.

Insights sur la qualité des applications avec le filtre des appareils ouvert

Pour vous aider à identifier les problèmes les plus importants, vous pouvez à présent filtrer les attributs suivants. Chaque filtre est trié en fonction du nombre d'événements pour que vous puissiez déterminer leur priorité.

  • Version de la plate-forme Android
  • Fabricant et modèle de l'appareil
  • Crashlytics Signal (Signal Crashlytics) : des icônes de signal apparaissent également à côté des problèmes associés dans le panneau Issues (Problèmes), ce qui vous permet de voir les statistiques et les signaux côte à côte. Un problème est considéré comme ayant régressé lorsqu'il a été fermé par le passé et qu'il est survenu à nouveau dans une nouvelle version de l'application.

    Filtre de signal Crashlytics

  • App version (Version de l'application) : ce filtre inclut désormais un filtre Play Track de niveau supérieur que vous pouvez utiliser pour sélectionner automatiquement les versions dans les canaux de test en production, ouverts, fermés et/ou internes.

De plus, vous pouvez désormais rechercher des filtres avec de nombreuses options pour personnaliser votre vue plus rapidement, sans avoir à faire défiler toutes les options de menu.

Annoter et clore les problèmes directement depuis Android Studio

Pour faciliter la collaboration, vous pouvez désormais effectuer les opérations suivantes directement dans la fenêtre d'outil App Quality Insights (Insights sur la qualité des applications) :

  • Résolvez les problèmes. Pour clore un problème, cliquez sur le bouton Close (Fermer) dans le panneau principal de la trace de la pile. Les problèmes récemment clos s'affichent dans le panneau Issues (Problèmes) et sont barrés. Pour rouvrir les problèmes récemment clos, cliquez à nouveau sur le bouton. Toutefois, lorsque vous actualisez la fenêtre d'outil App Quality Insights (Insights sur la qualité des applications), les problèmes clos ne sont plus visibles.

  • Lisez les notes relatives aux problèmes et joignez-les afin qu'ils soient visibles dans la console Firebase et pour vos collègues. Pour ajouter une note à un problème, sélectionnez le problème correspondant et ouvrez le panneau Notes. Vous devez disposer d'une autorisation en écriture sur le projet Crashlytics pour pouvoir écrire des notes. Les problèmes comportant des notes sont signalés par l'icône "notes" dans le panneau Issues (Problèmes).

Si vous ne connaissez pas encore bien les insights sur la qualité des applications et que vous souhaitez en savoir plus, consultez les notes de version précédentes.

Examiner les problèmes avec des fonctionnalités limitées en mode hors connexion

À partir d'Android Studio Flamingo Canary 8, vous pouvez effectuer certaines actions dans la fenêtre d'outil "App Quality Insights" (Insights sur la qualité des applications) tout en étant hors connexion. Si vous envoyez une nouvelle requête, par exemple en cliquant sur Refresh (Actualiser) et qu'Android Studio ne parvient pas à communiquer avec Crashlytics, la fenêtre App Quality Insights (Insights sur la qualité des applications) vous permet de passer en mode hors connexion.

Les insights sur la qualité des applications propose un mode hors connexion.

Dans ce mode, vous pouvez continuer à examiner les problèmes et les derniers événements à partir des données mises en cache. Certaines fonctionnalités, telles que la modification de certaines options de filtre ou les problèmes de fermeture, ne sont pas disponibles. Pour relancer votre connexion à Crashlytics et revenir à l'état en ligne, cliquez sur Reconnect (Reconnecter).

Options de reconnection du panneau "App Quality Insights" (Insights sur la qualité des applications" en mode hors connexion

Compilation et exécution automatisées en un clic

Android Studio Flamingo et AGP 7.3 permettent d'effectuer des compilations profilables automatisées en un clic, ce qui facilite la configuration et le profilage d'une application profilable. Cette fonctionnalité nécessite un appareil de test virtuel ou physique exécutant le niveau d'API 29 ou supérieur. Pour utiliser cette fonctionnalité, cliquez sur la flèche à côté de l'icône Profile app (Profiler l'application) et sélectionnez l'une des deux options suivantes :

Menu de compilation profilable en un clic

  • Profile 'app' with low overhead (Profiler l'application avec peu de ressources) démarre les profileurs de processeur et de mémoire. Dans le Profileur de mémoire, seule l'option Record Native Allocations (Enregistrer les allocations natives) est activée.

    Profilage avec peu de ressources
  • L'option Profile 'app' with complete data (Profiler l'application avec des données complètes) démarre les profileurs de processeur, de mémoire et d'énergie.

    Profilage avec des données complètes

Pour en savoir plus sur le test de votre application avec des coûts de performances minimaux, consultez la page Applications profilables.

Compatibilité lint pour les extensions de SDK

Android Studio Flamingo est compatible avec lint pour les extensions de SDK. Cette fonctionnalité vous permet de mettre à jour la vérification des API de l'outil lint afin de mettre correctement en application l'accès aux API en présence de rétroportages d'API et pour les nouvelles surfaces d'API telles que la Privacy Sandbox Android.

La vérification des API de l'outil lint permet de s'assurer que le code n'utilise que des API auxquelles vous avez accès via une vérification minSdkVersion ou SDK_INT. Les extensions de SDK permettent à une API d'exister dans plusieurs SDK. Par exemple, une API introduite dans Android U peut également être ajoutée aux extensions de rétroportage Android R, S et T. De plus, les applications peuvent spécifier plusieurs API si nécessaire à l'aide de leur fichier manifeste. De nouvelles API permettent aussi de vérifier si des extensions individuelles sont disponibles. L'outil lint gère désormais la logique permettant de vérifier les chevauchements entre les éléments obligatoires et les éléments déjà présents.

Enfin, des fonctionnalités d'IDE de Studio sont associées à la vérification des API. Cette fonctionnalité peut désormais gérer les cas de non-respect des API pour les nouvelles surfaces d'API, effectuer les vérifications nécessaires et enregistrer des correctifs rapides, un par surface d'API disponible.

Mise à jour de la plate-forme IntelliJ IDEA 2022.2

Android Studio Flamingo Canary 1 inclut les mises à jour d'IntelliJ IDEA 2022.2, qui améliorent l'expérience IDE. Pour en savoir plus sur les modifications, consultez les notes de version d'IntelliJ IDEA 2022.2.

Bundle Android Studio avec JDK 17

À partir d'Android Studio Flamingo Canary 3, l'IDE Studio est fourni avec JDK 17. Si Android Studio est configuré pour utiliser le JDK intégré, les nouveaux projets utiliseront la dernière version stable du plug-in Android Gradle et JDK 17. Toutefois, les projets existants risquent de ne pas fonctionner et vous devrez peut-être définir manuellement le JDK sur une version compatible.

Pour en savoir plus, consultez la section Définir la version du JDK.