Bermigrasi ke Google Play Billing Library 7 dari versi 5 atau 6

Dokumen ini menjelaskan cara melakukan migrasi dari Library Layanan Penagihan Google Play 5 atau 6 ke Library Layanan Penagihan Google Play 7 dan cara mengintegrasikannya dengan langganan yang fleksibel.

Untuk daftar lengkap perubahan dalam versi 7.0.0, lihat rilis ini catatan.

Ringkasan

Library Layanan Penagihan Google Play 7 meningkatkan penanganan pembayaran untuk fitur langganan yang sudah ada. Peningkatan opsional ini menambahkan dukungan untuk membayar dengan paket cicilan serta dukungan untuk pembelian tertunda untuk langganan prabayar.

Upgrade Play Billing Library yang kompatibel dengan versi lama

Semua API Google Play Billing Library 7 yang baru bersifat opsional, dan developer tidak perlu menerapkan perubahan API apa pun untuk mengupdate.

Untuk bermigrasi, Anda perlu memperbarui referensi API dan menghapus API tertentu dari aplikasi Anda seperti yang dijelaskan dalam catatan rilis dan selanjutnya panduan migrasi.

Mengupgrade dari PBL 5 ke PBL 7

Bagian berikut menjelaskan cara mengupgrade dari PBL 5 ke PBL 7.

Mengupdate Library Layanan Penagihan Google Play

Mengupdate versi dependensi Play Billing Library di file build.gradle aplikasi Anda.

dependencies {
    def billingVersion = 7.0.0

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

Selanjutnya, perbarui referensi API Anda seperti yang dijelaskan di bagian berikut.

Mengubah pembelian langganan pengguna

Library Layanan Penagihan Play 5 dan yang lebih lama menggunakan ProrationMode untuk menerapkan perubahan pada pembelian langganan pengguna, seperti upgrade atau downgrade. API ini telah dihapus dan diganti dengan ReplacementMode

Menangani perubahan harga langganan

launchPriceConfirmationFlow API sebelumnya yang tidak digunakan lagi telah dihapus. Untuk alternatifnya, lihat panduan perubahan harga.

Menangani perubahan API terkait langganan

API setOldSkuPurchaseToken sebelumnya yang tidak digunakan lagi, setReplaceProrationMode, setReplaceSkusProrationMode telah dihapus.

Menangani error Play Billing Library

Kode NETWORK_ERROR baru menunjukkan masalah dengan koneksi jaringan antara perangkat pengguna dan sistem Google Play.

Kode SERVICE_TIMEOUT dan SERVICE_UNAVAILABLE juga diperbarui.

Untuk informasi selengkapnya, lihat Menangani kode respons BillingResult.

Menangani transaksi yang tertunda

Play Billing Library tidak lagi membuat ID pesanan untuk pembelian yang tertunda. Untuk pembelian ini, ID pesanan diisi setelah pembelian dipindahkan menjadi status PURCHASED. Pastikan integrasi Anda sesuai ID pesanan hanya setelah transaksi selesai sepenuhnya. Anda masih dapat menggunakan token pembelian untuk data Anda.

Untuk informasi selengkapnya tentang cara menangani pembelian tertunda, lihat panduan integrasi Library Layanan Penagihan Play dan panduan pengelolaan siklus proses pembelian.

Menangani API penagihan alternatif yang dihapus

Menghapus BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener, dan AlternativeChoiceDetails. Developer harus menggunakan BillingClient.Builder.enableUserChoiceBilling() dengan UserChoiceBillingListener dan UserChoiceDetails dalam callback pemroses.

Update ini adalah penggantian nama API yang sudah tidak digunakan lagi tanpa perubahan perilaku.

Perubahan Opsional

PBL 7 mencakup dua API opsional baru.

Mendukung Pembelian Tertunda untuk Paket Prabayar

Lihat panduan Menangani Langganan dan Transaksi Tertunda.

Langganan Cicilan Virtual

Lihat panduan Integrasi Langganan Cicilan.

Mengupgrade dari PBL 6 ke PBL 7

Bagian berikut menjelaskan cara mengupgrade dari PBL 6 ke PBL 7.

Mengupdate Library Layanan Penagihan Google Play

Mengupdate versi dependensi Play Billing Library di file build.gradle aplikasi Anda.

dependencies {
    def billingVersion = 7.0.0

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

Selanjutnya, perbarui referensi API Anda seperti yang dijelaskan di bagian berikut.

Menangani perubahan API terkait langganan

API setOldSkuPurchaseToken sebelumnya yang tidak digunakan lagi, setReplaceProrationMode, setReplaceSkusProrationMode telah dihapus.

Menangani API penagihan alternatif yang dihapus

Menghapus BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener dan AlternativeChoiceDetails. Developer harus menggunakan BillingClient.Builder.enableUserChoiceBilling() dengan UserChoiceBillingListener dan UserChoiceDetails dalam callback pemroses.

Perubahan Opsional

PBL 7 mencakup dua API opsional baru.

Mendukung Pembelian Tertunda untuk Paket Prabayar

Lihat panduan Menangani Langganan dan Transaksi Tertunda.

Langganan Cicilan Virtual

Lihat panduan Integrasi Langganan Cicilan untuk informasi tentang cara mengintegrasikan perubahan ini ke dalam aplikasi Anda.