Android Driver SDK 6.0 遷移指南

遷移至 DriverStatusListener 介面

在 Driver 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 第 6 版以下不支援完整 R8 模式。如果應用程式指定 AGP 8.0 以上版本,您必須明確停用完整 R8 模式。

# settings.gradle
android.enableR8.fullMode=false

Kotlin 版本相容性

Kotlin 支援與前三個語言版本的回溯相容性。也就是說,如果您已搭配 Driver SDK 使用 Kotlin 1.7 以上版本,應該就能升級至 Kotlin 2.0,不必解決所有重大變更。不過,Kotlin 相容性僅適用於穩定的語言功能。如果您在 Kotlin 語言中使用 Alpha 版、Beta 版或實驗性功能,升級時可能需要進行額外變更。

Kotlin 相容性旗標

如上一節所述,升級時,Kotlin 最多支援 3 個舊版語言。Kotlin 提供兩個有助於限制破壞性變更的標記:

語言版本 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 在各版本的相容性指南中,列出破壞性變更和可設定的旗標,以便保留原始行為: