Android Studio Arctic Fox | 2020.3.1 (julio de 2021)

Android Studio Arctic Fox es una actualización importante que incluye una variedad de funciones y mejoras nuevas.

Numeración actualizada de la versión

Numeración actualizada de las versiones de Android Studio

Cambiamos el sistema de numeración de las versiones de Android Studio para que se alinee más con IntelliJ IDEA, el IDE en el que se basa Android Studio.

En el sistema de numeración anterior, esta versión se habría numerado como Android Studio 4.3 o versión 4.3.0.1. Con el nuevo sistema de numeración, ahora es Android Studio - Arctic Fox | 2020.3.1 o versión 2020.3.1.

Versión de IntelliJ Nombre anterior Anterior: Sistema de números Nuevo: Sistema de años Nombre nuevo de la versión
2020.3 4.3 4.3.0 2020.3.1 Arctic Fox | 2020.3.1

En el futuro, el número de versión de Android Studio se determinará de la siguiente manera:

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

  • Los primeros dos grupos de números representan la versión de la plataforma IntelliJ en la que se basa la versión de Android Studio en cuestión. En este caso, se trata de la versión 2020.3.
  • El tercer grupo de números representa la versión principal de Studio, que comienza en 1 y se incrementa en una unidad con cada versión principal que se anuncia.
  • El cuarto grupo de números representa la versión de Studio secundaria o de parche, que comienza en 1 y se incrementa en una unidad con cada versión secundaria que se anuncia.
  • También se le dará un nombre de versión a cada versión principal, el que corresponderá al nombre de un animal, cuya primera letra irá desde la A hasta la Z conforme se anuncien versiones nuevas. Esta versión se llama Arctic Fox.

Numeración actualizada de las versiones del complemento de Android para Gradle

Cambiamos la numeración de las versiones del complemento de Android para Gradle (AGP) a fin de que coincida mejor con la herramienta de compilación subyacente de Gradle. Por lo tanto, la versión posterior a AGP 4.2 será AGP 7.0.

Para obtener más información, consulta Cambios en el control de versiones en las notas de la versión de AGP.

Complemento de Android para Gradle 7.0.0

La versión más reciente del complemento de Android para Gradle incluye muchas actualizaciones. Para obtener más información, consulta las notas de la versión del complemento de Android para Gradle.

Las pruebas de unidades ahora usan el ejecutor de prueba de Gradle

A fin de mejorar la coherencia general de las ejecuciones de prueba, Android Studio ahora usa Gradle para ejecutar todas las pruebas de unidades de forma predeterminada. En muchos casos, este cambio no afectará tu flujo de trabajo de pruebas en el IDE.

Por ejemplo, si haces clic en el comando Run del menú contextual (visible si haces clic con el botón derecho en una clase de prueba) o en la acción del margen correspondiente , Android Studio usará la configuración de ejecución de Gradle de forma predeterminada para ejecutar pruebas de unidades.

Menú contextual para ejecutar pruebas

Sin embargo, Android Studio ya no reconoce las configuraciones de ejecución existentes de Android JUnit, por lo que deberás migrar a las de Gradle aquellas que quieras guardar como archivos de proyecto.

Para crear una configuración de prueba de Gradle, selecciona la plantilla de Gradle cuando sigas las instrucciones de Cómo crear una configuración de ejecución y depuración nueva. Una vez que hayas creado una configuración nueva, aparecerá en el diálogo Edit Configurations dentro de la sección de Gradle:

Cómo editar configuraciones de prueba en Android Studio

Si quieres inspeccionar las configuraciones de Android JUnit que ya no se reconocen, puedes realizar una de estas dos acciones:

  • Abre en un editor de texto las configuraciones guardadas manualmente. El usuario especificará la ubicación de estos archivos, pero estos suelen aparecer en <my-app>/.idea/runConfigurations/.
  • Busca las configuraciones temporales en <my-app>/.idea/workspace.xml y observa el nodo <component name="RunManager" ...>. Por ejemplo:

    <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>
    

Asistente de actualización mejorado del AGP

El Asistente de actualización del complemento de Android para Gradle ahora tiene una ventana de herramientas persistente con la lista de pasos que se completarán. En el lado derecho de la ventana de herramientas, también se incluye información adicional. Si es necesario, también puedes elegir una versión diferente de AGP para actualizar. Si haces clic en el botón Refresh, se actualizan los pasos de la actualización correspondiente.

Nueva ventana de herramientas persistente en el asistente de actualización

Refactorización de clases R no transitivas

Puedes usar clases R no transitivas con el complemento de Android para Gradle a fin de compilar compilaciones más rápidas para apps con varios módulos. Esto ayuda a evitar la duplicación de recursos, ya que garantiza que la clase R de cada módulo solo contenga referencias a sus propios recursos, sin extraer referencias de sus dependencias. Esto genera compilaciones más actualizadas y los beneficios correspondientes de evitar la compilación.

Puedes acceder a esta función desde Refactor > Migrate to Non-transitive R Classes.

Nuevo Inspector de tareas en segundo plano

Puedes visualizar, supervisar y depurar los trabajadores en segundo plano de tu app con el nuevo Inspector de tareas en segundo plano. Para comenzar, implementa tu app en un dispositivo con la biblioteca de WorkManager 2.5.0 o superior, y selecciona View >Tool Windows >App Inspection en la barra de menú.

Trabajadores activos en el Inspector de tareas en segundo plano

Para ver información más detallada, haz clic en un trabajador. Por ejemplo, puedes ver la descripción del trabajador, la manera en que se ejecutó, los detalles de su cadena y el resultado de su ejecución.

Pestaña de detalles del trabajador

Si deseas ver una representación visual de una cadena de trabajadores, selecciona un trabajador de la tabla y haz clic en Show Graph View en la barra de herramientas. Luego, puedes seleccionar cualquier trabajador de la cadena a fin de ver su información, o bien detenerlo si está en cola o en ejecución. Para volver a la tabla, haz clic en Show List View .

Cadena de trabajadores del Inspector de tareas en segundo plano

Para investigar los problemas de los trabajadores con errores de ejecución, puedes detener un trabajador que esté en ejecución o en cola seleccionándolo en la tabla y haciendo clic en Cancel Selected Worker  en la barra de herramientas. También puedes filtrar los trabajadores de la tabla según las etiquetas que les hayas asignado por medio del menú desplegable All tags.

Actualizaciones del Inspector de bases de datos

El Inspector de bases de datos ahora se incluye en la nueva ventana de herramientas App Inspection, donde también puedes encontrar el nuevo Inspector de tareas en segundo plano. Abre la ventana de herramientas App Inspection desde la barra de la ventana de herramientas o selecciona View > Tool Windows > App Inspection de la barra de menú.

Cómo exportar datos desde el Inspector de bases de datos

En Artic Fox, puedes exportar fácilmente bases de datos, tablas y resultados de consultas desde el Inspector de bases de datos para guardar, compartir o volver a crear de manera local. Cuando abres un proyecto de app en Android Studio e inspeccionas la app para ese proyecto en el Inspector de bases de datos, puedes comenzar a exportar datos de una de las siguientes maneras:

  • Selecciona una base de datos o una tabla en el panel Databases y haz clic en Export to file cerca de la parte superior del panel.
  • Haz clic con el botón derecho en una base de datos o una tabla en el panel Databases y selecciona Export to file en el menú contextual.
  • Cuando inspecciones una tabla o resultados de consultas en una pestaña, haz clic en Export to file sobre la tabla o los resultados de una consulta.

Después de seleccionar una acción de exportación, usa el diálogo Export para obtener ayuda con los pasos finales, como se muestra a continuación. En función de si intentas exportar una base de datos, una tabla o los resultados de una consulta, tienes la opción de exportar los datos en uno o más de los siguientes formatos: DB, SQL o CSV.

Cuadro de diálogo Export Database

IU actualizada para la grabación en el Generador de perfiles de memoria

Consolidamos la interfaz de usuario (IU) del Generador de perfiles de memoria para diferentes actividades de grabación, como la captura de un volcado de montón y la grabación de asignaciones de memoria nativas, de Java y de Kotlin.

Asignaciones de memoria que se muestran en el Generador de perfiles de memoria

El Generador de perfiles de memoria proporciona las siguientes opciones:

  • Capturar el volcado del montón: Visualiza los objetos de la app que usan memoria en un momento específico.
  • Grabar asignaciones nativas: Muestra cómo se asignó cada objeto de C/C++ durante un período.
  • Grabar asignaciones de Java/Kotlin: Consulta cómo se asignó cada objeto Java/Kotlin durante un período.

