React-native-onesignal: React-native-onesignal und ios 13.1

Erstellt am 13. Sept. 2019  ·  12Kommentare  ·  Quelle: OneSignal/react-native-onesignal

Beschreibung:

Wir sind dabei, React-Native-Onesignal in einer App zu aktualisieren - React-Native ist Version 0.55.2. Das Problem ist kurz gesagt, dass wir versucht haben, das React-Native-Onesignal-SDK (auf 3.3.2 und 3.3.3) pro E-Mail zu aktualisieren, die bezüglich xcode 11 und iOS 13 versendet wird iOS 13.1-Gerät (iphone 7) (es wird mit xcode 11 erstellt und ausgeführt) Die App wird ausgeführt, es wird ein Popup angezeigt, in dem um Erlaubnis zum Senden von Push-Benachrichtigungen gebeten wird (und wir akzeptieren), aber wir erhalten immer Folgendes in der Konsole und die App hat gewonnen 'nicht für Benachrichtigungen registrieren, da das Gerät nicht im Onesignal-Dashboard angezeigt wird:

(Ich weiß nicht, wie man den Code formatiert, sorry)

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; }}

Umfeld

Schritte zum Reproduzieren des Problems:

  1. Installieren Sie Version 3.3.2 oder 3.3.3 von React-native-Onesignal
  2. Das SDK wird in App.js initialisiert
  3. Führen Sie die App auf einem iPhone 7 mit iOS 13.1 aus und akzeptieren Sie Push-Benachrichtigungen im Popup.

Noch etwas:

Wir haben versucht, auf iOS 12.4-Geräten mit React-Native-Onesignal 3.2.4 (Pre-Update), 3.3.2 und 3.3.3 zu laufen, die alle dort funktionieren. Es verwendet das alte Bezeichnerformat wie erwartet. Wir haben die Live-Version der App auf einem iOS 13.1 iPhone 7 ausgeführt, das funktioniert (wir dachten, es sollte nicht funktionieren). Wir haben die aktualisierte App mit 3.3.2 und 3.3.3 ausgeführt, die auf dem Emulator einwandfrei laufen. Es kann eine Verbindung herstellen, aber das Popup, das nach Push-Berechtigungen fragt, wird nicht wie erwartet angezeigt.

Wir werden versuchen, zu sehen, ob wir ein Gerät mit iOS 13.0 bekommen und dort testen können, da der Emulator 13.0 ist und es möglicherweise einen Unterschied zu 13.1 gibt.

Alleine kommen wir vorerst nicht weiter und sind schon tagelang im Kreis gelaufen.

Schätzen Sie die Hilfe!

Help Wanted iOS

Hilfreichster Kommentar

@rgomezp Ich konnte dies zum CoreGraphics.framework als auch WebKit.framework zu meinem OneSignalNotificationServiceExtension Projekt in XCode hinzugefügt habe, wie in #861 vorgeschlagen. Danke für Ihre Hilfe!

Alle 12 Kommentare

Da wir das gleiche Problem haben, sind wir auf Reactive-native 0.59.10

Hallo,
Wir haben gerade Version 3.4.1 veröffentlicht, die dieses Problem beheben sollte. Danke schön!

Werde es ausprobieren und mit den Ergebnissen zurückkehren :)

@DanielMerbt Hast du das unter iOS 13.1 zum

Wir haben auf das SDK 3.4.1 aktualisiert und versucht, auf dem Simulator und dem iOS 13.1-Gerät zu laufen, und wir erhalten einen Build-Fehler, sodass wir nicht sehen konnten, ob das ursprüngliche Problem behoben wurde. Wir sind auch auf die Xcode GM-Version umgestiegen, aber die Beta, die wir zuvor verwendet haben, führte zu genau demselben Build-Fehler.

Der neue Fehler, der beim Versuch auftritt, auf Sim/Gerät zu laufen, ist:

Undefinierte Symbole für Architektur x86_64:
"_OBJC_CLASS_$_WKWebView", referenziert von:
objc-class-ref in libRCCTOneSignal.a(OneSignal-x86_64-master.o)
"_OBJC_CLASS_$_WKWebViewConfiguration", referenziert von:
objc-class-ref in libRCCTOneSignal.a(OneSignal-x86_64-master.o)
ld: Symbol(e) für Architektur x86_64 nicht gefunden
clang: error: Linker-Befehl mit Exitcode 1 fehlgeschlagen (verwenden Sie -v, um den Aufruf anzuzeigen)

Ich frage mich, was im 3.4.1-Update sonst noch geändert wurde, da wir absolut nichts geändert haben außer der React-Native-Onesignal-SDK-Version.

Ich stoße auf dasselbe Problem, wenn ich versuche, mit SDK-Version 3.4.1 zu erstellen.
Screen Shot 2019-09-19 at 12 24 50 PM

Wir haben zwei neue Frameworks hinzugefügt, die XCode nicht finden kann. Können Sie bitte versuchen, pod deintegrate && pod install aus Ihrem iOS-Verzeichnis auszuführen?

@rgomezp Ich habe diese ausgeführt und versucht, erneut zu bauen, und

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)

Können Sie bitte versuchen, diese Anweisungen zu befolgen?

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

Natives iOS-Repository: https://github.com/OneSignal/OneSignal-iOS-SDK

BEARBEITEN: Die Leute haben dies gelöst, indem sie die fehlenden Frameworks direkt zu ihrem Projekt hinzugefügt haben (Nicht-Cocoapods): https://github.com/geektimecoil/react-native-onesignal/issues/861

@rgomezp Ich konnte dies zum CoreGraphics.framework als auch WebKit.framework zu meinem OneSignalNotificationServiceExtension Projekt in XCode hinzugefügt habe, wie in #861 vorgeschlagen. Danke für Ihre Hilfe!

Das Problem wurde behoben, indem das Webkit.framework manuell hinzugefügt wurde. Die App läuft und onesignal funktioniert :)

Gut zu hören

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen