React-native-iap: getProducts selalu mengembalikan null

Dibuat pada 13 Apr 2018  ·  34Komentar  ·  Sumber: dooboolab/react-native-iap

@ Dooboolab Saya menerima array null setelah memanggil metode getProducts setelah metode persiapan.

📱 iOS 🙏 help wanted 🤖 android

Komentar yang paling membantu

@axelkennedal bersikap pasif agresif dengan orang-orang yang secara sukarela menghabiskan waktu mereka yang berharga untuk mencoba membantu Anda tidak akan membuat Anda bertahan lama.

@JJMoon @dooboolab terima kasih atas kerja

Semua 34 komentar

@ companytest1206 Ini seharusnya tidak terjadi. Bisakah Anda berbagi informasi lebih lanjut? Seperti kode Anda, status produk Anda, os, perangkat, dan lain-lain. Untuk konfigurasi produk dalam aplikasi, silakan merujuk ke blog .

Ini kode saya ..

async componentDidMount () {
coba {
menunggu RNIap.prepare ();
produk const = menunggu RNIap.getProducts (itemSkus);
console.log ('Produk', produk);
}
tangkap (err) {
console.warn (err.code, err.message);
}
this.fetchData ();

}

Status aplikasi saya dalam mode alfa. Menggunakan nexus 6 untuk debugging.

@ companytest1206 Kode Anda tampaknya baik-baik saja. Bagaimana dengan konfigurasi produk Anda di playstore atau itunesconnect ? Silakan ikuti readme dan periksa semua yang telah saya posting di sini .

Saya memiliki masalah yang sama.

Saya memiliki masalah yang sama tetapi saya mendapatkan array kosong (bukan array nol, apa pun artinya itu). Saya memposting tentang itu di sini .

@systemride @sanilcgs Bisakah Anda berbagi platform yang bermasalah dengan Anda menggunakan metode getProducts ?

Saya mengalami masalah dengan ini di Android 7.0 (berjalan pada LG G6), mengembangkan di MacOS 10.13.4 @dooboolab

Membuat aplikasi saya menggunakan paket create-react-native-app . Untuk mengintegrasikan pembelian dalam aplikasi, saya telah melepaskan aplikasi saya. Setelah itu saya mengintegrasikan react-native-iap ke dalam aplikasi saya. Bagi saya masalahnya terjadi di iOS dan android. Saya menggunakan Android Studio 3.0.1 dan Xcode 9.3. @doobool

Menurut README pustaka lain ini, seharusnya mungkin untuk mendapatkan produk yang tersedia saat berjalan di lingkungan debug (bukan rilis Alfa / Beta), apakah itu benar? (Saya pikir itu harus sama untuk pustaka ini karena itu mungkin tergantung pada bagaimana Google menangani IAP).

Pertanyaan terkait lainnya; haruskah SKU diawali dengan nama paket? Dengan kata lain; apakah "unlock_premium" atau "com.kimer.unlock_premium" benar di kode saya jika ID yang saya tentukan di Konsol Google Play adalah "unlock_premium" ?

@axelkennedal SKUS tidak memiliki format apa pun, sepenuhnya dapat disesuaikan. Singkatnya: "unlock_premium" atau "com.kimer.unlock_premium" sudah benar.

Saya mengerti bahwa Anda dapat memberi nama ID produk sesuka Anda, tetapi yang saya tanyakan adalah apa yang harus dimasukkan dalam kode saya jika saya memilih ID "unlock_premium" di Konsol Google Play (bukan apakah saya "diizinkan" untuk mengawalnya di Konsol Google Play dan dalam kode saya). Anda mengatakan bahwa memilih ID "unlock_premium" di Konsol Google Play harus bekerja sama dengan "unlock_premium" dan "com.kimer.unlock_premium", benar? Saya pikir ini perlu dinyatakan di suatu tempat di README, karena itu membingungkan.

MEMPERBARUI

Sekarang bekerja untuk saya 😄! Saya mencoba beberapa hal tetapi saya tidak yakin apa kunci untuk membuatnya berfungsi 🤔 Bagaimanapun, inilah yang saya lakukan:

  1. Menginstal ulang paket
  2. Mengubah pernyataan impor saya dari import InAppPurchase from "react-native-iap;" to "import * as InAppPurchase from 'react-native-iap';"
  3. Mengubah SKU saya dalam kode dari "com.kimer.unlock_premium" menjadi "unlock_premium"

@axelkennedal Anda harus menggunakan nama apa pun, tetapi Anda harus menggunakan di Konsol Google Play> aplikasi Anda> Google Play Store> dalam produk aplikasi. Dan nama yang SAMA harus Anda gunakan pada kode sumber.

@dooboolab Ketika saya mencoba untuk mengeksekusi RNIap.buyProduct (' * ') dengan productID saya, saya mendapat pesan kesalahan Item itu tidak tersedia . Sebenarnya produk terkelola saya dalam keadaan aktif. Apa masalahnya? Saya dapat membuat daftar detail produk menggunakan RNIap.getProducts (itemSkus). Apakah saya perlu menambahkan kunci lisensi ke dalam aplikasi saya ??

@ sanilcgs, bisakah Anda memberi tahu saya platform mana yang Anda hadapi kesalahan?

@dooboolab Saya menghadapi masalah di platform android dan mengembangkan di MacOS High Sierra (10.13.4)

