处理推送通知

时间:2011-02-08 04:18:19

标签: iphone push-notification

我正在使用推送通知,当应用程序打开时/或在后台进程中然后我接收推送通知没问题,当我退出我的应用程序时出现问题,它不会调用我的委托。为什么呢?

1 个答案:

答案 0 :(得分:8)

当从推送通知启动应用程序时,代码路径略有不同。您的应用委托代替获取-application:didReceiveRemoteNotification:消息,而是将一些额外信息传递到其-application:didFinishLaunchingWithOptions:。您可以从选项中获取通知字典,然后将其移交给常规的推送通知处理程序,如下所示:

- (void)application:(UIApplication *)app didFinishLaunchingWithOptions:(NSDictionary *)options
{
    NSDictionary *pushDict = [options objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
    if(pushDict)
    {
        [self application:app didReceiveRemoteNotification:pushDict];
    }

    // etc.
}