Android Studio 3.3 (janvier 2019)

Android Studio 3.3 est une version majeure qui comprend plusieurs nouvelles fonctionnalités et améliorations.

3.3.2 (mars 2019)

Cette mise à jour mineure inclut plusieurs corrections de bugs et améliorations de performances. Pour consulter la liste des corrections de bugs principaux, lisez l'article associé sur le blog des mises à jour des versions.

3.3.1 (février 2019)

Cette mise à jour mineure inclut plusieurs corrections de bugs et améliorations de performances.

IntelliJ IDEA 2018.2.2

L'IDE principal d'Android Studio a été mis à jour avec les améliorations d'IntelliJ IDEA via la version 2018.2.2.

Mises à jour du plug-in Android Gradle

Pour en savoir plus sur les nouveautés du plug-in Android Gradle, consultez ses notes de version.

L'éditeur de navigation vous permet de visualiser et de compiler rapidement la navigation dans votre application à l'aide du composant d'architecture de navigation.

Pour en savoir plus, consultez Implémenter la navigation avec le composant d'architecture de navigation.

Supprimer les répertoires Android Studio inutilisés

La première fois que vous exécutez une version majeure d'Android Studio, elle recherche les répertoires contenant des caches, des paramètres, des index et des journaux pour les versions d'Android Studio pour lesquelles une installation correspondante est introuvable. La boîte de dialogue Supprimer les répertoires Android Studio inutilisés affiche ensuite les emplacements, les tailles et les heures de dernière modification de ces répertoires inutilisés. Elle vous permet également de les supprimer.

Les répertoires qu'Android Studio envisage de supprimer sont indiqués ci-dessous :

  • Linux : ~/.AndroidStudio[Preview]X.Y
  • Mac : ~/Library/{Preferences, Caches, Logs, Application Support}/AndroidStudio[Preview]X.Y
  • Windows : %USER%.AndroidStudio[Preview]X.Y

Améliorations apportées à lint

Lorsque lint est appelé depuis Gradle, il est beaucoup plus rapide. Dans les projets plus volumineux, lint peut s'exécuter jusqu'à quatre fois plus vite.

Assistant Créer un projet

L'assistant Create New Project (Créer un projet) a fait peau neuve et contient des mises à jour qui simplifient la création de projets Android Studio.

Pour en savoir plus, consultez Créer un projet.

Mises à jour du profileur

Android Studio 3.3 inclut des mises à jour de plusieurs profileurs individuels.

Performances améliorées

Suite aux commentaires des utilisateurs, nous avons considérablement amélioré les performances de rendu lors de l'utilisation des profileurs. Continuez à envoyer des commentaires, en particulier si vous continuez à rencontrer des problèmes de performances.

Options de suivi de l'allocation de mémoire du profileur