A continuación, te indicamos cómo utilizar estas tres opciones:

  • Para capturar un volcado de montón, selecciona Capture heap dump y, luego, Record. Una vez que el generador de perfiles termina de capturar el volcado de montón, la IU del Generador de perfiles de memoria realiza la transición a otra pantalla en la que se muestra el volcado de montón.

    Volcado de montón de ejemplo en el Generador de perfiles de memoria

  • Para registrar asignaciones nativas en dispositivos con Android 10 y versiones posteriores, selecciona Record native allocations y, luego, Record. La grabación continúa hasta que haces clic en Stop , después de lo cual la IU del Generador de perfiles de memoria realiza la transición a otra pantalla, en la cual se muestra la grabación nativa.

    En Android 9 y versiones anteriores, no está disponible la opción Record native allocations.

  • Para grabar asignaciones de Java y Kotlin, selecciona Record Java / Kotlin allocations y, luego, Record. Si el dispositivo tiene instalado Android 8 o una versión posterior, la IU del Generador de perfiles de memoria realizará la transición a otra pantalla, en la cual se mostrará la grabación en curso. Puedes interactuar con el cronograma en miniatura sobre la grabación (por ejemplo, para cambiar el rango de selección). Para terminar la grabación, selecciona Stop .

    Visualización de asignaciones de Java en el Generador de perfiles de memoria

    En Android 7.1 y versiones anteriores, el Generador de perfiles de memoria usa el registro de asignación heredado, que muestra el registro en el cronograma hasta que haces clic en Stop.

Actualizaciones del proyecto de C++ vinculado

Trasladamos los archivos no relacionados con la configuración de la carpeta .cxx/ a la carpeta build/. Las compilaciones de CMake C++ requieren una fase de configuración que genera el proyecto de Ninja que se usa para ejecutar los pasos de compilación y vinculación. Los proyectos generados por CMake son costosos y se espera que se conserven en limpio en Gradle. Por este motivo, se almacenan en una carpeta llamada .cxx/, junto a la carpeta build/. Por lo general, el complemento de Android para Gradle detectará cambios de configuración y volverá a generar automáticamente el proyecto de Ninja. Sin embargo, no todos los casos se pueden detectar. Cuando esto sucede, la opción "Refresh Linked C++ Project" se puede usar para regenerar manualmente el proyecto de Ninja.

Nueva matriz para pruebas multidispositivo

Las pruebas de instrumentación ahora se pueden ejecutar en varios dispositivos en paralelo y se pueden investigar mediante un panel especializado de resultados de prueba de instrumentación. Con este panel, puedes determinar si las pruebas fallan debido al nivel de API o debido a las propiedades de hardware.

Panel de prueba de instrumentación

Probar tu app en una amplia variedad de niveles de API y factores de forma es una de las mejores maneras de garantizar que todos los usuarios tengan una excelente experiencia cuando usen tu app.

Para aprovechar esta función, realiza lo siguiente:

  1. Elige Select Multiple Devices en el menú desplegable de dispositivos de destino (desde la parte superior central del IDE).

    Diálogo Modify Device Set

  2. Selecciona los dispositivos de destino y haz clic en OK.

    Diálogo Modify Device Set

  3. Ejecuta las pruebas.

Para ver los resultados de la prueba en el panel Run, ve a View > Tool Windows > Run.

El nuevo panel de resultados de la prueba te permite filtrar los resultados por estado, dispositivo y nivel de API. Además, puedes ordenar cada columna haciendo clic en el encabezado. Si haces clic en una prueba individual, podrás ver los registros y la información del dispositivo de forma individual para cada dispositivo.

Compatibilidad de StateFlow en la vinculación de datos

En el caso de las apps de Kotlin que usan corrutinas, ahora puedes usar objetos StateFlow como fuente de vinculación de datos para notificar automáticamente a la IU sobre cambios en los datos. Tus vinculaciones de datos serán compatibles con el ciclo de vida y solo se activarán cuando la IU sea visible en la pantalla.

Para usar un objeto StateFlow con tu clase de vinculación, debes especificar un propietario del ciclo de vida a fin de definir el alcance del objeto StateFlow y, en tu diseño, asignar las propiedades y los métodos de tu componente de ViewModel a las vistas correspondientes mediante expresiones de vinculación, como se muestra en el siguiente ejemplo:

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

Si la app de Kotlin usa AndroidX, la compatibilidad con StateFlow se incluye automáticamente en las funciones de vinculación de datos, incluidas las dependencias de corrutinas.

