Wie nennen registerForRemoteNotifications für beide iOS7 und iOS8 in Swift?

* Hinweis: diese Frage ist NICHT, wie registrieren Sie sich für remote-Benachrichtigungen in swift, Meine Frage ist, wie code zu schreiben, bei swift, das funktioniert, wenn die Ausführung auf Geräten mit iOS8 und iOS7. Der code, den ich gepostet verwendet, um zu tun, die mit Xcode beta 1 zu 5, aber mit der beta 6 erzeugt nun ein linker-Fehler. Also meine Frage ist, wie die Dinge zu ändern, um der neuen linker-Fehler in der beta 6. *

Ich bin immer folgende link-Fehler mit Xcode Beta 6

Undefined symbols for architecture arm64:
"__TFSsoi1oUSs17_RawOptionSetType_USs21BitwiseOperationsTypeSs9Equatable__FTQ_Q__Q_", referenced from:
      __TFC12My_cWireless11AppDelegate29registerForRemoteNotificationfS0_FT_T_ in AppDelegate.o

Für den folgenden code, der verwendet, um Compiler - /link/execute ohne problem auf Betas 1 bis 5.

      func registerForRemoteNotification()
        {
            let registerForRemoteNotificationsMethodExists = UIApplication.sharedApplication().respondsToSelector(Selector("registerForRemoteNotifications"))
            if  registerForRemoteNotificationsMethodExists
            {
                UIApplication.sharedApplication()?.registerForRemoteNotifications()
            }
            else
            {
                //Fall back to using iOS7 as the code is not running on an iOS 8 device
 UIApplication.sharedApplication()?.registerForRemoteNotificationTypes(UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound | UIRemoteNotificationType.Alert)
            }
        }

Warum hat es aufgehört zu verknüpfen mit der neuesten Beta? Ist es ein problem mit der code, die aufgedeckt worden mit Xcode Beta 6?

  • Die übliche Frage: Haben Sie versucht, die "Clean Build Folder ..." (opt-shift-cmd-K) ?
  • Ja, dass macht keinen Unterschied, noch ist das löschen der Daten abgeleitet.
  • Geben dieser Artikel Lesen und sehen.
  • Danke aber ich weiß bereits, dass. Meine Frage ist nicht, wie registrieren Sie sich für remote-Benachrichtigungen in swift. Meine Frage ist, wie code zu schreiben, bei swift, das funktioniert, wenn die Ausführung auf Geräten mit iOS8 und iOS7. Der code, den ich gepostet verwendet, um zu tun, die mit Xcode beta 1 zu 5, aber mit der beta 6 erzeugt nun ein linker-Fehler. Also meine Frage ist, wie die Dinge zu ändern, die Arbeit mit Beta 6.
  • Dieser code funktioniert jetzt mit GM.
InformationsquelleAutor Gruntcakes | 2014-08-20
Schreibe einen Kommentar