Guia de migração do SDK Driver do Android 6.0

Migrar para a interface DriverStatusListener

No Driver v5, anunciamos a descontinuação da interface StatusListener em favor de DriverStatusListener. Este ano, vamos excluir oficialmente a StatusListener interface. Consulte a StatusListener descontinuação para acessar um guia de migração para a nova interface.

Migrar para o Kotlin 2.0

Se você estiver usando o SDK do Driver para Android 6.0 ou mais recente, faça upgrade para o Kotlin 2.0. Esta página oferece orientações para facilitar a transição para a nova versão do Kotlin.

Compatibilidade do Gradle e do AGP

O Kotlin 2.0 tem requisitos para as versões mínima e máxima do Gradle e do Plug-in do Android para Gradle (AGP). Verifique se o projeto atende a esses requisitos para o Kotlin 2.0.

Versão mínima do AGP para o SDK do Driver 6.0 ou mais recente

Recomendamos usar o AGP 7.3 ou mais recente com o SDK do Driver 6.0.

Modo R8 completo

O SDK do Driver v6 e versões anteriores não oferecem suporte ao modo R8 completo. É necessário desativar explicitamente o modo R8 completo se o aplicativo segmentar o AGP 8.0 ou mais recente.

# settings.gradle
android.enableR8.fullMode=false

Compatibilidade da versão do Kotlin

O Kotlin oferece suporte à compatibilidade com versões anteriores com três versões anteriores da linguagem versions. Isso significa que, se você já estiver usando o Kotlin 1.7 ou mais recente com o SDK do Driver, você poderá fazer upgrade para o Kotlin 2.0 sem precisar resolver todas as mudanças interruptivas. No entanto, a compatibilidade do Kotlin só se aplica a recursos de linguagem estáveis. Se você estiver usando recursos alfa, beta ou experimentais na linguagem Kotlin, talvez seja necessário fazer outras mudanças ao fazer upgrade.

Flags de compatibilidade do Kotlin

Como observado na seção anterior, o Kotlin oferece suporte a até três versões anteriores de linguagem ao fazer upgrade. O Kotlin fornece duas flags para ajudar a limitar as mudanças interruptivas:

language-version X.Y

Essa flag reverte as mudanças interruptivas para o comportamento de uma versão anterior do Kotlin. Por exemplo, se você estiver usando o Kotlin 1.7, poderá especificar [ - language-version 1.7] e as novas mudanças interruptivas não terão mais efeito:

android {
   kotlinOptions {
       languageVersion = '1.7'
   }
}
api-version X.Y

Essa flag impede que novas APIs sejam usadas antes que o código downstream dependente esteja pronto para incorporar o Kotlin 2.0.

android {
   kotlinOptions {
       apiVersion = '1.7'
   }
}

Uma abordagem mais direcionada

Além de usar flags de compatibilidade do Kotlin, recomendamos revisar as notas de versão do Kotlin e escolher os comportamentos que você quer manter da versão em que está fazendo upgrade. O Kotlin fornece uma lista de mudanças interruptivas e as flags que podem ser definidas para manter o comportamento original nos guias de compatibilidade de cada versão: