RemoteNotification来自launchOptions

时间:2014-07-26 05:43:02

标签: ios objective-c push-notification

在我的应用程序中,我添加了推送通知服务,它'一切正常。 当App未处于活动或后台模式时,它需要处理通知。

我为此添加了代码,如下所示。方法

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
     [[UIApplication sharedApplication] registerForRemoteNotificationTypes:UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeAlert|UIRemoteNotificationTypeSound];    
     NSDictionary *RemoteNoti =[launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
     if (RemoteNoti) {
     //your methods to process notification
     }
     return YES;
}
例如,我收到了三个通知 当应用程序没有在后台或前台运行时,我点按通知,它只给我详细的点击通知。

仅提供抽头通知详细信息是正确的行为吗?或者NSDictionary *RemoteNoti =[launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];

的所有三个通知的详细信息都应该包含在内

请建议如果我遗漏了任何东西。

2 个答案:

答案 0 :(得分:2)

是的,这是正确的行为。您只会收到一个由您选择的通知。

  

在包含远程通知的有效负载的字典中。的> - alert:警报消息的字符串或带有两个键的字典:body和 show-view。 > - badge:一个数字,指示从提供程序下载的数据项的数量。此号码将显示在应用程序图标上。缺少徽章属性表示应删除当前标记图标的任何数字。的> - 声音:应用程序包中声音文件的名称,用作警报声音。如果指定“default”,则应播放默认声音。

答案 1 :(得分:1)

是的,在单一通知点击中,您将只获得与该通知相关的详细信息和信息词典,我不认为您可以一次获得所有通知详细信息,您可能需要将数据存储为当您收到IT时,如果您想使用它。