0

Xcode 7.3 で Apple プッシュ通知デモアプリを実装しました。その正常に動作していました。最近、Xcode 8 をダウンロードしました。デモ アプリが Xcode 7 でも Xcode 8 でも動作しません。デリゲート メソッドが呼び出されませんでした。何が悪かったのかわかりません。Xcodeは資格を作成することを提案し、私はそうしました。誰か助けてください。

ありがとう、ヴィカシュ

4

2 に答える 2

1

機能からのプッシュ通知および AppDelegate の BuildPhase での UserNotification フレームワークの追加では、デリゲート メソッド UNUserNotificationCenterDelegate を追加します。

 import UserNotifications

でしたFinishingLaunching...

  if #available(iOS 10.0, *) {
        let center  = UNUserNotificationCenter.current()
        center.delegate = self
        center.requestAuthorization(options: [.sound, .alert, .badge]) { (granted, error) in
            if error == nil{
                UIApplication.shared.registerForRemoteNotifications()
            }
        }
    } else {
        // Fallback on earlier versions
    }

これらのメソッドを追加

   func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {

    let deviceTokenString = deviceToken.reduce("", {$0 + String(format: "%02X", $1)})
    print(deviceTokenString)


}

func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) {

    print("i am not available in simulator \(error)")

}



@available(iOS 10.0, *)
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {

}

@available(iOS 10.0, *)
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {

}
于 2017-01-12T11:33:29.807 に答える