หากใช้ Navigation SDK สําหรับ Android 6.0 ขึ้นไป คุณต้องอัปเกรดเป็น Kotlin 2.0 หน้านี้จะให้คําแนะนําในการเปลี่ยนไปใช้ Kotlin เวอร์ชันใหม่
ความเข้ากันได้ของ Gradle กับ AGP
Kotlin 2.0 มีข้อกำหนดสำหรับเวอร์ชันขั้นต่ำและสูงสุดของ Gradle และปลั๊กอิน Android Gradle (AGP) ตรวจสอบว่าโปรเจ็กต์เป็นไปตามข้อกำหนดเหล่านี้สำหรับ Kotlin 2.0
เวอร์ชัน AGP ขั้นต่ำสําหรับ Navigation SDK 6.0 ขึ้นไป
เราขอแนะนําให้ใช้ AGP 8.3 กับ Navigation SDK 6.0 เราได้ยืนยัน SDK กับ AGP 8.3 และ Gradle 8.4 แล้ว และ SDK ดังกล่าวใช้ได้กับโหมดเต็มรูปแบบของ R8
ความเข้ากันได้ของเวอร์ชัน Kotlin
Kotlin รองรับการทำงานร่วมกับภาษาเวอร์ชันก่อนหน้า 3 เวอร์ชัน ซึ่งหมายความว่าหากคุณใช้ Kotlin 1.7 ขึ้นไปกับ Navigation SDK อยู่แล้ว คุณควรอัปเกรดเป็น Kotlin 2.0 ได้โดยไม่ต้องแก้ไขการเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้องทั้งหมด อย่างไรก็ตาม ฟีเจอร์นี้จะใช้ได้กับฟีเจอร์ภาษาที่เสถียรเท่านั้น หากคุณใช้ฟีเจอร์เวอร์ชันอัลฟ่า เบต้า หรือเวอร์ชันทดลองในภาษา Kotlin คุณอาจต้องทำการเปลี่ยนแปลงเพิ่มเติมเมื่ออัปเกรด
ช่วยให้การเปลี่ยนผ่านง่ายขึ้น: แฟล็กความเข้ากันได้ของ Kotlin
ดังที่ระบุไว้ในส่วนก่อนหน้า Kotlin รองรับภาษาเวอร์ชันก่อนหน้าได้สูงสุด 3 เวอร์ชันเมื่ออัปเกรด Kotlin มี 2 Flag เพื่อช่วยจำกัดการเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้อง ดังนี้
language-version X.Y
Flag นี้จะเปลี่ยนการเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบกลับเป็นลักษณะการทำงานเดิมของ Kotlin เวอร์ชันก่อนหน้า
ตัวอย่างเช่น หากคุณใช้ Kotlin 1.7 ให้ระบุ [ -
language-version 1.7]
แล้วการเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้องใหม่จะไม่มีผลอีกต่อไป
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
Flag นี้จะป้องกันไม่ให้ใช้ API ใหม่ก่อนที่โค้ดดาวน์สตรีมที่เกี่ยวข้องจะพร้อมที่จะรวม Kotlin 2.0
android {
kotlinOptions {
apiVersion = '1.7'
}
}
แนวทางที่มุ่งเน้นมากขึ้น
นอกจากการใช้ Flag ที่เข้ากันได้ของ Kotlin แล้ว เราขอแนะนำให้อ่านหมายเหตุประจำรุ่นของ Kotlin และเลือกลักษณะการทำงานที่ต้องการเก็บไว้จากเวอร์ชันที่คุณอัปเกรด Kotlin มีรายการการเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้องและ Flag ที่สามารถตั้งค่าเพื่อคงลักษณะการทำงานเดิมไว้ในคู่มือความเข้ากันได้สำหรับแต่ละเวอร์ชัน