Parse.com推送通知不过滤Android的频道

时间:2015-02-05 09:17:26

标签: android parse-platform push-notification

在我的聊天应用中,我使用Parse.com进行推送通知。当应用程序启动时,它会订阅parse.com Push以获取自己的频道,如此

ParsePush.subscribeInBackground("users_" + userId);

问题是parse.com应该排除从目标用户频道发送邮件的用户。因此,用户不应该收到自己的消息的推送通知。我检查了parse.com仪表板,它告诉我我的用户频道没有包含在我的留言广播中。但是我仍然会收到有关我自己的消息的推送通知。

从Parse.com仪表板获取消息:

TARGETING
channels includes any of "users_8", "users_69", "users_121", "users_53", "users_76", "users_94" or "users_153"
deviceType is any of "ios", "android", "winphone" or "js"
SENDING TIME
February 5th, 2015 at 3:19 PM

EXPIRATION
None

FULL TARGET
{ "channels": { "$in": [ "users_8", "users_69", "users_121", "users_53", "users_76", "users_94", "users_153" ] }, "deviceType": { "$in": [ "ios", "android", "winphone", "js" ] } }

FULL DATA
{ "sound": "chime", "badge": "Increment", "group_id": 96, "content-available": 1, "type": "message", "alert": "group nikon: vjvuvu" }

1 个答案:

答案 0 :(得分:0)

得到了Parse技术支持的答案:

这部分是由您选择的数据模型引起的。安装不是用户的替代品,它应该是一个与其相关的安装的用户集合。

但是,您应该能够通过如下构建查询并基于以下两个假设来完成此工作:

  1. 假设发送用户具有objectId V0A5U2fx7H
  2. 假设邮件已发送至聊天室users_69
  3. 所以你现在查询'channels包含字符串users_69'的位置,而objectId不等于V0A5U2fx7H,这是发送用户的ID。