Para obtener más información, consulta Cómo trabajar con objetos de datos observables.

Sugerencia de importación mejorada

Mejoramos la cantidad de bibliotecas que admite la función de sugerencia de importación y actualizamos el índice con mayor frecuencia. La sugerencia de importación te ayuda a importar de manera rápida y sencilla ciertos artefactos de Maven de Google a la clase y el proyecto de Gradle. Cuando Android Studio detecta símbolos sin resolver de ciertas bibliotecas de Google, el IDE sugiere importar la biblioteca a la clase y al proyecto.

Compatibilidad con la caché de configuración en Build Analyzer

Ahora, Build Analyzer identifica cuándo un proyecto no tiene habilitada la caché de configuración y la ofrece como optimización. Build Analyzer ejecuta una evaluación de compatibilidad para informarte si hay algún problema con la caché de configuración en tu proyecto antes de que se habilite.

Información sobre la caché de configuración en Build Analyzer

Compatibilidad con las herramientas de Jetpack Compose

Ahora ofrecemos asistencia adicional para la vista previa y la prueba de apps que usan Jetpack Compose. A fin de obtener la mejor experiencia de desarrollo con Jetpack Compose, debes usar la versión más reciente de Android Studio Arctic Fox para que puedas aprovechar las funciones de editor inteligente, como las plantillas de proyecto nuevo y la capacidad de obtener de inmediato una vista previa de la IU de Compose.

Vista previa de Compose

Los siguientes parámetros de los métodos @Preview ahora están disponibles:

  • showBackground: Activa y desactiva un fondo para tu vista previa.
  • backgroundColor: Establece un color que solo se use en la superficie de vista previa.
  • uiMode: Este nuevo parámetro puede tomar cualquiera de las constantes Configuration.UI_*, y te permite cambiar el comportamiento de la vista previa, por ejemplo, para configurarlo en Modo nocturno a fin de ver cómo reacciona el tema.

IU de la vista previa de Compose

Vista previa interactiva

Puedes usar esta función para interactuar con los componentes de la IU, hacer clic en ellos y ver cómo cambia el estado. Es una forma rápida de obtener comentarios sobre cómo reacciona tu IU y obtener una vista previa de las animaciones. Para habilitarla, haz clic en el ícono interactivo y la vista previa cambiará de modo.

Para detenerla, haz clic en Stop Interactive Preview en la barra de herramientas superior.

IU de vista previa interactiva

Cómo implementar en el dispositivo

Puedes usar esta función para implementar un fragmento de tu IU en un dispositivo. Esto ayuda a probar pequeñas partes de tu código en el dispositivo sin tener que iniciar la app completa.

Haz clic en el ícono Deploy to Device junto a la anotación @Preview o en la parte superior de la vista previa. Android Studio implementará @Preview en tu dispositivo o emulador conectado.

Ediciones en vivo de literales

Agregamos las Ediciones en vivo de literales para ayudar a los desarrolladores que usan Compose a editar literales (cadenas, números y booleanos) rápidamente en el código y ver los resultados de inmediato, sin tener que esperar la compilación. El objetivo de esta función es ayudar a aumentar tu productividad, ya que los cambios de código aparecen casi instantáneamente en las vistas previas, el emulador o el dispositivo físico.

La edición del número y la cadena se actualizan inmediatamente en la vista previa y en el dispositivo.

Compatibilidad con Compose en el Inspector de diseño

El Inspector de diseño te permite ver información detallada sobre el diseño de tu app que se ejecuta en tu dispositivo conectado. Puedes interactuar con la app y ver actualizaciones en tiempo real en la herramienta para depurar rápidamente los problemas que puedan surgir.

Puedes inspeccionar diseños escritos con el nuevo framework de IU declarativo de Android, Jetpack Compose. Ya sea que tu app use diseños completamente escritos en Compose o diseños híbridos escritos en Compose y View, el Inspector de diseño te ayudará a comprender cómo se procesan los diseños en tu dispositivo en ejecución.

Comenzar

Para comenzar, implementa tu app en un dispositivo conectado y, luego, abre la ventana del Inspector de diseño. Para ello, selecciona View > Tool Windows > Layout Inspector. Si el Inspector de diseño no se conecta automáticamente al proceso de tu app, selecciona el proceso deseado en el menú desplegable del proceso. Pronto deberías ver el diseño de tu app en la ventana de herramientas. Para comenzar a inspeccionar tu diseño de Compose, selecciona el componente de diseño visible en el procesamiento o selecciónalo en Component Tree.

