Android Studio Arctic Fox | 2020.3.1 (juillet 2021)

Android Studio Arctic Fox est une version majeure qui comprend de nombreuses nouvelles fonctionnalités et améliorations.

Nouvelle numérotation de version

Mise à jour de la numérotation de version pour Android Studio

Nous avons modifié le système de numérotation de version d'Android Studio pour qu'il corresponde plus précisément à IntelliJ IDEA, l'IDE sur lequel repose Android Studio.

Dans le système de numérotation précédent, cette version aurait été numérotée Android Studio 4.3 ou version 4.3.0.1. Avec le nouveau système de numérotation, on utilise à présent Android Studio - Arctic Fox | 2020.3.1 ou version 2020.3.1.

Version d'Intellij Ancien nom Ancien : Système de nombres Nouveau : Système d'années Nouveau nom de la version
2020.3 4.3 4.3.0 2020.3.1 Arctic Fox | 2020.3.1

À l'avenir, le numéro de version d'Android Studio sera déterminé comme suit :

<Year of IntelliJ Version>.<IntelliJ major version>.<Studio major version>.<Studio minor/patch version>

  • Les deux premiers groupes de nombres représentent la version de la plate-forme IntellIj sur laquelle repose une version spécifique d'Android Studio. Dans ce cas, il s'agit de la version 2020.3.
  • Le troisième groupe de nombres représente la version majeure de Studio, qui commence par 1 et est incrémentée d'une unité pour chaque version majeure.
  • Le quatrième groupe de nombres représente la version mineure/corrective de Studio, qui commence par 1 et est incrémentée d'une unité pour chaque version mineure.
  • Nous attribuons également à chaque version majeure un nom de version basé sur un nom d'animal, incrémenté de A à Z. Cette version est nommée Arctic Fox.

Mise à jour de la numérotation de version pour le plug-in Android Gradle

Nous avons modifié la numérotation des versions du plug-in Android Gradle (AGP) afin qu'il corresponde plus précisément à l'outil de compilation Gradle sous-jacent. Par conséquent, la prochaine version après AGP 4.2 sera AGP 7.0.

Pour en savoir plus, consultez Modifications apportées à la gestion des versions dans les notes de version d'AGP.

Plug-in Android Gradle 7.0.0

La dernière version du plug-in Android Gradle comprend de nombreuses mises à jour. Pour en savoir plus, consultez les notes de version complètes du plug-in Android Gradle.

Les tests unitaires utilisent désormais l'exécuteur de test Gradle

Pour améliorer la cohérence globale des exécutions de test, Android Studio utilise maintenant Gradle pour exécuter tous les tests unitaires par défaut. Dans de nombreux cas, cette modification n'affectera pas votre workflow de test dans l'IDE.

Par exemple, lorsque vous cliquez sur la commande Run dans le menu contextuel (visible par un clic droit sur une classe de test) ou sur l'action de marge correspondante , Android Studio utilisera par défaut la configuration d'exécution Gradle pour exécuter les tests unitaires.

Menu contextuel pour l&#39;exécution des tests

Toutefois, Android Studio ne reconnaît plus les configurations d'exécution existantes Android JUnit. Vous devez donc migrer les configurations d'exécution Android JUnit que vous pouvez enregistrer en tant que fichiers de projet vers les configurations d'exécution Gradle.

Pour créer une configuration de test Gradle, sélectionnez le modèle Gradle en suivant les instructions dans Créer une configuration d'exécution/de débogage. Lorsque vous créez une configuration, celle-ci apparaît dans la boîte de dialogue Edit Configurations (Modifier les configurations) de la section Gradle :

Modifier les configurations de test dans Android Studio

Si vous souhaitez inspecter des configurations Android JUnit qui ne sont plus reconnues, vous pouvez effectuer l'une des deux opérations suivantes :

  • Ouvrez les configurations enregistrées manuellement dans un éditeur de texte. L'emplacement de ces fichiers est spécifié par l'utilisateur, mais ils apparaissent généralement dans <my-app>/.idea/runConfigurations/.
  • Recherchez des configurations temporaires dans <my-app>/.idea/workspace.xml et regardez sous le nœud <component name="RunManager" ...>. Par exemple :

    <component name="RunManager" selected="Gradle.PlantTest">
    …
    <configuration name="PlantTest" type="AndroidJUnit" factoryName="Android JUnit" nameIsGenerated="true">
          <module name="Sunflower.app" />
          <useClassPathOnly />
          <extension name="coverage">
            <pattern>
              <option name="PATTERN" value="com.google.samples.apps.sunflower.data.*" />
              <option name="ENABLED" value="true" />
            </pattern>
          </extension>
          <option name="PACKAGE_NAME" value="com.google.samples.apps.sunflower.data" />
          <option name="MAIN_CLASS_NAME" value="com.google.samples.apps.sunflower.data.PlantTest" />
          <option name="METHOD_NAME" value="" />
          <option name="TEST_OBJECT" value="class" />
          <option name="PARAMETERS" value="" />
          <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
          <method v="2">
            <option name="Android.Gradle.BeforeRunTask" enabled="true" />
          </method>
        </configuration>
    

Amélioration de l'assistant de mise à niveau pour AGP

L'assistant de mise à niveau du plug-in Android Gradle dispose maintenant d'une fenêtre d'outil persistante avec la liste des étapes qui vont être effectuées. Des informations supplémentaires sont également affichées dans la partie droite de la fenêtre d'outil. Si nécessaire, vous pouvez également choisir une autre version d'AGP pour la mise à niveau. Cliquez sur le bouton Refresh (Actualiser) pour mettre à jour les étapes de mise à jour correspondantes.

Nouvelle fenêtre d&#39;outil persistante dans l&#39;assistant de mise à niveau

Refactorisation pour les classes R non transitives

Vous pouvez utiliser des classes R non transitives avec le plug-in Android Gradle pour créer des builds plus rapides pour les applications comportant plusieurs modules. Cela permet d'éviter la duplication des ressources en garantissant que la classe R de chaque module ne contient que des références à ses propres ressources, sans extraire de références de ses dépendances. Cela permet d'obtenir des builds plus à jour et les avantages qui découlent de l'évitement de la compilation.

Vous pouvez accéder à cette fonctionnalité en accédant à Refactor > Migrate to Non-transitive R Classes (Refactoriser > Migrer vers des classes R non transitives).

Nouveau Background Task Inspector

Vous pouvez visualiser, surveiller et déboguer les nœuds de calcul en arrière-plan de votre application à l'aide du nouveau Background Task Inspector. Pour commencer, déployez votre application sur un appareil exécutant la bibliothèque WorkManager 2.5.0 ou version ultérieure, puis sélectionnez View > Tool Windows > App Inspection (Vue > Fenêtres d'outils > Inspection des applications) dans la barre de menu.

Nœuds de calcul actifs dans Background Task Inspector

Vous pouvez afficher des informations plus détaillées en cliquant sur un nœud de calcul. Par exemple, vous pouvez voir la description du nœud de calcul, la manière dont il a été exécuté, les détails de sa chaîne de nœuds de calcul et le résultat de son exécution.

Onglet Détails du nœud de calcul

Vous pouvez également voir une représentation visuelle d'une chaîne de nœuds de calcul en sélectionnant un nœud de calcul dans la table, puis en cliquant sur Show Graph View (Afficher la vue graphique) dans la barre d'outils. Vous pouvez ensuite sélectionner un nœud de calcul de la chaîne pour afficher ses détails, ou l'arrêter s'il est actuellement en file d'attente ou en cours d'exécution. Pour revenir à la table, cliquez sur Show List View (Afficher la vue sous forme de liste) .

Chaîne de nœuds de calcul de Background Task Inspector

Pour vous aider à enquêter sur les problèmes des nœuds de calcul avec des erreurs d'exécution, vous pouvez arrêter un nœud de calcul en cours d'exécution ou en file d'attente en le sélectionnant dans la table et en cliquant sur Cancel Selected Worker (Annuler le nœud de calcul sélectionné) dans la barre d'outils. Vous pouvez également filtrer les nœuds de calcul de la table en fonction des tags que vous leur avez attribués à l'aide du menu déroulant All tags (Tous les tags).

Mise à jour de l'outil d'inspection de bases de données

L'outil d'inspection de bases de données est maintenant inclus dans la nouvelle fenêtre d'outil Inspection des applications, où se trouve également le nouveau Background Task Inspector. Ouvrez la fenêtre d'outil Inspection des applications à partir de la barre des fenêtres d'outils ou sélectionnez View (Vue) > Tool Windows (Fenêtres d'outil) > App Inspection (Inspection des applications) dans la barre de menu.

Exporter des données à partir de l'outil d'inspection de bases de données

Dans Arctic Fox, vous pouvez facilement exporter des bases de données, des tables et des résultats de requête à partir de l'outil d'inspection de bases de données pour les enregistrer, les partager ou les recréer localement. Lorsque vous ouvrez un projet d'application dans Android Studio et que vous inspectez l'application pour ce projet dans l'outil d'inspection de bases de données, vous pouvez commencer à exporter des données de l'une des manières suivantes :

  • Sélectionnez une base de données ou une table dans le panneau Databases (Bases de données), puis cliquez sur Export to file (Exporter vers un fichier) en haut du panneau.
  • Effectuez un clic droit sur une base de données ou une table dans le panneau Databases (Bases de données), puis sélectionnez Export to file (Exporter vers un fichier) dans le menu contextuel.
  • Lorsque vous inspectez les résultats d'une table ou d'une requête dans un onglet, cliquez sur Export to file (Exporter vers un fichier) au-dessus des résultats de la table ou de la requête.

Après avoir sélectionné une action d'exportation, utilisez la boîte de dialogue Export (Exporter) pour vous guider lors des dernières étapes, comme indiqué ci-dessous. Selon que vous essayez d'exporter une base de données, une table ou des résultats de requête, vous pouvez exporter les données dans un ou plusieurs des formats suivants : DB, SQL ou CSV.

Boîte de dialogue Exporter une base de données

Mise à jour de l'interface utilisateur pour l'enregistrement dans le Profileur de mémoire

Nous avons consolidé l'interface utilisateur du Profileur de mémoire pour différentes activités d'enregistrement, telles que la capture d'une empreinte de la mémoire et l'enregistrement des allocations de mémoire native, de Java et de Kotlin.

Allocations de mémoire affichées dans le Profileur de mémoire

Le Profileur de mémoire propose les options suivantes :

  • Capturer l'empreinte de la mémoire : affichez les objets de votre application qui utilisent la mémoire à un moment précis.
  • Enregistrer des allocations natives : voyez comment chaque objet C/C++ a été alloué sur une période donnée.
  • Enregistrer des allocations Java/Kotlin : voyez comment chaque objet Java/Kotlin a été alloué sur une période donnée.

