Bergabunglah bersama kami di ⁠#Android11: The Beta Launch Show pada tanggal 3 Juni!

Payload developer

Payload developer sebelumnya digunakan untuk berbagai tujuan, termasuk pencegahan penipuan dan mengatribusikan pembelian ke pengguna yang tepat. Dengan Library Layanan Penagihan Google Play versi 2.2, tujuan kasus penggunaan yang sebelumnya bergantung pada payload developer kini didukung sepenuhnya di bagian lain dari library.

Dengan dukungan ini, payload developer kini sudah tidak digunakan lagi mulai dari Library Layanan Penagihan Google Play versi 2.2. Metode yang diatribusikan dengan payload developer telah dihentikan dan akan dihapus pada rilis library mendatang. Perlu diperhatikan bahwa aplikasi Anda masih dapat mengambil payload developer untuk pembelian yang dilakukan menggunakan versi library sebelumnya atau melalui AIDL.

Untuk daftar mendetail tentang perubahan ini, lihat catatan rilis Library Layanan Penagihan Google Play 2.2.

Verifikasi pembelian

Untuk memastikan bahwa pembelian tersebut asli dan tidak dipalsukan atau diulang, Google merekomendasikan penggunaan token pembelian (diperoleh dari metode getPurchaseToken() dalam objek Purchase) beserta Google Play Developer API untuk memverifikasi keaslian pembelian yang dilakukan. Untuk informasi selengkapnya, lihat Melawan penipuan dan penyalahgunaan.

Atribusi pembelian

Beberapa aplikasi, terutama game, harus memastikan bahwa pembelian diatribusikan dengan benar ke karakter/avatar dalam game atau profil pengguna dalam aplikasi yang memulai pembelian. Dimulai dari Library Layanan Penagihan Google Play 2.2, aplikasi Anda dapat meneruskan ID profil dan akun yang di-obfuscate ke Google saat meluncurkan dialog pembelian, yang kemudian ditampilkan saat mengambil pembelian.

Gunakan parameter setObfuscatedAccountId() dan setObfuscatedProfileId() dalam BillingFlowParams, lalu ambil menggunakan metode getAccountIdentifiers() dalam objek Purchase.

Mengatribusi metadata dengan pembelian

Google merekomendasikan agar Anda menyimpan metadata tentang pembelian di server backend aman yang Anda kelola. Metadata pembelian ini harus diatribusikan dengan token pembelian yang diperoleh menggunakan metode getPurchaseToken dalam objek Purchase. Data ini dapat dipertahankan dengan meneruskan token pembelian dan metadata ke backend Anda ketika PurchasesUpdatedListener dipanggil setelah pembelian berhasil dilakukan.

Untuk memastikan metadata tetap diatribusikan apabila alur pembelian terganggu, Google merekomendasikan agar Anda menyimpan metadata di server backend sebelum meluncurkan dialog pembelian dan mengatribusikannya dengan ID akun pengguna Anda, SKU yang dibeli, dan stempel waktu saat ini.

Jika alur pembelian terganggu sebelum PurchasesUpdatedListener dipanggil, aplikasi Anda akan menemukan pembelian setelah aplikasi dilanjutkan dan memanggil BillingClient.queryPurchases(). Anda kemudian dapat mengirim nilai yang diambil dari getPurchaseTime(), getSku(), dan getPurchaseToken() objek Purchase ke server backend untuk mencari metadata, mengatribusikan metadata dengan token pembelian, kemudian melanjutkan pemrosesan pembelian.