IU del Inspector de diseño

En la ventana Attributes, se muestra información detallada sobre la función Compose que está seleccionada actualmente. En esta ventana, puedes inspeccionar los parámetros de la función y sus valores, incluidos los modificadores y las expresiones lambda. En el caso de las expresiones lambda, el inspector proporciona un acceso directo para ayudarte a navegar hasta la expresión en tu código fuente.

El Inspector de diseño muestra todas las funciones de Compose en la pila de llamadas que emiten componentes al diseño de tu app. En muchos casos, esto incluye las funciones de Compose a las que la biblioteca de Compose llama de forma interna. Si solo quieres ver las funciones de Compose en el Component Tree a las que llama tu app directamente, haz clic en la acción del filtro, lo que podría ayudarte a reducir la cantidad de nodos que se muestran en el árbol para ver solamente los que quizá desees inspeccionar.

Menú desplegable de implementación mejorado

El menú desplegable del dispositivo ahora distingue entre diferentes tipos de errores incluidos en la configuración que elegiste para el dispositivo. La iconografía y los cambios estilísticos ahora diferencian entre errores (selecciones de dispositivos que den como resultado una configuración dañada) y advertencias (selecciones del dispositivo que pueden dar como resultado un comportamiento inesperado, pero aún se pueden ejecutar).

Además, Android Studio te advertirá si intentas iniciar el proyecto en un dispositivo que tenga un error o una advertencia asociados.

Nuevo asistente de vinculación de Wear OS

El nuevo asistente de vinculación de Wear OS guía paso a paso a los desarrolladores en la vinculación de emuladores de Wear OS con teléfonos físicos o virtuales, directamente en Android Studio. El asistente puede ayudarte a instalar la app complementaria de Wear OS en el teléfono y a establecer una conexión entre ambos dispositivos. Para comenzar, ve al menú desplegable del dispositivo > Wear OS Emulator Pairing Assistant.

Demostración del asistente de sincronización de Wear OS

Plantilla de diseño responsivo

Android Studio Arctic Fox ahora incluye una nueva plantilla de diseño que se adapta a varias dimensiones de pantalla y cambios de tamaño de la app, como teléfonos, dispositivos plegables, tablets y modos de pantalla dividida. Cuando crees un proyecto o módulo nuevo, selecciona la plantilla "Response Activity" para crear un diseño con componentes que cambien de tamaño de forma dinámica.

Plantilla de diseño responsivo en pantallas pequeñas Plantilla de diseño responsivo en la mitad de la pantalla Plantilla de diseño responsivo en pantallas grandes

Para comenzar, navega a File > New; selecciona New Project o New Module; y, luego, la plantilla Responsive Activity.

Plantilla de diseño responsivo en el nuevo asistente de proyectos

Prueba de accesibilidad para el Editor de diseño

Integramos el framework de prueba de accesibilidad de Android en Android Studio para ayudarte a encontrar problemas de accesibilidad en tus diseños. La herramienta informa problemas relacionados con la accesibilidad y ofrece soluciones sugeridas para algunos problemas comunes, como descripciones de contenido faltantes o bajo contraste. Para iniciar el panel, haz clic en el botón de informe de errores en el editor de diseño.

Demostración de la Prueba de accesibilidad

Compatibilidad con Apple Silicon

Android Studio y Android Emulator ahora contienen asistencia inicial para flujos de trabajo principales de desarrolladores cuando se ejecuta la arquitectura de hardware de Apple Silicon (arm64), incluidas las imágenes del sistema del emulador correspondientes.

Todavía no se admite la compatibilidad con todas las herramientas de línea de comandos del SDK y del NDK. Es posible que tengas que ejecutar Rosetta 2 en tu máquina para ejecutar algunas herramientas.

Compatibilidad con Apple Silicon

Problemas conocidos de Arctic Fox

En esta sección, se describen los problemas conocidos de Android Studio Arctic Fox.

Los parches no funcionan en Windows para v3.6-v4.1

Es posible que no funcionen los parches en la plataforma Windows de la versión 3.6 a la versión 4.1 para Android Studio Arctic Fox estable.

Actualizaciones de parches

Las siguientes son versiones de parche en Android Studio Arctic Fox.

