Stripe SDK menyebabkan kegagalan. Kesalahan spesifik adalah:
Jenis penunjuk blok yang tidak kompatibel mengirim '__strong STPAPIResponseBlock _Nonnull' (alias 'void (^ __ strong) (ResponseType _Nullable __strong, NSHTTPURLResponse * _Nullable __strong, NSError * _Nullable __strong)')
ke parameter tipe 'void (^ _Nonnull) (STPSource * _Nullable __strong, NSHTTPURLResponse * _Nullable __strong, NSError * _Nullable __strong)'
Kode gagal adalah sebagai berikut dalam STPAPIClient.m ...
- (NSURLSessionDataTask *)retrieveSourceWithId:(NSString *)identifier clientSecret:(NSString *)secret responseCompletion:(STPAPIResponseBlock)completion {
NSString *endpoint = [NSString stringWithFormat:@"%@/%@", APIEndpointSources, identifier];
NSDictionary *parameters = @{@"client_secret": secret};
return [STPAPIRequest<STPSource *> getWithAPIClient:self
endpoint:endpoint
parameters:parameters
deserializer:[STPSource new]
completion:completion];
}
Semuanya berfungsi dengan baik - dan kemudian saya percaya Xcode diperbarui. Sekarang saya mendapatkan masalah ini. Saya mencoba membangun aplikasi baru dari awal dengan tidak ada di dalamnya selain Stripe SDK (diinstal melalui CocoaPods) dan gagal.
Sebelum saya mengembalikan ke versi Xcode sebelumnya - bantuan apa pun akan sangat dihargai.
sumber
Jawaban:
XCode 11.4 memecahkan stripe pod v19.0 dan diperbaiki di v19.0.1
untuk memutakhirkan stripe pod, hapus
podfile.lock
dan lakukanpod install
.sumber
pod install --repo-update
Perbarui dengan perbaikan : "Kami telah merilis v14.0.1, v15.0.2, v17.0.3, dan v19.0.1 ke Cocoapods dengan perbaikan untuk masalah ini.": Https://github.com/stripe/stripe-ios/issues / 1525 # issuecomment-604037716
Info posting yang lebih lama :
Ini diperbaiki oleh Stripe dalam perubahan ini: https://github.com/stripe/stripe-ios/pull/1526
Jika Anda terjebak pada versi Stripe yang lebih lama, Anda dapat mencoba menerapkan dua perubahan pada versi lokal Anda. (Perubahan di https://github.com/stripe/stripe-ios/pull/1526/files ).
sumber
Saya melakukan ini:
di Podfile.lock saya telah mengubah - Stripe (19.0.0) menjadi - Stripe (19.0.1) dan kemudian di terminal di direktori ios menjalankan "pod update Stripe" . Saya menggunakan bergetar dan bagi saya itu berhasil.
sumber
Juga berlari ke ini, tetapi saya pada versi v14 dari pod stripe. Satu-satunya opsi yang dapat saya temukan untuk orang-orang di posisi saya adalah kembali ke xcode 11.3.1.
sumber
Anda dapat mengatur stripe SDK Anda ke Versi 19.0.1 untuk memperbaiki masalah ini.
pod 'Stripe', '~> 19.0.1'
ATAU orang lain memperbarui strip stripe Anda ke versi terbaru dengan perintah pod update
sumber
Saya punya masalah ini juga, itu pembaruan xcode 11.4 dan saya menjalankan stripe v15.0.1.
Saya baru saja memperbarui versi stripe saya ke v15.0.2. Tergantung versi Anda, Anda dapat memeriksa ini: https://github.com/stripe/stripe-ios/issues/1525#issuecomment-604037716
sumber