使用应用程序didReceiveRemoteNotification处理程序来获取推送通知消息

时间:2012-07-31 21:45:19

标签: objective-c notifications push-notification apple-push-notifications

是否有可能通过远程通知获取显示给用户的消息,使用此应用程序的实现确实收到了远程通知方法?

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
        NSString *message;
        // code to set the string "message" to the remote notification's message...
}

2 个答案:

答案 0 :(得分:2)

我知道这是一个古老的问题,但是我一直绞尽脑汁试图解决这个问题,所以我想我会分享这些知识来节省别人的时间。

首先,您应该创建文本的NSString引用,以便稍后可以快速访问它。要做到这一点:

NSString *alertMessage = [[userInfo objectForKey:@"aps"] objectForKey:@"alert"];

如果您需要为本地通知执行此操作,请执行以下操作:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
NSDictionary *dict = [notification userInfo];

NSString *alertMessage = [[dict objectForKey:@"aps"] objectForKey:@"alert"];

//Do something here
}

答案 1 :(得分:0)

通过访问userInfo Dictionary中解析的JSON来获取它,如果你打印出你的userInfo Dicitonary对象:

NSLog(@“userInfo:%@”,userInfo);

您将获得所需的所有信息。