Pour utiliser ces trois options, procédez comme suit :

  • Pour capturer une empreinte de la mémoire, sélectionnez Capture heap dump (Capturer l'empreinte de la mémoire), puis Record (Enregistrer). Une fois que le profileur a terminé la capture de l'empreinte de la mémoire, l'interface utilisateur du Profileur de mémoire passe à un écran distinct qui affiche l'empreinte de la mémoire.

    Exemple d&#39;empreinte de la mémoire dans le Profileur de mémoire

  • Pour enregistrer des allocations natives sur des appareils exécutant Android 10 ou une version ultérieure, sélectionnez Record native allocations (Enregistrer des allocations natives), puis Save (Enregistrer). L'enregistrement se poursuit jusqu'à ce que vous cliquiez sur Arrêter , après quoi l'interface utilisateur du Profileur de mémoire passe à un écran distinct affichant l'enregistrement natif.

    Sous Android 9 ou une version antérieure, l'option Record native allocations (Enregistrer des allocations natives) n'est pas disponible.

  • Pour enregistrer des allocations Java et Kotlin, sélectionnez Enregistrer des allocations Java/Kotlin, puis Enregistrer. Si l'appareil est équipé d'Android 8 ou version ultérieure, l'UI du Profileur de mémoire passe à un écran distinct affichant l'enregistrement en cours. Vous pouvez interagir avec la mini chronologie située au-dessus de l'enregistrement (par exemple, pour modifier la plage de sélection). Pour terminer l'enregistrement, sélectionnez Arrêter .

    Visualisation des allocations Java dans le Profileur de mémoire

    Sous Android 7.1 ou version antérieure, le Profileur de mémoire utilise l'ancien mode d'enregistrement des allocations et l'affiche dans la chronologie jusqu'à ce que vous cliquiez sur Stop (Arrêter).

Mises à jour pour actualiser le projet C++ associé

Nous avons déplacé les fichiers sans rapport avec la configuration du dossier .cxx/ vers le dossier build/. Les builds CMake C++ nécessitent une phase de configuration qui génère le projet Ninja utilisé pour exécuter les étapes de compilation et d'association. Les projets générés par CMake sont coûteux et sont censés rester propres à Gradle. Pour cette raison, ils sont stockés dans un dossier appelé .cxx/, à côté du dossier build/. En règle générale, le plug-in Android Gradle détecte des modifications de configuration et regénère automatiquement le projet Ninja. Cependant, tous les cas ne sont pas détectés. Lorsque cela se produit, l'option Refresh Linked C++ Project (Actualiser le projet C++ associé) peut être utilisée pour regénérer manuellement le projet Ninja.

Nouvelle matrice de test pour les tests multi-appareils

Les tests d'instrumentation peuvent maintenant être exécutés sur plusieurs appareils en parallèle et peuvent être inspectés à l'aide d'un panneau spécialisé de résultats de test d'instrumentation. Ce panneau vous permet de déterminer si les tests échouent en raison du niveau d'API ou des propriétés matérielles.

Panneau de test d&#39;instrumentation

Tester votre application sur une grande variété de niveaux d'API et de facteurs de forme est l'un des meilleurs moyens de garantir une expérience optimale à tous les utilisateurs de votre application.

Pour profiter de cette fonctionnalité :

  1. Choisissez Sélectionner plusieurs appareils dans le menu déroulant des appareils cibles, en haut au centre de l'IDE.

    Boîte de dialogue &quot;Modifier l&#39;ensemble d&#39;appareils&quot;

  2. Sélectionnez les appareils cibles, puis cliquez sur OK.

    Boîte de dialogue &quot;Modifier l&#39;ensemble d&#39;appareils&quot;

  3. Exécutez vos tests.

Pour afficher les résultats du test dans le panneau Exécuter, accédez à Vue > Fenêtres d'outil > Exécuter.

Le nouveau panneau des résultats de test vous permet de filtrer les résultats par état, appareil et niveau d'API. Vous pouvez également trier chaque colonne en cliquant sur l'en-tête. En cliquant sur un test individuel, vous pouvez afficher les journaux et les informations individuellement pour chaque appareil.

Compatibilité de StateFlow avec la liaison de données

Pour les applications Kotlin qui utilisent des coroutines, vous pouvez maintenant utiliser des objets StateFlow comme source de liaison de données pour informer automatiquement l'UI des modifications apportées aux données. Vos liaisons de données seront sensibles au cycle de vie et ne seront déclenchées que lorsque l'interface utilisateur sera visible à l'écran.

Pour utiliser un objet StateFlow avec votre classe de liaison, vous devez spécifier un propriétaire de cycle de vie pour définir la portée de l'objet StateFlow et, dans votre mise en page, attribuer les propriétés et les méthodes de votre composant ViewModel aux vues correspondantes à l'aide d'expressions de liaison, comme illustré dans l'exemple suivant :

class ViewModel() {
   val username: StateFlow<String>
}
<TextView
    android:id="@+id/name"
    android:text="@{viewmodel.username}" />

Si l'application Kotlin utilise AndroidX, la compatibilité de StateFlow est automatiquement incluse dans les fonctionnalités de liaison de données, y compris les dépendances des coroutines.

Pour en savoir plus, consultez Utiliser des objets de données observables.

Amélioration de l'importation suggérée

Nous avons amélioré le nombre de bibliothèques compatibles avec la fonctionnalité d'importation suggérée et mettons à jour l'index plus souvent. L'importation suggérée vous permet d'importer rapidement et facilement certains artefacts Google Maven dans votre classe et dans votre projet Gradle. Lorsque Android Studio détecte des symboles non résolus de certaines bibliothèques Google, l'IDE suggère d'importer la bibliothèque à la fois dans la classe et dans le projet.

Compatibilité avec le cache de configuration dans Build Analyzer

Build Analyzer détermine à présent si le cache de configuration n'a pas été activé dans un projet et le propose alors comme optimisation. Build Analyzer effectue une évaluation de la compatibilité pour vous informer des problèmes de cache de configuration dans votre projet avant son activation.

Informations sur le cache de configuration dans Build Analyzer

Compatibilité avec les outils Jetpack Compose

Nous proposons à présent une compatibilité supplémentaire pour la prévisualisation et le test des applications qui utilisent Jetpack Compose. Pour bénéficier d'une expérience de développement optimale avec Jetpack Compose, vous devez utiliser la dernière version d'Android Studio Arctic Fox afin de pouvoir bénéficier des fonctionnalités d'éditeur intelligent, telles que les modèles de nouveau projet et la possibilité de prévisualiser immédiatement votre UI Compose.

Aperçu de Compose

Les paramètres suivants des méthodes @Preview sont à présent disponibles :

  • showBackground : activez et désactivez l'arrière-plan de votre aperçu.
  • backgroundColor : définissez une couleur qui n'est utilisée que dans la surface d'aperçu.
  • uiMode : ce nouveau paramètre peut utiliser n'importe quelle constante Configuration.UI_* et vous permet de modifier le comportement de l'aperçu pour, par exemple, le définir sur le mode nuit afin de voir comment le thème réagit.

UI d&#39;aperçu de Compose

Aperçu interactif

Vous pouvez utiliser cette fonctionnalité pour interagir avec vos composants d'UI, cliquer dessus et voir comment l'état change. Elle permet d'obtenir rapidement des commentaires sur les réactions de votre UI et de prévisualiser les animations. Pour l'activer, cliquez sur l'icône interactif . L'aperçu changera de mode.

Pour l'arrêter, cliquez sur Arrêter l'aperçu interactif dans la barre d'outils supérieure.

UI de l&#39;aperçu interactif

Déployer sur un appareil

Vous pouvez utiliser cette fonctionnalité pour déployer un extrait de votre interface utilisateur sur un appareil. Cela permet de tester de petites parties de votre code dans l'appareil sans avoir à démarrer l'application complète.

Cliquez sur l'icône Déployer sur l'appareil  à côté de l'annotation @Preview ou en haut de l'aperçu. Android Studio déploiera @Preview sur votre appareil ou votre émulateur connecté.

Modification en temps réel de littéraux

Nous avons ajouté la Modification en temps réel de littéraux pour aider les développeurs qui utilisent Compose à modifier rapidement des littéraux (chaînes, nombres, booléens) dans leur code et à afficher les résultats immédiatement, sans avoir à attendre la compilation. Cette fonctionnalité a pour objectif de vous aider à accroître votre productivité en permettant aux modifications de code d'apparaître presque instantanément dans les aperçus, l'émulateur ou l'appareil physique.

Modification des nombres et mise à jour immédiate des chaînes dans l&#39;aperçu et sur l&#39;appareil

Compatibilité avec Compose dans l'outil d'inspection de la mise en page

L'outil d'inspection de la mise en page vous permet d'obtenir des informations détaillées sur la mise en page de votre application en cours d'exécution sur votre appareil connecté. Vous pouvez interagir avec votre application et voir les mises à jour en direct dans l'outil pour déboguer rapidement les problèmes qui peuvent survenir.

Vous pouvez inspecter les mises en page écrites avec le nouveau framework d'UI déclaratif d'Android, Jetpack Compose. Que votre application utilise des mises en page entièrement écrites dans Compose ou des mises en page hybrides écrites dans Compose et View, l'outil d'inspection de la mise en page vous aide à comprendre comment vos mises en page s'affichent sur votre appareil en cours d'exécution.

Premiers pas

Pour commencer, déployez votre application sur un appareil connecté, puis ouvrez la fenêtre de l'outil d'inspection de la mise en page en sélectionnant Vue > Fenêtres d'outil > Outil d'inspection de la mise en page. Si l'outil d'inspection de la mise en page ne se connecte pas automatiquement à votre processus d'application, sélectionnez le processus souhaité dans la liste déroulante. La mise en page de votre application devrait bientôt s'afficher dans la fenêtre de l'outil. Pour commencer à inspecter votre mise en page Compose, sélectionnez le composant de mise en page visible dans le rendu ou sélectionnez-le dans l'arborescence des composants.

UI de l&#39;outil d&#39;inspection de la mise en page

La fenêtre Attributs affiche des informations détaillées sur la fonction Compose actuellement sélectionnée. Dans cette fenêtre, vous pouvez inspecter les paramètres de la fonction et leurs valeurs, y compris les modificateurs et les expressions lambda. Pour les expressions lambda, l'outil d'inspection fournit un raccourci pour vous aider à accéder à l'expression dans votre code source.

L'outil d'inspection de la mise en page affiche toutes les fonctions Compose de la pile d'appel qui génèrent des composants pour la mise en page de votre application. Dans de nombreux cas, cela inclut les fonctions Compose appelées en interne par la bibliothèque Compose. Si vous ne souhaitez afficher que les fonctions Compose dans l'arborescence des composants que votre application appelle directement, cliquez sur l'action de filtrage . Cela peut vous aider à réduire le nombre de nœuds affichés dans l'arborescence à ceux que vous voudrez probablement examiner.

Amélioration du menu déroulant de déploiement

Le menu déroulant des appareils fait à présent la distinction entre les différents types d'erreurs dans la configuration d'appareil que vous avez choisie. L'iconographie et les changements stylistiques font maintenant la différence entre les erreurs (sélections d'appareils qui entraînent une configuration défectueuse) et les avertissements (sélections d'appareils pouvant entraîner un comportement inattendu, mais qui sont toujours exécutables).

En outre, Android Studio vous avertit si vous tentez de lancer votre projet sur un appareil auquel une erreur ou un avertissement est associé.

Nouvel assistant d'association Wear OS

Le nouvel assistant d'association Wear OS guide les développeurs pas à pas dans l'association des émulateurs Wear OS à des téléphones physiques ou virtuels directement dans Android Studio. L'assistant peut vous aider à installer la bonne application associée Wear OS sur votre téléphone et à établir la connexion entre les deux appareils. Pour commencer, accédez au menu déroulant des appareils, puis sélectionnez Assistant d'association de l'émulateur Wear OS.

Démonstration de l&#39;assistant d&#39;association Wear OS

Modèle de mise en page responsif

Android Studio Arctic Fox inclut maintenant un nouveau modèle de mise en page qui s'adapte aux différentes dimensions d'affichage et au redimensionnement des applications, comme les téléphones, les pliables, les tablettes et les modes d'écran partagé. Lors de la création d'un projet ou d'un module, sélectionnez le modèle "Activité responsive" pour créer une mise en page avec des composants qui sont redimensionnés de manière dynamique.

Modèle de mise en page responsive sur un petit écran Modèle de mise en page responsive sur un écran moyen Modèle de mise en page responsive sur un grand écran

Pour commencer, accédez à Fichier > Nouveau, sélectionnez Nouveau projet ou Nouveau module, puis sélectionnez le modèle Activité responsive.

Modèle de mise en page responsive dans l&#39;assistant &quot;Nouveau projet&quot;

Accessibility Scanner pour l'éditeur de mise en page

Nous avons intégré le framework de test d'accessibilité Android dans Android Studio pour vous aider à détecter les problèmes d'accessibilité dans vos mises en page. L'outil signale les problèmes d'accessibilité et propose des corrections pour certains problèmes courants (descriptions de contenu manquantes ou faible contraste, par exemple). Pour lancer le panneau, cliquez sur le bouton du rapport d'erreurs  dans l'éditeur de mise en page.

Démonstration d&#39;Accessibility Scanner

Compatibilité avec Apple Silicon

Android Studio et Android Emulator sont désormais compatibles avec les workflows principaux des développeurs lors de l'exécution de l'architecture matérielle Apple Silicon (arm64), y compris les images système des émulateurs correspondantes.

La prise en charge n'est pas encore disponible pour tous les outils de ligne de commande du SDK et du NDK. Vous devrez peut-être utiliser Rosetta 2 sur votre ordinateur pour exécuter certains outils.

Compatibilité avec Apple Silicon

Problèmes connus avec Arctic Fox

Cette section décrit les problèmes connus dans Android Studio Arctic Fox.

Les correctifs ne fonctionnent pas sous Windows pour les versions 3.6 à 4.1

Les correctifs de la plate-forme Windows pour les versions 3.6 à 4.1 pour Android Studio Arctic Fox stable risquent de ne pas fonctionner.

Versions de correctif

Voici les versions de correctif d'Android Studio Arctic Fox.

Android Studio Arctic Fox | 2020.3.1 Correctif 4 (décembre 2021)

Cette mise à jour mineure inclut les corrections de bugs suivantes :

  • Plug-in Android Gradle
    • Définir un Provider pour VariantOutput.version peut perturber le cache de configuration
    • gradeResValues.xml non mis à jour lors de la signature de la version
  • D8/R8
    • java.lang.ClassCastException introduit dans le constructeur de la classe dans le build réduit par R8
    • Ajustement de type inaccessible lors de la fusion de dex
    • java.lang.VerifyError : l'outil de vérification a échoué, car le champ de l'instance n'est pas accessible depuis l'objet de type Reference.java.lang.Object
  • lint
    • Désactiver la vérification lint MediaCapabilities
    • Lint signale l'erreur faux positif [Instantiable] lorsque shrinkResources est activé
  • Modèles
    • Option Importer le module grisée

Pour en savoir plus, consultez l'article de blog 2020.3.1 Correctif 4.

Android Studio Arctic Fox | 2020.3.1 Correctif 3 (octobre 2021)

Cette mise à jour mineure inclut les corrections de bugs suivantes :

  • Plug-in Android Gradle
    • Le plug-in autonome lint ne gère pas correctement la dépendance gradleApi()
    • Compilation JPS déclenchée pendant que la compilation Gradle s'exécute en dehors de Studio
    • L'activation de KSP et de Kapt dans un projet où les deux contiennent des processeurs qui génèrent des sources endommage BundleLibraryClassesInputs
  • Éditeur C++
    • L'interface utilisateur se fige en raison d'un long calcul de JniReferencesSearch en arrière-plan
  • Outil d'inspection de bases de données
    • Autoriser l'enregistrement des bases de données
    • Impossible d'exporter des données à l'aide de l'inspection d'applications/de l'outil d'inspection de bases de données avec un espace vide dans le chemin
  • Dexer (D8)
    • Les lambdas Java entraînent un comportement inattendu lors du sous-classement des sous-classes
  • Réducteur (R8)
    • Erreur Cannot constrain type lors de la minimisation de r8
    • Problème lors de l'exécution de R8 3.0.69 (depuis AGP 7.0.2) et 3.0.72

Pour en savoir plus, consultez l'article de blog 2020.3.1 Correctif 3.

Android Studio Arctic Fox | 2020.3.1 Correctif 2 (septembre 2021)

Cette mise à jour mineure inclut les corrections de bugs suivantes :

  • Plug-in Android Gradle
    • La synchronisation de Gradle a été lancée 10 fois lors la mise à niveau d'AS Arctic Fox Canary 7 vers Canary 8.
    • Désucrage et compilations reproductibles
  • C++ Build
    • Le plug-in Android Gradle 7.0.0 n'inclut pas jniLibs dans l'APK si la fermeture de tasks.whenTaskAdded est utilisée.
  • Édition
    • MergedManifestRefreshListener est bloqué dans une boucle infinie dans Arctic Fox.
  • lint
    • La "vérification lint pour les vérifications lint" n'est pas en cours d'exécution.
  • Réducteur (R8)
    • ClassNotFoundException lors de l'exécution de la compilation avec R8 dans AGP7

Pour en savoir plus, consultez l'article de blog 2020.3.1 Correctif 2.

Android Studio Arctic Fox | 2020.3.1 Correctif 1 (août 2021)

Cette mise à jour inclut des correctifs pour les problèmes suivants :

  • Plug-in Android Gradle
    • TypedefRemover utilise ASM5 et n'est pas compatible avec les sources JDK 11 qui nécessitent ASM7
    • Certains nouveaux blocs DSL ne peuvent pas être utilisés depuis Groovy DSL dans AGP 7.0.0
    • La version stable d'AGP 7.0.0 génère une ExternalApiUsageException sur libraryVariants.all{applicationId}
  • Débogueur C++
    • Erreur AS Arctic Fox lors du démarrage de la session de débogage native sur Mac M1, "Configuration LLDB défectueuse trouvée"
  • Resource Manager
    • (Windows) Nouveau > Élément vectoriel > picture.svg : caractère "moins" non valide dans le XML généré
  • Réducteur (R8)
    • NPE dans BridgeHoisting
    • Après la mise à niveau vers la version 7.0.0, R8 plante avec l'erreur "Utilisation inattendue dans la méthode après l'intégration"

Pour en savoir plus, consultez l'article de blog 2020.3.1 Correctif 1.