Android Studio Arctic Fox | Parche 4 2020.3.1 (diciembre de 2021)

Esta actualización menor incluye las siguientes correcciones de errores:

  • Complemento de Android para Gradle
    • La configuración de un Provider para VariantOutput.version puede fallar con la caché de configuración.
    • No se actualizó gradeResValues.xml cuando se firmó la versión.
  • D8/R8
    • Se arroja java.lang.ClassCastException en el constructor de la clase, en la compilación reducida por R8.
    • No se puede acceder al ajuste de tipo durante la fusión de DEX.
    • java.lang.VerifyError: No se pudo verificar el verificador porque no se puede acceder al campo de la instancia desde el objeto de tipo Reference.java.lang.Object.
  • Lint
    • Se inhabilitó la comprobación de lint MediaCapabilities.
    • Lint informa un error falso positivo (que admite creación de instancia) cuando shrinkResources está habilitado.
  • Plantillas
    • La opción Importar Módulo está inhabilitada.

Para obtener más información, consulta la entrada de blog del Parche 4 2020.3.1.

Android Studio Arctic Fox | Parche 3 2020.3.1 (octubre de 2021)

Esta actualización menor incluye las siguientes correcciones de errores:

  • Complemento de Android para Gradle
    • El complemento independiente de lint no controla la dependencia gradleApi() de forma correcta.
    • La compilación de JPS se activaba mientras la compilación de Gradle se ejecutaba fuera de Studio.
    • Habilitar tanto KSP como Kapt en un proyecto con ambos procesadores que generaban fuentes rompía BundleLibraryClassesInputs. BundleLibraryClassesInputs
  • Editor de C++
    • La IU se bloquea debido a un largo cálculo de JniReferencesSearch en segundo plano.
  • Inspector de bases de datos
    • No se podían guardar bases de datos.
    • No se podían exportar datos usando la Inspección de apps o el Inspector de bases de datos con espacio en blanco en la ruta.
  • Dexer (D8)
    • Las lambdas de Java causaban un comportamiento inesperado cuando se creaban subclases de subclases.
  • Reductor (R8)
    • Se producía un error de Cannot constrain type durante la reducción de r8.
    • Se generaba un problema al ejecutar R8 3.0.69 (de AGP 7.0.2) y 3.0.72.

Para obtener más información, consulta la entrada de blog del parche 3 2020.3.1.

Android Studio Arctic Fox | Parche 2 2020.3.1 (septiembre de 2021)

Esta actualización menor incluye las siguientes correcciones de errores:

  • Complemento de Android para Gradle
    • La sincronización de Gradle se lanzó 10 veces en la actualización de AS Arctic Fox Canary 7 a Canary 8
    • Expansión de sintaxis y compilaciones reproducibles
  • Compilación de C++
    • El complemento de Android para Gradle 7.0.0 no incluye jniLibs en el APK si se usa el cierre de tasks.whenTaskAdded
  • Edición
    • MergedManifestRefreshListener se bloquea en un bucle infinito en Arctic Fox
  • Lint
    • La "comprobación de lint para comprobaciones de lint" no se ejecuta
  • Reductor (R8)
    • ClassNotFoundException cuando se ejecutó la compilación con R8 en AGP7

Para obtener más información, consulta la entrada de blog del parche 2 de 2020.3.1.

Android Studio Arctic Fox | Parche 1 2020.3.1 (agosto de 2021)

Esta actualización incluye soluciones para los siguientes problemas:

  • Complemento de Android para Gradle
    • TypedefRemover usa ASM5 y no es compatible con fuentes de JDK 11 que requieren ASM7
    • No se pueden usar algunos bloques de DSL nuevos de Groovy DSL en AGP 7.0.0
    • La versión estable de AGP 7.0.0 genera una ExternalApiUsageException en libraryVariants.all{applicationId}
  • Depurador C++
    • Error de AS Arctic Fox durante el inicio de la sesión de depuración nativa en Mac M1, "Se encontró una configuración de LLDB dañada"
  • Resource Manager
    • (Windows) Nuevo > Elemento vectorial > picture.svg: carácter "menos" no válido en el xml
  • Reductor (R8)
    • NPE en BridgeHoisting
    • Después de la actualización a 7.0.0, R8 falla y se muestra el error "Uso inesperado en el método después de la intercalación".

Para obtener más información, consulta la entrada de blog del parche 1 2020.3.1.