【发布时间】:2015-12-29 07:55:51
【问题描述】:
我尝试通过解析网站从我的网站接收自定义通知。
代码 didReceiveRemoteNotification :
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
PFPush.handlePush(userInfo)
if application.applicationState == UIApplicationState.Inactive {
PFAnalytics.trackAppOpenedWithRemoteNotificationPayload(userInfo)}
这是我从解析网站收到的 JSON:
[aps: {
alert = "test adirax";
sound = default; }]
它对我很有效,并且会显示通知。但是,当我尝试从我的网站推送数据时,通知无法显示/弹出。
这是我的 JSON 的样子:
{"aps": {"alerts" : "test",
"links": "",
"sounds": "default"}}
我尝试打印(userInfo),结果是我得到了上面的所有数据,但是没有通知。
我想我缺少一些转换数据的代码?
信息
对于具体信息,我尝试通过订阅“频道”接收来自 parse.com 的通知。所以这不是本地通知或其他。
添加代码添加(根据我的 JSON 类型)
if let launchOptions = launchOptions {
let userInfo = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey] as? [NSObject: AnyObject]
let aps = userInfo!["aps"] as? [NSObject: AnyObject]
let alert1 = aps!["alerts"] as? String
let link1 = aps!["links"] as? String
}
还有这个:
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
PFPush.handlePush(userInfo)
if application.applicationState == UIApplicationState.Inactive {
PFAnalytics.trackAppOpenedWithRemoteNotificationPayload(userInfo)
}
let aps = userInfo["aps"] as? [NSObject: AnyObject]
let alert1 = aps!["alerts"] as? String
let link1 = aps!["links"] as? String
print(userInfo)
print("success")
}
当我一一调试时,我成功收集了所有数据,但是我仍然错过了显示的通知?
已解决第 1 部分 到目前为止,我设法获取数据并将通知推送出去,但这只是在我打开应用程序时。代码:
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
PFPush.handlePush(userInfo)
if application.applicationState == UIApplicationState.Inactive {
PFAnalytics.trackAppOpenedWithRemoteNotificationPayload(userInfo)
}
let notifiAlert = UIAlertView()
let aps = userInfo["aps"] as? [NSObject: AnyObject]
let alert1 = aps!["alerts"] as? String
let link1 = aps!["links"] as? String
notifiAlert.title = alert1!
notifiAlert.message = link1
notifiAlert.addButtonWithTitle("OK")
notifiAlert.show()
print(userInfo)
print("success")
}
我使用了本地通知技巧,但是当我不使用应用程序时如何弹出通知?
【问题讨论】:
标签: ios json xcode swift swift2