2016-07-29 200 views
1

我已將我的雲代碼函數上傳到back4app,並在我的android工作室中調用雲功能,但它會返回無效函數,請幫助我。在back4app服務器解析推送通知

雲碼功能

Parse.Cloud.define('push', function (req, res) 
{ 
    Parse.Push.send(
    { 
     alert: req.params.alert; 
     data: req.params.data; 
    }, 
    { 
     success: function (result) 
     { 
      res.success(result); 
     }, 
     error: function() 
     { 
      res.error("Nothing here"); 
     } 
    }); 
}); 

我的回調函數在Android Studio中

HashMap < String, Object > params = new HashMap < String, Object >(); 
params.put("data", data); 
params.put("alert", "User " + email + " Liked " + getnaeofcommenter + "        comment"); 
ParseCloud.callFunctionInBackground("push", params, new FunctionCallback <Object>() 
{@ 
    Override 
    public void done(Object o, ParseException e) 
    { 
     if (e == null) 
     { 
      Toast.makeText(context, "Push notification sent", Toast.LENGTH_SHORT).show(); 
     } 
     else 
     { 
      e.getMessage().toString(); 
     } 
    } 
}); 

回答

0

對於我所知道的關於推送通知,通常需要在裏面放置了「警報」「數據」。正如你可以在Parse關於Pushes的文檔中看到的:

如果你想發送的不僅僅是一條消息,你可以設置數據字典中的其他字段。有一些保留的字段具有特殊的含義。

提醒:通知的消息。

徽章:(僅適用於iOS)應用程序圖標右上角顯示的值。這可以設置爲一個值或遞增以便將當前值遞增1.

聲音:(僅限iOS)應用程序包中聲音文件的名稱。

content-available :(僅限iOS)如果您是使用iOS7中引入的遠程通知背景模式(a.k.a.「Background Push」)編寫應用程序,請將此值設置爲1以觸發後臺下載。

類別:(僅適用於iOS)此推送通知的UNNotification類別的標識。

uri :(僅限Android)包含URI的可選字段。當通知打開時,將啓動與打開URI相關的活動。

title:(Android,Windows 8,&僅限Windows Phone 8)顯示在Android系統托盤或Windows 8 Toast通知中的值。

因此,對於您的雲代碼,也許你應該安排這樣的:

Parse.Push.send({ 
    data: { 
    alert: req.params.alert; 
    } 
}, { 
    success: function(result) { 
    res.success(result); 
    }, 
    error: function(error) { 
    res.error("Nothing here"); 
    } 
}); 

所有這些信息可以在Parse's Javascript Documentation找到。