คู่มือการย้ายข้อมูล Android Consumer SDK 3.0

ย้ายข้อมูลไปยัง Kotlin 2.0

หากคุณใช้ Consumer SDK สําหรับ Android 3.0 ขึ้นไป คุณต้องอัปเกรดเป็น Kotlin 2.0 หน้านี้จะให้คําแนะนําในการเปลี่ยนไปใช้ Kotlin เวอร์ชันใหม่

ความเข้ากันได้ของ Gradle กับ AGP

Kotlin 2.0 มีข้อกำหนดสำหรับเวอร์ชันขั้นต่ำและสูงสุดของ Gradle และปลั๊กอิน Android Gradle (AGP) ตรวจสอบว่าโปรเจ็กต์เป็นไปตามข้อกำหนดเหล่านี้สำหรับ Kotlin 2.0

เวอร์ชัน AGP ขั้นต่ำสําหรับ Consumer SDK 3.0 ขึ้นไป

Consumer SDK 3.0 ต้องใช้ AGP 7.3 ขึ้นไป

โหมด R8 แบบเต็ม

Consumer SDK เวอร์ชัน 3 และต่ำกว่าไม่รองรับโหมด R8 แบบเต็ม คุณต้องปิดใช้โหมด R8 แบบสมบูรณ์อย่างชัดเจนหากแอปพลิเคชันกำหนดเป้าหมายเป็น AGP 8.0 ขึ้นไป

# settings.gradle
android.enableR8.fullMode=false

ความเข้ากันได้ของเวอร์ชัน Kotlin

Kotlin รองรับการทำงานร่วมกับภาษาเวอร์ชันก่อนหน้า 3 เวอร์ชัน ซึ่งหมายความว่าหากคุณใช้ Kotlin 1.7 ขึ้นไปกับ Consumer SDK อยู่แล้ว คุณควรจะอัปเกรดเป็น Kotlin 2.0 ได้โดยไม่ต้องแก้ไขการเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้องทั้งหมด อย่างไรก็ตาม ความเข้ากันได้ของ Kotlin จะมีผลกับฟีเจอร์ภาษาที่เสถียรเท่านั้น หากคุณใช้ฟีเจอร์เวอร์ชันอัลฟ่า เบต้า หรือเวอร์ชันทดลองในภาษา Kotlin คุณอาจต้องทำการเปลี่ยนแปลงเพิ่มเติมเมื่ออัปเกรด

Flag ที่เข้ากันได้กับ 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 ที่สามารถตั้งค่าเพื่อคงลักษณะการทำงานเดิมไว้ในคู่มือความเข้ากันได้สำหรับแต่ละเวอร์ชัน