2016-11-03 13 views
3

私はプッシュ通知(私はSwift3を使用しています)についてiOS 10にアップグレードした後に問題に直面しています。アプリが終了したときにiOS 10プッシュ通知?

アプリケーションオープンまたはアプリケーションがまだバックグラウンドで動作している場合(プッシュ通知を受信し、データを自分のロジックとして受け取ることができます)。

しかし、アプリケーションが終了すると、アプリケーションがアクティブになったときにプッシュ通知を処理できません。

ここは私のテストケースです。

  1. 実行ファイルを起動するのを待つようにスキームを編集します。
  2. ホームボタンを2回押し、アプリケーションをスワイプします。
  3. Xcodeを実行すると、「アプリケーションの起動待ち」が表示されるまで待機します。
  4. テストはサーバーからプッシュ通知を送信します。
  5. デバイスはプッシュ通知を受信しました。
  6. アプリケーションアイコンからアプリケーションを起動します。

そのアプリケーションの後

開始と didFinishLaunchingWithOptionsが呼び出されているが、launchOptions遠かっははので、私はプッシュ通知を扱うことができないヌル(私は通知センターやポップアップ通知launchOptionsに通知からアプリケーションを開く場合はnullではありません)

誰でもこの問題をチェックする考えはありますか?

ありがとうございます。

答えて

-1

これを試してみてください:

はAppDelegateにデリゲートを追加します。

UNUserNotificationCenterDelegate 

そして...

//Called when a notification is delivered to a foreground app. 
@available(iOS 10.0, *) 
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) { 
    print("User Info = ",notification.request.content.userInfo) 

    completionHandler([.alert, .badge, .sound]) 
} 

//Called to let your app know which action was selected by the user for a given notification. 
@available(iOS 10.0, *) 
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping() -> Void) { 
    print("ActionIdentifier = ",response.actionIdentifier) 
    print("User Info = ",response.notification.request.content.userInfo) 

    completionHandler() 
} 
関連する問題