使用应用程序 didReceiveRemoteNotification 处理程序获取推送通知消息
Posted
技术标签:
【中文标题】使用应用程序 didReceiveRemoteNotification 处理程序获取推送通知消息【英文标题】:using the app didReceiveRemoteNotification handler to get the push notification message 【发布时间】:2012-07-31 21:45:19 【问题描述】:是否可以使用此应用程序的实现接收远程通知方法来获取通过远程通知向用户显示的消息?
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
NSString *message;
// code to set the string "message" to the remote notification's message...
【问题讨论】:
【参考方案1】:我知道这是一个老问题,但我一直在绞尽脑汁试图解决这个问题,所以我想我会分享这些知识以节省其他人的时间。
首先,您应该为您的文本创建一个 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
【讨论】:
【参考方案2】:您可以通过访问在 userInfo 字典中解析的 JSON 来获取它,如果您像这样打印出您的 userInfo Dicitonary 对象:
NSLog(@"userInfo: %@", userInfo);
您将获得所需的所有信息。
【讨论】:
以上是关于使用应用程序 didReceiveRemoteNotification 处理程序获取推送通知消息的主要内容,如果未能解决你的问题,请参考以下文章
应用程序加载器使用 Signiant 成功,但使用 DAV 失败
如何使用 swift 在应用程序委托函数中使用 toast 方法
如何使用 Innosetup 创建不应使用添加/删除程序注册应用程序的安装程序?