簡體   English   中英

從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") func didReceiveRemoteNotification(notification: NSDictionary?) {}方法以顯示在通知彈出窗口中。

在Xcode中打開應用程序,然后轉到CDVMFPPush.swift文件,然后找到func didReceiveRemoteNotification(notification: NSDictionary?) CDVMFPPush.swift func didReceiveRemoteNotification(notification: NSDictionary?)

在上面的函數中添加以下行

notif["url"] = notification?.valueForKey("url")

希望這會幫助你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM