迁移到 DriverStatusListener 接口
在驱动程序 v5 中,我们宣布弃用 StatusListener 接口,改用 DriverStatusListener。今年,我们将正式删除 StatusListener 接口。如需了解新接口的迁移指南,请参阅 StatusListener 弃用。
迁移到 Kotlin 2.0
如果您使用的是适用于 Android 6.0 及更高版本的 Driver SDK,则必须升级到 Kotlin 2.0。本页面提供了相关指导,可帮助您轻松过渡到新的 Kotlin 版本。
Gradle 和 AGP 兼容性
Kotlin 2.0 对 Gradle 和 Android Gradle 插件 (AGP) 版本的最低版本和最高版本有要求。确保您的项目满足 Kotlin 2.0 的这些要求。
Driver SDK 6.0+ 的 AGP 最低版本
建议使用 AGP 7.3 及更高版本搭配 Driver SDK 6.0。
完整 R8 模式
Driver SDK v6 及更低版本不支持完整 R8 模式。如果您的应用以 AGP 8.0 及更高版本为目标平台,则必须显式停用完整 R8 模式。
# settings.gradle
android.enableR8.fullMode=false
Kotlin 版本兼容性
Kotlin 支持与前三个语言版本的向后兼容性。 这意味着,如果您已将 Kotlin 1.7+ 与 Driver SDK 搭配使用,则应该能够升级到 Kotlin 2.0,而无需解决所有破坏性更改。不过,Kotlin 兼容性仅适用于稳定的语言功能。如果您在 Kotlin 语言中使用的是 Alpha 版、Beta 版或实验性功能,那么在升级时可能需要进行其他更改。
Kotlin 兼容性标志
如上一部分所述,升级时,Kotlin 最多支持 3 个之前的语言版本。Kotlin 提供了两个标志来帮助限制破坏性更改:
language-version X.Y
此标志会将行为方面的重大变更恢复为之前 Kotlin 版本的行为。
例如,如果您使用的是 Kotlin 1.7,则可以指定 [ -
language-version 1.7],这样新的破坏性更改将不再生效:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
此标志可防止在依赖的下游代码准备好纳入 Kotlin 2.0 之前使用新的 API。
android {
kotlinOptions {
apiVersion = '1.7'
}
}
更具针对性的方法
除了使用 Kotlin 兼容性标志之外,我们还建议您查看 Kotlin 版本说明,并选择要保留的升级前版本中的行为。在每个版本的兼容性指南中,Kotlin 都提供了一份重大变更列表,以及可用于保留原始行为的标志: