Kotlin 版本需要搭配的 D8 和 R8 編譯器版本

Android Gradle 外掛程式 (AGP) 以及 D8 和 R8 編譯器與 Kotlin 1.3 以上版本的類別檔案相容。

D8 和 R8 編譯器從 2.1.86 版 (隨附於 AGP 4.1) 開始支援 Kotlin 1.3 版的類別檔案。如果是 Kotlin 1.4 以上版本的類別檔案,每個 Kotlin 版本都有需要搭配的最低 AGP 及 D8 和 R8 版本。

下表列出每個 Kotlin 版本需要搭配的最早 AGP 及 D8 和 R8 編譯器版本。

Kotlin 版本 最早 AGP 版本 最早 D8 和 R8 版本
1.3 4.1 2.1.86
1.4 7.0 3.0.76
1.5 7.0 3.0.77
1.6 7.1 3.1.51
1.7 7.2 3.2.47
1.8 7.4 4.0.48
1.9 8.0 8.0.27

表中列出的 AGP 版本會自動使用指定的 D8 和 R8 編譯器版本。

使用 Java 8 以上的 API 脫糖程序時,需要使用 AGP 7.0 版 (以及 D8 和 R8 3.0.76 版)。R8 只能輸出 Kotlin 1.4 以上版本的中繼資料。使用 R8 縮減內含 Kotlin 1.3 版本中繼資料的 Kotlin 程式庫時,中繼資料會轉換為 Kotlin 1.4 格式。如果是 Kotlin 1.4 以上版本,R8 會保留該版本。