Pourquoi didReceiveRemoteNotification n'est pas appelé mais didReceiveRemoteNotification: fetchCompletionHandler appelé lorsque mon application est au premier plan?

Si je remplace

override func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject], fetchCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) {
    println("hey)
}

J'ai réussi à avoir la méthode appelée avec l'application au premier plan, lorsque j'envoie une notification push.

Si je remplace

override func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
    println("hey")
}

Je n'ai pas tout appel à la méthode lors de l'envoi d'une notification de l'application au premier plan. Pourquoi le premier travail, mais la seconde n'est pas lorsque l'application est au premier plan?

Remarque que je ne suis que la mise en œuvre de l'un de ces à la fois. Pas les deux en même temps.

source d'informationauteur Adam Johns | 2015-04-28