Atualizações do Gradle e do Plug-in do Android para Gradle
Fazer upgrade das versões do Gradle e do Plug-in do Android para Gradle
Primeiro, faça upgrade das versões do Gradle e do plug-in do Android para Gradle. Essa atualização inclui melhor compatibilidade com determinadas dependências do SDK (incluindo Kotlin 1.9), além de algumas correções de bugs críticos.
Esta versão principal do SDK requer as seguintes dependências de versão para seu projeto de aplicativo Android:
- uma versão do Gradle pelo menos v7.5.0, mas não superior a v7.6.0.
- uma versão do Plug-in do Android para Gradle (AGP) no intervalo v7.4.x.
Você pode segmentar uma versão mais recente dos plug-ins, mas pode receber avisos de suspensão de uso ou alguns recursos novos podem não funcionar.
Para modificar a versão do Gradle, mude a linha no arquivo
/gradle/wrapper/gradle-wrapper.properties do projeto.
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
Para modificar a versão do Plug-in do Android para Gradle, edite o arquivo build.gradle que
contém o bloco buildscript. Exemplo:
buildscript {
repositories {
google()
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.4.1'
}
}
Migração da compatibilidade da biblioteca do Java 7 para o Java 8
Etapa 1: ativar o suporte à biblioteca Java 8
Como o nível mínimo da API do SDK é 23 e a versão necessária do AGP é 7.4 ou mais recente, a configuração é um pouco diferente da documentação de origem mencionada.
buildscript {
repositories {
google()
mavenCentral()
jcenter()
maven {
url = uri("https://storage.googleapis.com/r8-releases/raw")
}
}
dependencies {
classpath 'com.android.tools:r8:8.0.46'
classpath 'com.android.tools.build:gradle:7.4.1'
}
}
android {
compileOptions {
// Flag to enable support for the new language APIs
coreLibraryDesugaringEnabled true
// Sets Java compatibility to Java 8
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.3'
}
Etapa 2: migrar do Proguard ou Dexguard para o R8
O AGP v7.4 e versões mais recentes usam o R8 como a ferramenta padrão de redução, ofuscação e otimização para o binário. Portanto, nenhuma ação especial é necessária neste momento.
Se o projeto for migrado do AGP 4.0 ou de uma versão mais recente, o AGP poderá emitir os seguintes avisos sobre remoções de arquivos:
- Uso de
useProguard trueno arquivobuild.gradle - Uso de
android.enableR8=falseno arquivogradle.properties
A remoção dessas linhas geralmente resolve esses problemas.
Migração do Kotlin 1.6 para o 1.9
Etapa 1: migrar para o plug-in do Kotlin para Gradle 1.9.0
Atualize a versão do plug-in do Kotlin Gradle no arquivo build.gradle do módulo de nível superior do aplicativo. Adicione org.jetbrains.kotlin:kotlin-gradle-plugin
nas dependências do bloco buildscript, caso esteja faltando.
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
}
}
Migre seu aplicativo do Kotlin-synthetics se você estiver usando o plug-in do Kotlin para Gradle 1.6.X ou 1.7.X. Consulte o guia de migração oficial para mais informações.
Etapa 2: fazer upgrade do kotlin-stdlib para 1.9.0
Faça upgrade do kotlin-stblib para 1.9.0 no arquivo build.gradle do aplicativo.
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}
Remova todas as referências a kotlin-stdlib-jdk7 ou
kotlin-stdlib-jdk8. Ambas as dependências foram consolidadas em
kotlin-stdlib a partir do Kotlin
1.8.0.