Ios 在didFinishLaunchingWithOptions中解析推送通知负载nil

Ios 在didFinishLaunchingWithOptions中解析推送通知负载nil,ios,swift,parse-platform,notifications,Ios,Swift,Parse Platform,Notifications,参数:iOS 9.1、iphone 5S、xcode 7.1、Swift 2、Parse SDK 1.9.0 我正在尝试捕获通过解析发送的推送通知消息,用于接收设备的所有状态(即前台/后台/未加载/设备已关闭)。在所有情况下,我的设备都会收到推送通知,但在某些情况下,负载/用户信息字典不会到达 适用于以下情况: func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObjec

参数:iOS 9.1、iphone 5S、xcode 7.1、Swift 2、Parse SDK 1.9.0

我正在尝试捕获通过解析发送的推送通知消息,用于接收设备的所有状态(即前台/后台/未加载/设备已关闭)。在所有情况下,我的设备都会收到推送通知,但在某些情况下,负载/用户信息字典不会到达

适用于以下情况:

func application(application: UIApplication,  didReceiveRemoteNotification userInfo: [NSObject : AnyObject],  fetchCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void)  
在AppDelegate中调用(例如前台应用程序),正确接收userInfo字典,我可以保存消息、发出通知并将其显示在适当的ViewController中

然而,在哪里

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
在AppDelegate中调用(例如,如果设备关闭,推送通知横幅被“刷”以打开应用程序),则从以下语句获得的有效负载:

if let notificationPayload:NSDictionary = launchOptions?[UIApplicationLaunchOptionsRemoteNotificationKey] as? NSDictionary
始终为零,我无法完成与上述相同的操作

生成推送的语句有:

push.setData(["alert" : message, "badge": "Increment", "content-available": NSNumber(integer: 1)])
push.sendPushInBackground() 
其中message是包含要显示的消息的字符串

我读过很多关于SO等的帖子&尝试了各种方法来解决这个问题,但找不到解决办法。如有任何想法/帮助,将不胜感激。如果有必要,我可以发布更多代码,但我基本上遵循解析示例和其他SO帖子中的标准方法


RB

如果没有看到代码的其余部分,很难说问题出在哪里,但我猜在注册通知时出现了一些问题。如果未正确完成通知注册,则应用程序将忽略payloadRussell。谢谢。谢谢你的答复。我做了更多的实验/阅读,对行为有了更好的理解。我认为这是因为我总是在测试之间强制关闭应用程序,再加上它仍在接受无声推送。这似乎表现为应用程序图标被用来打开应用程序,即有效负载被故意设置为零。如果我不强制关闭应用程序,当设备重新激活时,我会得到有效负载(我相信通过DidReceiveEmotentification)。现在我需要做的就是处理实际按下应用程序图标的情况。