React-native-onesignal: Bereaksi-asli-onesignal dan ios 13.1

Dibuat pada 13 Sep 2019  ·  12Komentar  ·  Sumber: OneSignal/react-native-onesignal

Keterangan:

Kami sedang dalam proses memperbarui react-native-onesignal di aplikasi - react-native adalah versi 0.55.2. Masalah singkatnya adalah, bahwa kami telah mencoba memperbarui sdk react-native-onesignal (ke 3.3.2 dan 3.3.3) per email yang dikirim mengenai xcode 11 dan iOS 13. Namun, saat menjalankan aplikasi pada Perangkat iOS 13.1 (iphone 7) (dibangun dan dijalankan dengan xcode 11) aplikasi berjalan, ia mendapat sembulan yang meminta izin untuk mengirim pemberitahuan push (dan kami menerimanya) tetapi kami selalu mendapatkan yang berikut di konsol dan aplikasi menang 't mendaftar untuk pemberitahuan, karena perangkat tidak muncul di dasbor Onesignal:

(Saya tidak tahu cara memformat kode, maaf)

2019-09-13 14:30:11.707798+0200 app_name[3842:145178] { userSubscriptionEnabled: true, subscriptionEnabled: false, pushToken: '{length=32,bytes=0x0586c0fd0e74336ba3129ece2d44e089...8a9649cae8640ed7}', emailAddress: null, userId: null, hasPrompted: true, notificationsEnabled: false, emailUserId: null, emailSubscribed: false }

.....

2019-09-13 14:30:26.742281+0200 app_name[3842:145201] VERBOSE: HTTP Request (OSRequestRegisterUser) with URL: https://onesignal.com/api/v1/players, with parameters: { "app_id" : "app_id", "net_type" : 0, "test_type" : 1, "ios_bundle" : "dat1.videoplatform.ios.babyapp", "tags" : { "lang" : "da" }, "device_type" : 0, "sdk_type" : "react", "sdk" : "020904", "identifier" : "{length=32,bytes=0x0586c0fd0e74336ba3129ece2d44e089...8a9649cae8640ed7}", "language" : "da-DK", "device_os" : "13.1", "game_version" : "38", "timezone" : 7200, "ad_id" : "3A2693A5-32F0-474C-B4BD-5CC5F40B511A", "notification_types" : 31, "device_model" : "iPhone9,3", "carrier" : "Telenor DK" } 2019-09-13 14:30:26.960947+0200 app_name[3842:145202] VERBOSE: network response (OSRequestRegisterUser): { errors = ( "[\"Identifier invalid format.\"]" ); success = 0; } 2019-09-13 14:30:26.961717+0200 app_name[3842:144941] ERROR: Encountered error during push registration with OneSignal: Error Domain=OneSignalError Code=400 "(null)" UserInfo={returned={ errors = ( "[\"Identifier invalid format.\"]" ); success = 0; }}

Lingkungan

Langkah-langkah untuk Mereproduksi Masalah:

  1. Instal versi 3.3.2 atau 3.3.3 dari react-native-onesignal
  2. SDK diinisialisasi di App.js
  3. Jalankan aplikasi di iphone 7 dengan iOS 13.1 dan terima pemberitahuan push pada popup.

Ada yang lain:

Kami telah mencoba menjalankan perangkat iOS 12.4 dengan react-native-onesignal 3.2.4 (pra-pembaruan), 3.3.2 dan 3.3.3 yang semuanya berfungsi di sana. Ini menggunakan format pengidentifikasi lama seperti yang diharapkan. Kami telah menjalankan versi Live aplikasi pada iOS 13.1 iphone 7 yang berfungsi (kami pikir itu tidak akan berfungsi). Kami telah menjalankan aplikasi yang diperbarui dengan 3.3.2 dan 3.3.3 yang berjalan di emulator dengan baik. Itu bisa terhubung, hanya saja tidak mendapatkan sembulan yang meminta izin Push seperti yang diharapkan.

Kami akan mencoba dan melihat apakah kami bisa mendapatkan perangkat yang menjalankan iOS 13.0 dan menguji di sana karena emulatornya 13.0 dan mungkin ada perbedaan dari sana ke 13.1.

