เอกสารนี้อธิบายวิธีย้ายข้อมูลจาก 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 ที่เลิกใช้งานก่อนหน้านี้ออกแล้ว
- อัปเดต
setOldSkuPurchaseTokenเป็นsetOldPurchaseToken - อัปเดต
setReplaceProrationModeเป็นsetSubscriptionReplacementMode - อัปเดต
setReplaceSkusProrationModeเป็นsetSubscriptionReplacementMode
จัดการข้อผิดพลาดของ 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 ใน Callback ของ 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 ที่เลิกใช้งานก่อนหน้านี้ออกแล้ว
- อัปเดต
setOldSkuPurchaseTokenเป็นsetOldPurchaseToken - อัปเดต
setReplaceProrationModeเป็นsetSubscriptionReplacementMode - อัปเดต
setReplaceSkusProrationModeเป็นsetSubscriptionReplacementMode
จัดการ API การเรียกเก็บเงินระบบอื่นที่ถูกนำออก
นำออกแล้ว
BillingClient.Builder.enableAlternativeBilling,
AlternativeBillingListener และ
AlternativeChoiceDetails ใช้
BillingClient.Builder.enableUserChoiceBilling()
กับ UserChoiceBillingListener และ
UserChoiceDetails ใน Callback ของ Listener แทน
การเปลี่ยนแปลงที่ไม่บังคับ
PBL 7 มี API ใหม่ที่ไม่บังคับ 2 รายการ
รองรับการซื้อที่รอดำเนินการสำหรับแพ็กเกจแบบชำระเงินล่วงหน้า
ดูคำแนะนำเกี่ยวกับการจัดการการสมัครใช้บริการและธุรกรรมที่รอดำเนินการ
การสมัครใช้บริการผ่อนชำระแบบเสมือนจริง
ดูข้อมูลเกี่ยวกับวิธีผสานรวมการเปลี่ยนแปลงเหล่านี้ลงในแอปได้ที่คู่มือการผสานรวมการสมัครใช้บริการแบบผ่อนชำระ