无法使用Parse Push发送数据

时间:2015-10-05 07:30:31

标签: android json parse-platform notifications push

我正在尝试使用Parse Push向我自己的设备发送推送通知。但是,每当我尝试将JSONObject设置为数据时,我的设备都不会收到任何内容。我尝试过setMessage()并且它有效。知道什么是错的吗?

                ParseQuery pushQuery = ParseInstallation.getQuery();
                pushQuery.whereEqualTo("username", "abc@zzz.com");

                ParsePush push = new ParsePush();

                JSONObject obj= null;
                try {
                    obj = new JSONObject("{\"channel\":\"nom_nom_CH@\",\"cat\":\"WP\"}");
                    obj.put("action","com.parse.starter.UPDATE_STATUS");
                } catch (JSONException e) {
                    e.printStackTrace();
                }

                push.setQuery(pushQuery);
                push.setData(obj);
                push.sendInBackground();
            }

对于接收器

@Override
public void onPushOpen(Context context, Intent intent) {
    Bundle extras = intent.getExtras();
    String jsonData = extras.getString("com.parse.Data");

    JSONObject jsonObject;
    try {
        jsonObject = new JSONObject(intent.getExtras().getString("com.parse.Data"));
        String channel = jsonObject.getString("channel");
        Log.d("Channel", channel);
    } catch (JSONException e) {
        e.printStackTrace();
    }


    Intent i = new Intent(context, Activity_Invite_nom.class);

    i.putExtras(intent.getExtras());
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(i);
}

1 个答案:

答案 0 :(得分:0)

我已经弄明白我的代码存在问题。事实证明,我只需要实现这两行

                        data.put("alert", "" + fullname + " invited you to nom!");
                        data.put("action", Parse_Receiver.KEY_PUSH_CHANNEL);

感谢大家的帮助