ย้ายข้อมูลจากเวอร์ชัน 5 หรือ 6 ไปยัง Google Play Billing Library 7

เอกสารนี้อธิบายวิธีย้ายข้อมูลจาก Google Play Billing Library 5 หรือ 6 ไปยัง Google Play Billing Library 7 และวิธีผสานรวมกับความสามารถในการสมัครใช้บริการแบบใหม่ที่ไม่บังคับ

หากต้องการดูรายการการเปลี่ยนแปลงทั้งหมดในเวอร์ชัน 7.0.0 โปรดดู บันทึกประจำรุ่น

ภาพรวม

Google Play Billing Library 7 ปรับปรุงการจัดการการชำระเงินสำหรับฟีเจอร์การสมัครใช้บริการที่มีอยู่ การปรับปรุงที่ไม่บังคับเหล่านี้จะเพิ่มการรองรับการชำระเงินด้วยแพ็กเกจการผ่อนชำระ รวมถึงการรองรับการซื้อที่รอดำเนินการสำหรับการสมัครใช้บริการแบบชำระเงินล่วงหน้า

การอัปเกรด Play Billing Library ที่เข้ากันได้กับเวอร์ชันก่อนหน้า

API ใหม่ทั้งหมดของ Google Play Billing Library 7 เป็น API ที่ไม่บังคับ และนักพัฒนาแอปไม่จำเป็นต้องใช้การเปลี่ยนแปลง API ใดๆ เพื่ออัปเดต

หากต้องการย้ายข้อมูล คุณต้องอัปเดตข้อมูลอ้างอิง API และนำ API บางรายการออกจากแอปตามที่อธิบายไว้ในบันทึกประจำรุ่นและในคู่มือการย้ายข้อมูลนี้

อัปเกรดจาก PBL 5 เป็น PBL 7

ส่วนต่อไปนี้อธิบายวิธีอัปเกรดจาก PBL 5 เป็น PBL 7

อัปเดต Google Play Billing Library

อัปเดตเวอร์ชันการพึ่งพา Play Billing Library ในไฟล์ build.gradle ของแอป

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

จากนั้นอัปเดตข้อมูลอ้างอิง API ตามที่อธิบายไว้ในส่วนต่อไปนี้

เปลี่ยนการซื้อการสมัครใช้บริการของผู้ใช้

Play Billing Library 5 และเวอร์ชันก่อนหน้าใช้ ProrationMode เพื่อใช้การเปลี่ยนแปลงกับการซื้อการสมัครใช้บริการของผู้ใช้ เช่น การอัปเกรด หรือดาวน์เกรด ระบบได้นำ API นี้ออกและแทนที่ด้วย ReplacementMode

จัดการการเปลี่ยนแปลงราคาการสมัครใช้บริการ

ระบบได้นำ API launchPriceConfirmationFlow ที่เลิกใช้งานไปก่อนหน้านี้ออกแล้ว หากต้องการดูทางเลือกอื่น โปรดดูคู่มือการเปลี่ยนแปลงราคา price changes guide

จัดการการเปลี่ยนแปลง API ที่เกี่ยวข้องกับการสมัครใช้บริการ

ระบบได้นำ API setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode ที่เลิกใช้งานไปก่อนหน้านี้ออกแล้ว

จัดการข้อผิดพลาดของ Play Billing Library

รหัส NETWORK_ERROR ใหม่บ่งบอกถึงปัญหาเกี่ยวกับการเชื่อมต่อเครือข่ายระหว่างอุปกรณ์ของผู้ใช้กับระบบ Google Play

นอกจากนี้ ระบบยังได้อัปเดตรหัส SERVICE_TIMEOUT และ SERVICE_UNAVAILABLE ด้วย

ดูข้อมูลเพิ่มเติมได้ที่ จัดการรหัสการตอบกลับ BillingResult.

จัดการธุรกรรมที่รอดำเนินการ

Play Billing Library จะไม่สร้างรหัสคำสั่งซื้อสำหรับการซื้อที่รอดำเนินการอีกต่อไป สำหรับการซื้อเหล่านี้ ระบบจะป้อนรหัสคำสั่งซื้อหลังจากที่การซื้อย้ายไปอยู่ในสถานะ PURCHASED แล้ว ตรวจสอบว่าการผสานรวมของคุณคาดหวังรหัสคำสั่งซื้อหลังจากที่ธุรกรรมเสร็จสมบูรณ์แล้วเท่านั้น คุณยังคงใช้โทเค็นการซื้อสำหรับบันทึกได้

ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการการซื้อที่รอดำเนินการได้ใน คู่มือการผสานรวมPlay Billing Libraryและ คู่มือการจัดการวงจรการซื้อ

จัดการ API การเรียกเก็บเงินระบบอื่นที่นำออก

ระบบได้นำ BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener, และ AlternativeChoiceDetails ออกแล้ว นักพัฒนาแอปควรใช้ BillingClient.Builder.enableUserChoiceBilling() กับ UserChoiceBillingListener และ UserChoiceDetails ในการเรียกกลับของ Listener แทน

การอัปเดตนี้เป็นการเปลี่ยนชื่อ API ที่เลิกใช้งานแล้วโดยไม่มีการเปลี่ยนแปลงลักษณะการทำงาน

การเปลี่ยนแปลงที่ไม่บังคับ

PBL 7 มี API ใหม่ 2 รายการที่ไม่บังคับ

รองรับการซื้อที่รอดำเนินการสำหรับแพ็กเกจแบบชำระเงินล่วงหน้า

ดูคู่มือจัดการการสมัครใช้บริการและธุรกรรมที่รอดำเนินการ

การสมัครใช้บริการแบบผ่อนชำระเสมือนจริง

ดูคู่มือการผสานรวมการสมัครใช้บริการแบบผ่อนชำระ

อัปเกรดจาก PBL 6 เป็น PBL 7

ส่วนต่อไปนี้อธิบายวิธีอัปเกรดจาก PBL 6 เป็น PBL 7

อัปเดต Google Play Billing Library

อัปเดตเวอร์ชันการพึ่งพา Play Billing Library ในไฟล์ build.gradle ของแอป

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

จากนั้นอัปเดตข้อมูลอ้างอิง API ตามที่อธิบายไว้ในส่วนต่อไปนี้

จัดการการเปลี่ยนแปลง API ที่เกี่ยวข้องกับการสมัครใช้บริการ

ระบบได้นำ API setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode ที่เลิกใช้งานไปก่อนหน้านี้ออกแล้ว

จัดการ API การเรียกเก็บเงินระบบอื่นที่นำออก

ระบบได้นำ BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener และ AlternativeChoiceDetails ออกแล้ว นักพัฒนาแอปควรใช้ BillingClient.Builder.enableUserChoiceBilling() กับ UserChoiceBillingListener และ UserChoiceDetails ในการเรียกกลับของ Listener แทน

การเปลี่ยนแปลงที่ไม่บังคับ

PBL 7 มี API ใหม่ 2 รายการที่ไม่บังคับ

รองรับการซื้อที่รอดำเนินการสำหรับแพ็กเกจแบบชำระเงินล่วงหน้า

ดูคู่มือจัดการการสมัครใช้บริการและธุรกรรมที่รอดำเนินการ

การสมัครใช้บริการแบบผ่อนชำระเสมือนจริง

ดูข้อมูลเกี่ยวกับวิธีผสานรวมการเปลี่ยนแปลงเหล่านี้เข้ากับแอปได้ในคู่มือการผสานรวมการสมัครใช้บริการแบบผ่อนชำระ