2016-07-29 229 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找到。