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 berintegrasi dengan kemampuan langganan opsional yang baru.

Untuk daftar lengkap perubahan pada versi 7.0.0, lihat catatan rilis.

Ringkasan

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

Upgrade Play Billing Library yang kompatibel dengan versi lama

Semua API Library Layanan Penagihan Google Play 7 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 seperti yang dijelaskan dalam catatan rilis dan nanti dalam panduan migrasi ini.

Mengupgrade dari PBL 5 ke PBL 7

Bagian berikut menjelaskan cara melakukan upgrade dari PBL 5 ke PBL 7.

Mengupdate Library Layanan Penagihan Google Play

Update versi dependensi Library Layanan Penagihan Play 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 sebelumnya yang tidak digunakan lagi setOldSkuPurchaseToken, 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

Library Layanan Penagihan Play tidak lagi membuat ID pesanan untuk pembelian yang tertunda. Untuk pembelian ini, ID pesanan diisi setelah pembelian dipindahkan ke status PURCHASED. Pastikan integrasi Anda mengharapkan ID pesanan hanya setelah transaksi selesai sepenuhnya. Anda tetap dapat menggunakan token pembelian untuk data Anda.

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

Menangani API penagihan alternatif yang dihapus

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

Update ini mengganti nama API yang 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 yang 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

Update versi dependensi Library Layanan Penagihan Play 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 sebelumnya yang tidak digunakan lagi setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode telah dihapus.

Menangani API penagihan alternatif yang dihapus

Menghapus BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener dan AlternativeChoiceDetails. Sebagai gantinya, 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 yang Tertunda.

Langganan Cicilan Virtual

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