Sejak beberapa hari dimungkinkan untuk menggunakan penagihan dalam aplikasi di aplikasi Android. Sangat keren tentunya. Jadi, saya mulai mengerjakan pembaruan untuk aplikasi saya untuk menerapkan ini. Tapi sekarang saya mengalami beberapa masalah. Inilah yang saya lakukan:
- Saya pertama kali mencoba ID produk khusus untuk menguji respons penagihan dalam aplikasi statis. Itu bekerja tanpa masalah.
- Saya mengunggah APK draf ke pasar (dengan penandatanganan produksi, tidak ada penandatanganan debug), yang menyertakan izin com.android.vending.BILLING.
- Ketika saya melakukannya, saya dapat menambahkan 'Produk Dalam Aplikasi' ke aplikasi saya di pasar dan menyetelnya ke status dipublikasikan.
- Saya membuat pengguna uji dan menyetel ulang perangkat saya untuk menjadikan pengguna uji tersebut sebagai akun utama di perangkat uji saya.
- ID produk yang dipesan masih berfungsi.
Sekarang masalahnya. Ketika saya menggunakan ID produk saya sendiri (yang saya tambahkan sebelumnya, lihat di atas) sebuah dialog ditampilkan dengan teks berikut:
" Kesalahan Aplikasi: Versi aplikasi ini tidak dikonfigurasi untuk Penagihan Pasar. Periksa pusat bantuan untuk informasi lebih lanjut. "
Tidak ada yang aneh yang bisa saya temukan di log. Ada yang tahu apa yang saya lakukan salah di sini?
sumber
Saya menemukan bahwa setelah saya mengunggah salinan baru APK saya ke pasar, maka saya mengalami "kesalahan aplikasi" selama sekitar satu jam berikutnya. Setelah setidaknya satu jam berlalu (terkadang hingga dua jam harus berlalu), maka saya tidak lagi mendapatkan kesalahan itu lagi dan saya kemudian dapat membeli item saya tanpa masalah. Tampaknya server Google membutuhkan setidaknya satu jam untuk memproses fakta bahwa Anda telah mengunggah APK baru (berkaitan dengan aspek Penagihan InApp APK).
Jadi saran saya adalah Anda menunggu 1 hingga 2 jam setelah mengunggah APK Anda, dan kemudian lihat apakah Anda masih mendapatkan "kesalahan aplikasi".
sumber
Saya juga mengalami masalah ini. Saya akhirnya menyadari bahwa aplikasi saya yang diterbitkan memiliki versionCode 3, draf saya (apk tidak dipublikasikan dengan izin Penagihan) memiliki versionCode 4, dan apk bertanda tangan yang saya gunakan untuk menguji penagihan dalam aplikasi masih menggunakan versionCode 3. Setelah saya mengubah versionCode menjadi 4, saya bisa membuka halaman produk dalam aplikasi yang sebenarnya untuk pembelian yang saya minta.
sumber
Hal ini dapat terjadi pada build yang ditandatangani dan dirilis saat apk yang diupload sebagai draf tidak cocok dengan apk yang berjalan di sistem Anda dalam mode pengujian. Pastikan saja build Anda cocok, Anda akan baik-baik saja dalam mode pengujian dan akan berhenti melihat error.
Kekhawatiran terbesar di sini adalah kita akan melihat perilaku yang sama dalam produksi, yaitu, kita merilis 1.0.0-1 dengan penagihan dalam aplikasi, lalu kita merilis 1.0.0-2, dan pengguna yang menjalankan 1.0.0-1 akan tidak dapat membeli atau memulihkan pembeliannya dan akan menerima kesalahan yang sama (pengalaman pengguna yang sangat buruk). Telah menjelajahi dokumen untuk menyebutkan perilaku ini sebagai khusus untuk mode uji, tetapi sejauh ini tidak berhasil; kami telah menambahkan bug di sini: http://code.google.com/p/marketbilling/issues/detail?id=15#c0
sumber
Saya juga mengalami masalah yang sama ... tetapi sekarang masalah telah terpecahkan
Pengamatan saya berdasarkan beberapa percobaan:
Semoga ini membantu
sumber
Disalin dari pertanyaan duplikat: https://stackoverflow.com/a/22469253/1321401
Kesalahan ini dapat terjadi karena beberapa alasan.
Berikut adalah daftar persyaratan untuk pengujian IAB Google.
Prasyarat:
Persyaratan pengujian:
PS: Debugging dengan sertifikat rilis : https://stackoverflow.com/a/15754187/1321401 (Thnx @dipp untuk tautannya)
PPS: Ingin membuat daftar ini sejak lama.
Thnx @zlgdev untuk pembaruan
sumber
Solusi saya adalah saya perlu menggunakan kunci yang sama untuk menandatangani apk di Market (sebagai draf APK), dan dalam pengujian. Jadi, alih-alih hanya Jalankan Aplikasi, saya selalu harus mengekspor APK yang ditandatangani dengan setiap pembaruan, hapus instalan dan instal ulang di perangkat menggunakan perintah baris perintah apk. Pada prinsipnya, Anda juga dapat menggunakan keystore Anda sendiri sebagai keystore debug, tetapi perlu menggunakan sandi dan nama hardcode khusus untuk kunci.
sumber
Pikir saya akan membagikan satu solusi lagi yang mungkin jika Anda mendapatkan kesalahan ini. Saya awalnya mengunggah ke Google draf apk saya dengan izin penagihan diaktifkan, jadi saya dapat menyiapkan di app yang dapat dibeli. Kemudian saya mengunggah apk lain tanpa izin penagihan hilang dari AndroidManifest saya, yang mengakibatkan kesalahan. Jelas tampak seperti kasus yang tidak mungkin, tetapi itu terjadi pada saya jadi itu mungkin.
Edit: Di paro yang sama, jika versi yang Anda kirimkan sebagai draf ke google tidak ditandatangani, kesalahan juga akan terjadi.
sumber
Untuk memasukkan dua sen saya, saya dapat mengujinya dengan mengunggah ke versi Beta dan membuat akun Gmail dengan akses pengujian di bawah tab pengaturan dengan versi baru aplikasi saya ...
Saya sekarang memindahkannya ke produksi ...
Terima kasih! Nathan
sumber
Utas lama, tetapi menambahkan pengalaman saya ...
Saya menginstal apk dengan versionCode 1 lebih tinggi daripada yang ada di toko. Memainkannya di 2 akun berbeda di Nexus 7 saya dan mengalami masalah ini. Jadi saya menghapus dan menginstal ulang dari toko untuk memastikan versionCode cocok. Bahkan menunggu semalaman kesalahan tidak jelas.
Ternyata saya perlu mencopot pemasangan dari semua 3 akun Google yang telah saya kaitkan dengan Nexus 7. Saya pulih ketika saya mencopot pemasangan aplikasi secara eksplisit dari ketiga akun di nexus 7 saya kemudian memasangnya kembali dari toko.
sumber