@sanilcgs, apakah Anda menggunakan modul terbaru kami yaitu '0.3.23'? Masalah serupa juga dapat ditemukan di sini. https://github.com/dooboolab/react-native-iap/issues/142

@dooboolab Ya, saya menggunakan '0.3.23'. Masalah saya sekarang dengan RNIap.buyProduct (' * ') .

@ sanilcgs Saya memposting beberapa info bantuan untuk itu dalam masalah di atas. Saya akan menempel di sini lagi. Silakan periksa di bawah.

         Do's

1) Buat apk tanda untuk aplikasi Anda.
2) Unggah apk Anda di Google Play Store.
3) Buat produk untuk aplikasi Anda.
4) tunggu 6-12 jam untuk memperbarui item di toko.
5) Berikan izin Penagihan di Manifest.xml

           Don't

1) Jangan gunakan emulator untuk menguji karena tidak mendukung Layanan Penagihan.
2) Jangan gunakan apk yang tidak ditandatangani untuk layanan Penagihan.

Baca lebih lanjut: http://www.androidhub4you.com/2013/03/how-to-inegrate-in-app-purchase-billing.html#ixzz5DqRctVJp

@dooboolab Seperti yang telah saya katakan bahwa aplikasi saya tidak dirilis ke produksi. Sekarang saya telah merilis versi alfa saya saja. Jadi dapatkah saya menguji RNIap.buyProduct (' * * ') ** ini dengan versi alfa saya atau apakah saya perlu merilis produksi untuk menguji pembelian ???

@sanilcgs Jika Anda membaca di atas secara menyeluruh, Anda harus menyadari bahwa Anda tidak perlu merilis apk ke produksi. Hanya alfa atau beta baik-baik saja tetapi apk Anda harus ditandatangani seperti yang dijelaskan. Periksa di atas sekali lagi dan lihat apa yang Anda lewatkan terlebih dahulu.

@dooboolab Hal yang harus dan tidak boleh dilakukan di atas sangat membantu. Untuk noob, akan sangat membantu jika dijelaskan dalam dokumentasi bahwa Anda hanya dapat mengujinya pada rilis alfa / beta dan jika Anda mengujinya dalam build dev pada emulator, array kosong akan selalu ditampilkan. Saya tidak melihat penyebutan itu di mana pun. Saya senang menambahkan ini dalam permintaan tarik jika Anda mau?

@systemride PR apa pun akan dihargai!

@axelkennedal melakukan semua itu, saya masih mendapatkan array kosong di iOS. Ada ide?
btw ... Saya masih menguji simulator. Apakah perlu mengujinya di perangkat iOS yang sebenarnya?

@axelkennedal getProducts() di iOS bekerja dengan baik di simulator. Tindakan pembelian harus diuji di perangkat nyata dengan akun apple kotak pasir.
Anda mungkin belum menyelesaikan pengaturan produk App Store dengan sempurna.

@JJMoon jika Anda membaca komentar saya, Anda akan tahu bahwa saya menggunakan Android, bukan iOS.

@axelkennedal bersikap pasif agresif dengan orang-orang yang secara sukarela menghabiskan waktu mereka yang berharga untuk mencoba membantu Anda tidak akan membuat Anda bertahan lama.

@JJMoon @dooboolab terima kasih atas kerja

@raduflp lol apa yang kamu bicarakan? Saya baru saja menunjukkan bahwa kami berada di platform yang berbeda

@raduflp Terima kasih atas tanggapan dan perhatiannya yang baik. Saya tidak berpikir @axelkennedal dimaksudkan untuk menjadi agresif. Dia terlalu kewalahan menggunakan react-native-iap . Sepertinya masalah ini bisa ditutup jadi saya akan menutupnya. Juga, setiap PR dihargai yang dapat membantu generasi baru.

Cobalah. Bekerja untuk saya:

"Anda perlu menambahkan akun pengujian Anda ke daftar akun khusus lainnya" Akun Gmail dengan akses pengujian ", Anda dapat menemukannya di pengaturan akun play (bukan proyek!). Pada halaman di mana Anda dapat melihat daftar proyek Anda pergi ke pengaturan, dan kemudian di halaman "Detail akun" (gulir ke bawah, hampir di bagian bawah halaman) Anda akan menemukan daftar "Akun Gmail dengan akses pengujian".

Siapkan lisensi aplikasi
Untuk menyiapkan pemberian lisensi aplikasi, mulailah dengan menambahkan daftar alamat Gmail penguji Anda di Konsol Play.

Buka Konsol Play Anda.
Pilih Pengaturan Pengaturan> Detail akun.
Di bawah "Pengujian Lisensi", tambahkan alamat Gmail penguji Anda.
Di bagian atas layar, pilih Simpan.

Saya telah mengintegrasikan react-native-iap dan mengunggah apk saya yang ditandatangani ke rilis beta di play store dan juga menambahkan satu paket berlangganan. Saya mencoba mendapatkan daftar langganan dengan ID langganan dalam mode debug yang selalu mengembalikan larik kosong. Bisakah saya benar-benar menguji langganan dalam mode debug?

@ShridharCodewave Anda menggunakan perangkat nyata atau simulator?

@NarekChang Saya menggunakan perangkat nyata dan sekarang entah bagaimana saya mendapatkan langganan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat