Saya sedang menulis kode terkait StoreKit, dan saya mendapatkan beberapa kode kesalahan yang agak mengganggu ketika saya mencoba menambahkan pembelian ke antrian.
Sejauh ini, saya mengalami kode kesalahan -1003 dan -1004 dan saya tidak dapat menemukan apa pun tentang kode tersebut di internet.
Menjalankan permintaan produk akan mengembalikan nomor produk yang valid, jadi saya tidak tahu mengapa panggilan ke [[SKPaymentQueue defaultQueue] addPayment:aPayment];
akan gagal dengan masalah yang tidak terdokumentasi ini.
Kode yang sama juga berfungsi tanpa kesalahan di satu perangkat tetapi tidak di perangkat lain.
Pertanyaan yang saya miliki, sampai saat ini, belum terjawab:
Apa arti kode-kode ini? Bagaimana cara mengurangi masalah ini? Mengapa ini terjadi untuk upaya pembelian dan bukan untuk permintaan produk?
Pemecahan masalah yang telah saya lakukan termasuk membuat ulang sertifikat penandatanganan dan profil penyediaan, mengubah jaringan WiFi, membersihkan dan membuat serta menginstal ulang semua perangkat lunak dan komponen terkait, dan tidak satu pun dari hal-hal ini secara individual atau bersama-sama yang membantu memperbaiki masalah.
EDIT:
Menemukan diskusi tentang ini di forum pengembang Apple, tetapi tidak ada seorang pun dari Apple yang menanggapi: https://devforums.apple.com/thread/107121?tstart=75 (akun pengembang iOS diperlukan untuk melihat)
EDIT:
Saya dipukul dengan kode kesalahan -1001 hari ini, untuk menambah daftar masalah yang tidak bisa dijelaskan dan terputus-putus ini. Masih belum ada pertanggungjawaban dari Apple, yang bisa saya temukan.
EDIT:
Saya memiliki kecurigaan bahwa kode kesalahan ini dibuat secara acak dan benar-benar hanya menunjukkan bahwa Kotak Pasir sedang mati. Ada lagi yang mengalami masalah ini?
sumber
NSURLErrorUnknown
. Ada petunjuk?Saya memiliki masalah serupa, dalam kasus saya tampaknya terkait dengan konektivitas jaringan:
Hal-hal yang perlu diperiksa:
Maaf, tidak ada ide bagaimana memperbaikinya. Hanya men-debug ini, mencoba mencari tahu apa masalahnya (-1021, -1001, -1009)
Pembaruan: Pencarian Google sangat baik untuk menemukan ini:
sumber
lihat NSURLError.h Define
sumber
Saya menggunakan metode berikut dalam proyek saya
Kemudian saya hanya memeriksa kode kesalahan dan menunjukkan peringatan jika ada dalam daftar
Tetapi seperti yang Anda lihat, saya mengomentari kode yang menurut saya tidak sesuai dengan definisi saya tentang NO INTERNET. Misalnya kode -1012 (Otentikasi gagal.) Anda dapat mengedit daftar sesuka Anda.
Dalam proyek saya, saya menggunakannya di nama pengguna / kata sandi yang masuk dari pengguna. Dan dalam pandangan saya (fisik) kesalahan koneksi jaringan bisa menjadi satu-satunya alasan untuk menampilkan tampilan peringatan di aplikasi berbasis jaringan Anda. Dalam kasus lain (mis. Pasangan nama pengguna / kata sandi salah) Saya lebih suka melakukan beberapa animasi ramah pengguna khusus, ATAU hanya mengulangi upaya yang gagal lagi tanpa perhatian pengguna. Terutama jika pengguna tidak secara eksplisit memulai panggilan jaringan.
Salam martinezdelariva untuk link ke dokumentasi.
sumber
Saya menemukan kode kesalahan baru yang tidak didokumentasikan di atas: CFNetworkErrorCode -1022
sumber
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
Saya menemukan halaman ini dalam dokumentasi yang memiliki enum objektif-c untuk semua kode kesalahan di bawah NSURLErrorDomain.
https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_Constants/index.html#//apple_ref/doc/constant_group/URL_Loading_System_Error_Codes
sumber