ย้ายข้อมูลจากเวอร์ชัน 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 บางรายการออกจากแอปตามที่อธิบายไว้ในหมายเหตุประจำรุ่นและในภายหลังในคู่มือการย้ายข้อมูลนี้

อัปเกรดจาก 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 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

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

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

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

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

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

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

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