如何将NSDictionary解析为NSUserDefaults IOS7

如何将NSDictionary解析为NSUserDefaults IOS7,ios,objective-c,nsdictionary,Ios,Objective C,Nsdictionary,在我的应用程序中,我想在UILabel中显示远程通知。因此,我正在尝试将通知消息从“Appdelegate”传递到我的故事板。它不起作用。请告诉我如何解决此问题 我的“Appdelegate”代码: 在我的viewcontroller中,我使用了如下方式 self.message.text = [[NSUserDefaults standardUserDefaults] objectForKey:@"message"]; NSLog (@"message %@", [[NSUserDefau


在我的应用程序中,我想在
UILabel
中显示远程通知。因此,我正在尝试将通知消息从“Appdelegate”传递到我的故事板。它不起作用。请告诉我如何解决此问题

我的“Appdelegate”代码:

在我的viewcontroller中,我使用了如下方式

self.message.text = [[NSUserDefaults standardUserDefaults] objectForKey:@"message"];
  NSLog (@"message %@", [[NSUserDefaults standardUserDefaults] objectForKey:@"message"]);
在上面的数据中,我只需要“警报”值如何获取警报值并存储到数据中请告诉我这是可能的,以及如何实现这一点。我在这里待的时间不长,请给出一些实现这一目标的想法


谢谢。

出于日志记录的目的,
description
方法创建对象的字符串表示形式,但您不会以这种方式使用它来访问对象的内容

来自苹果的文档-

userInfo字典包含值为另一个的aps键 字典。虽然您不需要aps中的信息 字典,您可以使用以下键检索其内容:

警报-该值是警报消息的字符串或 字典有两个键:body和show view。身体的价值 键是一个字符串,包含警报消息和 显示视图键是一个布尔值。如果“显示视图”键的值为 错误,警报的“查看”按钮未显示。默认设置为显示 查看按钮,如果用户点击它,将启动应用程序

徽章-A 指示要从下载的数据项数量的数字 供应商。此号码将显示在应用程序图标上。缺席 badge属性的值表示当前标记 图标应该被删除

声音-应用程序中声音文件的名称 捆绑以作为提示音播放。如果指定了“default”,则 应播放默认声音

所以,你可以使用这个答案中的代码-

嗨,请尝试使用此代码

NSDictionary*dict=userInfo


NSString*messag=[[dict objectForKey:@“message”]objectForKey:@“aps”]objectForKey:@“alert”]

您将其存储为JSON?请查看一些使用基类的教程,例如
NSDictionary
:@3r1d否我只需要将数据存储在NSString中,这些数据都记录在NSString*消息中的值-第一行值,这将帮助我们找到消息的数据类型??
message {
aps =     {
    alert = home;
    badge = 3;
    sound = "";
 };
}
self.message.text = [[NSUserDefaults standardUserDefaults] objectForKey:@"message"];
  NSLog (@"message %@", [[NSUserDefaults standardUserDefaults] objectForKey:@"message"]);
NSDictionary *aps=(NSDictionary *)[userInfo objectForKey:@"aps"];

NSString *message;

id alert = [aps objectForKey:@"alert"];
if ([alert isKindOfClass:[NSString class]]) {
   message = alert;
} else if ([alert isKindOfClass:[NSDictionary class]]) {
   message = [alert objectForKey:@"body"];
}