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. Esse upgrade inclui melhor compatibilidade com determinadas dependências do SDK (incluindo o Kotlin 1.9), além de algumas correções de bugs críticos.
Essa versão principal do SDK requer as seguintes dependências de versão para o projeto de app 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 de v7.4.x.
Você pode segmentar uma versão mais recente dos plug-ins. No entanto, talvez encontre avisos de suspensão de uso ou alguns novos recursos podem não funcionar.
Para modificar a versão do Gradle, modifique 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, modifique 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 do suporte da biblioteca Java 7 para Java 8
Etapa 1: ativar o suporte da 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 mais recentes usam o R8 como a ferramenta padrão de redução, ofuscação e otimização do binário. Portanto, nenhuma ação especial é necessária neste momento.
Se o projeto for migrado do AGP 4.0 ou 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 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 para 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"
}
}
Você precisa migrar seu aplicativo do Kotlin-synthetics caso esteja 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.