Plug-in do Android para Gradle 7.2.0 (maio de 2022)

O Plug-in do Android para Gradle 7.2.0 é uma versão principal que inclui vários novos recursos e melhorias.

7.2.2 (agosto de 2022)

Esta atualização secundária corresponde ao lançamento do Android Studio Chipmunk Patch 2 e inclui as correções de bugs abaixo:

  • Problema 232438924: o AndroidGradlePlugin versão 7.2 interrompe a API de transformação quando usado com a API ASM
  • Problema 231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors: shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
7.2.1 (maio de 2022)

Esta atualização secundária corresponde ao lançamento do Android Studio Chipmunk Patch 1 e inclui as correções de bugs abaixo:

Para conferir as outras correções de bugs incluídas nesta versão, consulte as notas da versão do Android Studio Chipmunk Patch 1.

Compatibilidade

Versão mínima Versão padrão
Gradle 7.3.3 7.3.3
Ferramentas de build do SDK 30.0.3 30.0.3
NDK N/A 21.4.7075529
JDK 11 11

Aviso e análise do Jetifier do Build Analyzer

O Build Analyzer agora mostra um aviso se o arquivo gradle.properties do projeto inclui android.enableJetifier=true. Essa flag foi introduzida em uma versão anterior do Android Studio para ativar o AndroidX em bibliotecas que não oferecem suporte a ele. No entanto, o ecossistema das bibliotecas passou a oferecer suporte ao AndroidX de forma nativa, e a flag Jetifier provavelmente não é mais necessária para o projeto. A sinalização também pode deixar a performance do build mais lenta. Se esse aviso aparecer, você pode executar uma verificação no Build Analyzer para confirmar se a flag pode ser removida.

Suporte aos recursos de teste

A partir do Android Studio Chipmunk Beta 1, o Android Studio oferece suporte a recursos de teste para Android e Java. Para mais informações, consulte o guia do Gradle sobre como usar os recursos de teste{:.external} e como usá-los em um projeto Java.

Para ativar os recursos de teste no módulo da biblioteca Android, adicione o código abaixo ao arquivo build.gradle no nível da biblioteca:

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

Por padrão, a publicação da biblioteca também publica as AARs dos recursos de teste com a biblioteca principal. O arquivo de metadados do módulo do Gradle vai conter informações para que o Gradle possa consumir o artefato certo ao solicitar o componente testFixtures.

Para desativar a publicação dos recursos da AAR de uma biblioteca na variante de lançamento, adicione o código abaixo ao arquivo build.gradle no nível da biblioteca:

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

Para consumir as AARs dos recursos de teste de uma biblioteca Android publicada, use o método auxiliar testFixtures() do Gradle.

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

Por padrão, o lint vai analisar as fontes dos recursos de teste. Você pode configurar o lint para ignorar as fontes dos recursos de teste da seguinte maneira:

android {
  lint {
    ignoreTestFixturesSources true
  }
}

Não há suporte para raízes de conteúdo duplicado

A partir do AGP 7.2, não é mais possível compartilhar o mesmo diretório de origem entre vários conjuntos de origem. Por exemplo, não é possível usar as mesmas origens para testes de unidade e de instrumentação. Para saber mais, consulte Mudar as configurações dos conjuntos de origem padrão.