Complemento de Android para Gradle 7.2.0 (mayo de 2022)

El complemento de Android para Gradle 7.2.0 es una actualización importante que incluye una variedad de nuevas funciones y mejoras.

7.2.2 (agosto de 2022)

Esta actualización menor corresponde a la versión de Parche Chipmunk 2 de Android Studio, que incluye las siguientes correcciones de errores:

  • Error #232438924: La versión 7.2 de AndroidGradlePlugin interrumpe la API de transformación cuando se usa junto con la API de ASM
  • Error #231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
7.2.1 (mayo de 2022)

Esta actualización menor corresponde a la versión de Parche Chipmunk 1 de Android Studio y se incluyen las siguientes correcciones de errores:

  • Error #230361284: bundletool no empaqueta correctamente los perfiles del modelo de referencia.

Para ver las otras correcciones de errores que se incluyen en esta versión, consulta las notas de la versión del Parche Chipmunk 1 de Android Studio.

Compatibilidad

Versión mínima Versión predeterminada
Gradle 7.3.3 7.3.3
Herramientas de desarrollo del SDK 30.0.3 30.0.3
NDK N/A 21.4.7075529
JDK 11 11

Advertencia de Jetifier y comprobación en Build Analyzer

Ahora, Build Analyzer muestra una advertencia si el archivo gradle.properties de tu proyecto incluye android.enableJetifier=true. Esta marca se introdujo en una versión anterior de Android Studio para habilitar AndroidX para las bibliotecas que no lo admiten de forma nativa. Sin embargo, el ecosistema de la biblioteca se trasladó principalmente para admitir AndroidX de forma nativa, y es probable que tu proyecto ya no necesite la marca de Jetifier. Además, la marca puede ralentizar el rendimiento de compilación. Si ves esta advertencia, puedes ejecutar una verificación dentro de Build Analyzer para confirmar si se puede quitar la marca.

Compatibilidad con dispositivos de prueba

A partir de Android Studio Chipmunk beta 1, Android Studio es compatible con dispositivos de prueba Android y Java. Consulta la guía de Gradle sobre cómo usar dispositivos de prueba{:.external} para obtener más información sobre esta función y cómo usarla en un proyecto de Java.

Para habilitar los dispositivos de prueba en el módulo de biblioteca de Android, agrega lo siguiente al archivo build.gradle en el nivel de la biblioteca:

android {
  testFixtures {
    enable true
    // enable testFixtures's android resources (disabled by default)
    // androidResources true
  }
}

De forma predeterminada, cuando se publica la biblioteca, también se publica el AAR de los dispositivos de prueba con la biblioteca principal. El archivo de metadatos del módulo de Gradle contendrá información para que Gradle pueda consumir el artefacto correcto cuando se solicite el componente testFixtures.

Para inhabilitar la publicación del AAR de los dispositivos de prueba de una biblioteca en la variante de lanzamiento, agrega lo siguiente a tu archivo build.gradle en el nivel de la biblioteca:

afterEvaluate {
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}

Para consumir el AAR del dispositivo de prueba de una biblioteca de Android publicada, puedes usar el método de ayuda testFixtures() de Gradle.

dependencies {
  testImplementation testFixtures('com.example.company:publishedLib:1.0')
}

De forma predeterminada, lint analizará las fuentes de los dispositivos de prueba. Puedes configurar lint para que ignore las fuentes de los dispositivos de prueba de la siguiente manera:

android {
  lint {
    ignoreTestFixturesSources true
  }
}

No se admiten raíces de contenido duplicadas

A partir de AGP 7.2, ya no puedes compartir el mismo directorio del código fuente en varios conjuntos de orígenes. Por ejemplo, no puedes usar las mismas fuentes de prueba para las pruebas de unidades y de instrumentación. Para obtener más información, consulta Cómo cambiar la configuración predeterminada de los conjuntos de orígenes.