Untuk saat ini kami tidak dapat melangkah lebih jauh sendiri dan telah menghabiskan waktu berhari-hari untuk berlari dalam lingkaran.

Hargai bantuannya!

Help Wanted iOS

Komentar yang paling membantu

@rgomezp Saya bisa menjalankan ini dengan menambahkan CoreGraphics.framework dan WebKit.framework ke proyek OneSignalNotificationServiceExtension di XCode, seperti yang disarankan di #861. Terima kasih atas bantuan Anda!

Semua 12 komentar

Mengalami masalah yang sama, kami menggunakan reaksi asli 0.59.10

apa kabar,
Kami baru saja merilis versi 3.4.1 yang seharusnya memperbaiki masalah ini. Bersulang!

Akan mencobanya dan kembali dengan hasilnya :)

@DanielMerbt Apakah ini berfungsi di iOS 13.1? Bisakah Anda memberi tahu kami. Terima kasih!

Kami memperbarui ke SDK 3.4.1 dan mencoba menjalankan simulator dan perangkat ios 13.1 dan kami mendapatkan kesalahan pembuatan, jadi kami belum dapat melihat apakah masalah aslinya telah teratasi. Kami juga pindah ke versi Xcode GM, tetapi beta yang kami gunakan sebelumnya menghasilkan kesalahan build yang sama persis.

Kesalahan baru yang terjadi saat mencoba dijalankan di sim/perangkat adalah:

Simbol yang tidak ditentukan untuk arsitektur x86_64:
"_OBJC_CLASS_$_WKWebView", dirujuk dari:
objc-class-ref di libRCTOneSignal.a(OneSignal-x86_64-master.o)
"_OBJC_CLASS_$_WKWebViewConfiguration", dirujuk dari:
objc-class-ref di libRCTOneSignal.a(OneSignal-x86_64-master.o)
ld: simbol tidak ditemukan untuk arsitektur x86_64
dentang: error: perintah tautan gagal dengan kode keluar 1 (gunakan -v untuk melihat permintaan)

Saya ingin tahu apa lagi yang diubah dalam pembaruan 3.4.1, karena kami sama sekali tidak mengubah apa pun selain versi SDK react-native-onesignal.

Saya mengalami masalah yang sama saat mencoba membangun dengan SDK versi 3.4.1.
Screen Shot 2019-09-19 at 12 24 50 PM

Kami menambahkan dua kerangka kerja baru yang sulit ditemukan oleh XCode. Bisakah Anda mencoba menjalankan pod deintegrate && pod install dari direktori ios Anda?

@rgomezp saya menjalankannya dan mencoba membangun lagi, dan sekarang saya melihat output yang sama seperti di atas.

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_WKWebViewConfiguration", referenced from:
      objc-class-ref in libRCTOneSignal.a(OneSignal-arm64-master.o)
  "_OBJC_CLASS_$_WKWebView", referenced from:
      objc-class-ref in libRCTOneSignal.a(OneSignal-arm64-master.o)
  "_CGAffineTransformIdentity", referenced from:
      ___49-[OSInAppMessageViewController animateAppearance]_block_invoke in libRCTOneSignal.a(OneSignal-arm64-master.o)
  "_CGAffineTransformMakeScale", referenced from:
      -[OSInAppMessageViewController addConstraintsForMessage] in libRCTOneSignal.a(OneSignal-arm64-master.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Bisakah Anda mencoba mengikuti petunjuk ini?

https://documentation.onesignal.com/docs/react-native-sdk-setup#section -manually-updating-ios-onesignalnativesdk

Repo asli iOS: https://github.com/OneSignal/OneSignal-iOS-SDK

EDIT: orang-orang telah menyelesaikan ini dengan menambahkan kerangka kerja yang hilang langsung ke proyek mereka (non-cocoapods): https://github.com/geektimecoil/react-native-onesignal/issues/861

@rgomezp Saya bisa menjalankan ini dengan menambahkan CoreGraphics.framework dan WebKit.framework ke proyek OneSignalNotificationServiceExtension di XCode, seperti yang disarankan di #861. Terima kasih atas bantuan Anda!

Memperbaiki masalah dengan menambahkan Webkit.framework secara manual. Aplikasi berjalan dan onesignal berfungsi :)

Senang mendengarnya

Apakah halaman ini membantu?
0 / 5 - 0 peringkat