在我的应用程序中,我添加了推送通知服务,它'一切正常。 当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];
请建议如果我遗漏了任何东西。
答案 0 :(得分:2)
是的,这是正确的行为。您只会收到一个由您选择的通知。
在包含远程通知的有效负载的字典中。的> - alert:警报消息的字符串或带有两个键的字典:body和 show-view。 > - badge:一个数字,指示从提供程序下载的数据项的数量。此号码将显示在应用程序图标上。缺少徽章属性表示应删除当前标记图标的任何数字。的> - 声音:应用程序包中声音文件的名称,用作警报声音。如果指定“default”,则应播放默认声音。
答案 1 :(得分:1)
是的,在单一通知点击中,您将只获得与该通知相关的详细信息和信息词典,我不认为您可以一次获得所有通知详细信息,您可能需要将数据存储为当您收到IT时,如果您想使用它。