Pour améliorer les performances de l'application lors du profilage, le Profileur de mémoire échantillonne à présent régulièrement les allocations de mémoire par défaut. Si vous le souhaitez, vous pouvez modifier ce comportement à l'aide du menu déroulant Allocation Tracking (Suivi de l'allocation) lorsque vous effectuez des tests sur des appareils équipés d'Android 8.0 (niveau d'API 26) ou version ultérieure.

Dans le menu déroulant Allocation Tracking, vous pouvez choisir l'un des modes suivants :

  • Full (Complet) : capture toutes les allocations de mémoire des objets. Notez que si votre application alloue de nombreux objets, vous risquez de rencontrer d'importants problèmes de performances lors du profilage.

  • Sampled (Échantillonné) : capture un échantillon périodique des allocations de mémoire des objets. Il s'agit du comportement par défaut et il a moins d'impact sur les performances de l'application lors du profilage. Vous risquez de rencontrer des problèmes de performances avec les applications qui allouent de nombreux objets sur une courte période.

  • Off (Désactivé) : désactive l'allocation de mémoire. Si ce mode n'est pas encore sélectionné, il est activé automatiquement lors de l'enregistrement d'un processeur, puis le paramètre précédent est rétabli une fois l'enregistrement terminé. Vous pouvez modifier ce comportement dans la boîte de dialogue de configuration de l'enregistrement du processeur.

    Le suivi affecte à la fois les objets Java et les références JNI.

Inspecter les données de rendu des images

Dans le Profileur de processeur, vous pouvez à présent inspecter le temps nécessaire à votre application Java pour afficher chaque image sur le thread UI principal et sur RenderThread. Ces données peuvent s'avérer utiles pour identifier les goulots d'étranglement qui provoquent des à-coups dans l'interface utilisateur et des fréquences d'images faibles. Par exemple, chaque image qui prend plus de 16 ms pour maintenir une fréquence d'images fluide s'affiche en rouge.

Pour afficher les données de rendu d'images, enregistrez une trace à l'aide d'une configuration vous permettant de tracer les appels système avec l'option Trace System Calls. Après avoir enregistré la trace, recherchez des informations sur chaque image le long de la chronologie de l'enregistrement dans la section appelée FRAMES, comme illustré ci-dessous.

Pour en savoir plus sur l'analyse et la résolution des problèmes de fréquence d'images, consultez Affichage lent.

Fragments dans la chronologie des événements

La chronologie des événements indique maintenant quand les fragments sont associés ou dissociés. En outre, lorsque vous pointez sur un fragment, une info-bulle indique son état.

Afficher le texte formaté pour les charges utiles de connexion dans le Profileur de réseau

Auparavant, le Profileur de réseau n'affichait que du texte brut provenant des charges utiles de connexion. Android Studio 3.3 formate à présent certains types de texte par défaut, y compris JSON, XML et HTML. Dans les onglets Response (Réponse) et Request (Requête), cliquez sur le lien View Parsed (Afficher le texte analysé) pour afficher le texte formaté et cliquez sur le lien View Source (Afficher la source) pour afficher le texte brut.

Pour en savoir plus, consultez Inspecter le trafic réseau avec le Profileur de réseau.

Téléchargement automatique des composants du SDK

Lorsque votre projet a besoin d'un composant SDK des plates-formes SDK, NDK ou CMake, Gradle tente maintenant de télécharger automatiquement les packages requis, à condition que vous ayez déjà accepté les contrats de licence associés à l'aide de SDK Manager.

Pour en savoir plus, consultez Télécharger automatiquement les packages manquants avec Gradle.

Prise en charge de Clang-Tidy

Android Studio prend désormais en charge l'analyse de code statique à l'aide de Clang-Tidy pour les projets qui incluent du code natif. Pour activer la prise en charge de Clang-Tidy, mettez à jour votre NDK vers la version r18 ou ultérieure.

Vous pouvez ensuite activer ou réactiver les inspections en ouvrant la boîte de dialogue Settings (Paramètres) ou Preferences (Préférences) et en accédant à Editor > Inspections > C/C++ > General > Clang-Tidy (Éditeur > Inspections > C/C++ > Général > Clang-Tidy). Lorsque vous sélectionnez cette inspection dans la boîte de dialogue Settings ou Preferences, vous pouvez également voir la liste des vérifications Clang-Tidy qui sont activées et désactivées dans la section Option du panneau de droite. Pour activer des vérifications supplémentaires, ajoutez-les à la liste, puis cliquez sur Apply (Appliquer).

Pour configurer Clang-Tidy avec des options supplémentaires, cliquez sur Configure Clang-Tidy Checks Options (Configurer les options des vérifications Clang-Tidy), puis ajoutez-les dans la boîte de dialogue qui s'ouvre.

Suppression des options de personnalisation C++

Les options suivantes ont été supprimées de la boîte de dialogue Customize C++ Support (Personnaliser la prise en charge de C++) :

  • Exceptions Support (-fexceptions) (Prise en charge des exceptions (-fexceptions))
  • Runtime Type Information Support (-ftti) (Prise en charge des informations sur le type d'exécution (-ftti))

Les comportements respectifs sont activés pour tous les projets créés via Android Studio.

CMake version 3.10.2

La version 3.10.2 de CMake est à présent incluse dans SDK Manager. Notez que Gradle utilise toujours la version 3.6.0 par défaut.

Pour spécifier une version CMake pour Gradle, ajoutez ce qui suit au fichier build.gradle de votre module :

    android {
        ...
        externalNativeBuild {
            cmake {
                ...
                version "3.10.2"
            }
        }
    }
    
  

Pour en savoir plus sur la configuration de CMake dans build.gradle, consultez Configurer manuellement Gradle.

Nouvelle syntaxe "+" pour spécifier les versions minimales de CMake

Lorsque vous spécifiez une version de CMake dans le fichier build.gradle de votre module principal, vous pouvez maintenant ajouter un signe "+" pour correspondre au comportement de la commande cmake_minimum_required() de CMake.

Attention : Nous vous déconseillons d'utiliser la syntaxe "+" avec d'autres dépendances de compilation, car les dépendances dynamiques peuvent entraîner des mises à jour de version inattendues et des difficultés à résoudre les différences de version.

Les Android App Bundles sont maintenant compatibles avec les Applis instantanées

Android Studio vous permet à présent de compiler des Android App Bundles entièrement compatibles avec Google Play Instant. En d'autres termes, vous pouvez maintenant compiler et déployer à la fois des applis installées et des expériences instantanées à partir d'un seul projet Android Studio et les inclure dans un seul Android App Bundle.

Si vous créez un projet Android Studio à l'aide de la boîte de dialogue Create New Project, veillez à cocher la case Configure your project > This project will support instant apps (Configurer votre projet > Ce projet prendra en charge les applis instantanées). Android Studio crée ensuite un projet d'application selon la procédure habituelle, mais inclut les propriétés suivantes dans votre fichier manifeste pour que le module de base de votre application prenne en charge les applis instantanées :

    <manifest ... xmlns:dist="http://schemas.android.com/apk/distribution">
        <dist:module dist:instant="true" />
        ...
    </manifest>
    
  

Vous pouvez ensuite créer une fonctionnalité permettant une utilisation instantanée en sélectionnant File > New > New Module (Fichier > Nouveau > Nouveau module) dans la barre de menu, puis en sélectionnant Instant Dynamic Feature Module (Module de fonctionnalité dynamique instantané) dans la boîte de dialogue Create New Module (Créer un module). Gardez à l'esprit que la création de ce module permet également une utilisation instantanée du module de base de votre application.

Pour déployer votre application sur un appareil local en tant qu'expérience instantanée, modifiez votre configuration d'exécution et cochez la case General > Deploy as instant app (Général > Déployer en tant qu'application instantanée).

Synchronisation de projets à variante unique

La synchronisation de votre projet avec votre configuration de compilation est une étape importante pour permettre à Android Studio de comprendre la structure de votre projet. Toutefois, ce processus peut prendre du temps pour les projets de grande envergure. Si votre projet utilise plusieurs variantes de compilation, vous pouvez à présent optimiser les synchronisations du projet en les limitant à la variante qui est actuellement sélectionnée.

Vous devez utiliser Android Studio 3.3 ou version ultérieure avec le plug-in Android Gradle 3.3.0 ou version ultérieure pour activer cette optimisation. Lorsque vous remplissez ces conditions, l'IDE vous invite à activer cette optimisation lorsque vous synchronisez votre projet. L'optimisation est également activée par défaut sur les nouveaux projets.

Pour activer cette optimisation manuellement, cliquez sur File > Settings > Experimental > Gradle (Fichier > Paramètres > Expérimental > Gradle) ou Android Studio > Preferences > Experimental > Gradle (Android Studio > Préférences > Expérimental > Gradle) sur Mac, puis cochez la case Synchroniser uniquement la variante active.

Remarque : Actuellement, cette optimisation ne prend en charge que les projets qui contiennent uniquement le langage de programmation Java. Par exemple, si l'IDE détecte du code Kotlin ou C++ dans votre projet, il n'active pas automatiquement cette optimisation. Vous ne devez donc pas l'activer manuellement.

Pour en savoir plus, consultez Activer la synchronisation des projets à variante unique.

Fournir des commentaires rapidement

Si vous avez choisi de partager les statistiques d'utilisation pour améliorer Android Studio, les deux nouvelles icônes suivantes s'afficheront dans la barre d'état en bas de la fenêtre IDE :

Il vous suffit de cliquer sur l'icône qui représente le mieux votre expérience avec l'IDE. Lorsque vous procédez de la sorte, l'IDE envoie des statistiques d'utilisation permettant à l'équipe Android Studio de mieux comprendre vos appréciations. Dans certains cas (par exemple, lorsque vous indiquez une expérience négative avec l'IDE), vous avez la possibilité de fournir des commentaires supplémentaires.

Si vous ne l'avez pas déjà fait, vous pouvez activer le partage des statistiques d'utilisation. Pour cela, ouvrez la boîte de dialogue Settings (Paramètres) (ou Preferences (Préférences) sur Mac), accédez à Appearance & Behavior > System Settings > Data Sharing (Apparence et comportement > Paramètres système > Partage des données), puis cochez la case Send usage statistics to Google (Envoyer des statistiques d'utilisation à Google).