ย้ายข้อมูลจากเวอร์ชัน 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

อัปเดตเวอร์ชันทรัพยากร Dependency ของ 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

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

ระบบได้นำ launchPriceConfirmationFlow API ที่เลิกใช้งานไปก่อนหน้านี้ออกแล้ว ดูทางเลือกอื่นๆ ได้ในคำแนะนำเกี่ยวกับการเปลี่ยนแปลงราคา

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

อัปเดต Google Play Billing Library

อัปเดตเวอร์ชันทรัพยากร Dependency ของ 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 ในฟังก์ชันการเรียกกลับของโปรแกรมฟังแทน

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

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

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

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

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

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