从 Bluemix 推送通知获取 url 标签值
Getting url tag value from Bluemix push notification
我需要使用 Bluemix Rest API 传递 url 和通知消息。根据文档
{"message": {
"alert": "Notification alert message","url":"test.test.com" }}
上面的 rest 调用应该发送消息和 url。但是当我试图从通知中解析 Json 对象时,没有发送 url.
的标签
MFPPush.registerDevice(settings, success, failure);
var notification = function(notif){
alert (JSON.stringify(notif));
};
MFPPush.registerNotificationsCallback(notification);
}}
以上是我使用 Cordova 应用程序从 javascript 注册通知的代码。
下面的代码显示了 iOS 上的 AppDelegate 代码:
-(void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
[[CDVMFPPush sharedInstance] didReceiveRemoteNotification:userInfo];
}
当我在 AppDelegate 中为 userInfo 放置一条日志语句时,会显示以下日志:
{
aps = {
alert = {
"action-loc-key" = "<null>";
body = test;
};
};
payload = "{\"nid\":\"5a379af\",\"tag\":\"Push.ALL\"}";
url = URL;
}
它正在字典中显示。但是如何从中获取 url 值呢?
@Rahul 你必须在 func didReceiveRemoteNotification(notification: NSDictionary?) {}
方法中添加 notif["url"] = notification?.valueForKey("url")
才能在通知弹出窗口中显示。
在 Xcode 中打开应用程序并转到 CDVMFPPush.swift
文件并找到 func didReceiveRemoteNotification(notification: NSDictionary?)
在上面的函数中添加以下行
notif["url"] = notification?.valueForKey("url")
希望对您有所帮助。
我需要使用 Bluemix Rest API 传递 url 和通知消息。根据文档
{"message": {
"alert": "Notification alert message","url":"test.test.com" }}
上面的 rest 调用应该发送消息和 url。但是当我试图从通知中解析 Json 对象时,没有发送 url.
的标签 MFPPush.registerDevice(settings, success, failure);
var notification = function(notif){
alert (JSON.stringify(notif));
};
MFPPush.registerNotificationsCallback(notification);
}}
以上是我使用 Cordova 应用程序从 javascript 注册通知的代码。
下面的代码显示了 iOS 上的 AppDelegate 代码:
-(void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
[[CDVMFPPush sharedInstance] didReceiveRemoteNotification:userInfo];
}
当我在 AppDelegate 中为 userInfo 放置一条日志语句时,会显示以下日志:
{
aps = {
alert = {
"action-loc-key" = "<null>";
body = test;
};
};
payload = "{\"nid\":\"5a379af\",\"tag\":\"Push.ALL\"}";
url = URL;
}
它正在字典中显示。但是如何从中获取 url 值呢?
@Rahul 你必须在 func didReceiveRemoteNotification(notification: NSDictionary?) {}
方法中添加 notif["url"] = notification?.valueForKey("url")
才能在通知弹出窗口中显示。
在 Xcode 中打开应用程序并转到 CDVMFPPush.swift
文件并找到 func didReceiveRemoteNotification(notification: NSDictionary?)
在上面的函数中添加以下行
notif["url"] = notification?.valueForKey("url")
希望对您有所帮助。