wenn ich richtig verstehe, die UIApplicationLaunchOptionsRemoteNotificationKey
Taste auf der -[UIApplicationDelegate application:didFinishLaunchingWithOptions:]
Methode verwendet, wenn - der Push empfangen wurde, wenn die Anwendung nicht (zB getötet) ausgeführt wurde - der Benutzer auf dem empfangenen PushWofür wird UIApplicationLaunchOptionsRemoteNotificationKey verwendet?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSDictionary *userInfo = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey];
if(userInfo) {
// app was not running and the user clicked on the push
}
}
geklickt
aber .. in diesem genau gleichen Fall wird die -[AppDelegate application:didReceiveRemoteNotification:fetchCompletionHandler:]
auch direkt nach der vorherigen aufgerufen.
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler
{
// called when
// app was not running and the user clicked on the push
// app was running in background and user clicked on a push
// app was running in background and a silent push was received
// app is in foreground and a push is received
completionHandler(UIBackgroundFetchResultNewData);
}
Die Frage ist also, verwende warum soll ich die UIApplicationLaunchOptionsRemoteNotificationKey
wenn alles in den application:didReceiveRemoteNotification:fetchCompletionHandler
Delegierten behandelt werden? Habe ich etwas verpasst?
prost,
Jan
Da Sie in der Lage sein sollten, Remote-Benachrichtigungen irgendwo tief in der Navigation Stapel in einer zufälligen _view _... oder nur in einem zufälligen _Controller _... oder nur in einem zufälligen _Modell _... zu behandeln, ist es unlogisch zu verlassen Der App-Delegierte würde die Änderungen an Ihrem z _model_, das macht keinen Sinn, deshalb können einzelne Instanzen Benachrichtigungen abhören und wenn sie wach sind, können sie die Änderungen sofort unabhängig von App-Delegaten vornehmen - technisch in den letzten drei Szenarien, die Sie erwähnt haben. – holex