向特定用户发送解析推送通知

时间:2014-10-07 17:23:19

标签: java android push-notification parse-platform cloud

我正在编写关于共享不同内容的Android应用程序。现在我开发社交网络,当一个用户添加新朋友时,发送用户添加你的Parse Push通知。

我使用Parse SDK,现在我不知道怎么做。

我试试这个:

ParseInstallation installation = ParseInstallation.getCurrentInstallation();
installation.put("userId",id);
try {
    installation.save();

这将在Parse Data的Installation类中创建userId列。 (我看到Parse Data和userId列是来自用户的正确id)

接下来我做:

   //Create our Installation query
   ParseQuery<ParseInstallation> pushQuery = ParseInstallation.getQuery();
   pushQuery.whereEqualTo("userId",ParseUser.getCurrentUser().getObjectId());

   // Send push notification to query
   ParsePush push = new ParsePush();
   push.setQuery(pushQuery); // Set our Installation query
   push.setMessage("Willie Hayes injured by own pop fly.");
   push.sendInBackground();

我创建了一个查询,用于比较userId colum(包含添加你的用户的userId)和当前的ParseUser,但Push不发送,没有人收到。

请帮帮我。

感谢。

1 个答案:

答案 0 :(得分:1)

我所做的是将设备注册到与用户对应的频道。在Swift中,我这样做了,但在Android中它会非常相似。这意味着用户“userId”将订阅频道“user_userId”。

let currentInstallation = PFInstallation.currentInstallation()
currentInstallation.channels = ["user_" + PFUser.currentUser().objectId]
currentInstallation.saveInBackground()

然后,当您想要发送推送时,将其发送到频道“user_userId”。