2016-12-07 9 views
3

私はuserInfoが必要なデータを表示していない理由を理解しようとしています。私はのUserInfoを印刷するとき 私はこれを取得:私はuserInfo["alert"]をしようとするときuserInfo通知データを取得できませんか?

[AnyHashable("aps"): { 
    alert = "test account \ni'm running late"; 
    badge = 11; 
    sound = "bingbong.aiff"; 
}] 

は、しかし、それはnilを返します。私はuserInfo["aps"]["alert"]を含むすべてを試しましたが、まだ何もありません。私は今何時間も立ち往生している。私は誰かが助けることを望む。うわーそんなにありがとう、あなたがuserInfoダンプに見ることができるように

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any]) { 
    //PFPush.handle(userInfo) 
    if (userInfo["badge"] != nil) { 
     let badgeNumber: Int = userInfo["badge"] as! Int 
     application.applicationIconBadgeNumber = badgeNumber 
    } 
    if application.applicationState == .inactive { 
     PFAnalytics.trackAppOpenedWithRemoteNotificationPayload(inBackground: userInfo, block: nil) 
    } else if application.applicationState == .active { 
     let notificationManager = LNRNotificationManager() 
     notificationManager.showNotification(title: "Test", body: "", onTap: {() -> Void in 
      notificationManager.dismissActiveNotification(completion: {() -> Void in 
       print("Notification dismissed") 
      }) 
     }) 
     print(userInfo) 
     NotificationCenter.default.post(name: NSNotification.Name(rawValue: "didRecieveNotificationWhileInApp"), object: nil) 
    } 
} 

答えて

3

badgeキーaps

if let aps = userInfo["aps"] as? [String:Any] { 
    let badgeNumber = aps["badge"] as! Int 
    application.applicationIconBadgeNumber = badgeNumber 
} 
+0

のための辞書である:

は、ここに私の完全な機能です。あなたは私がこれをうまく動かすためにどれくらいの時間をかけているのか分かりません。 –

関連する問題