我目前正在使用parse.com在我的移动应用中设置推送通知。我有它工作,所以当在客户端上完成某些事情时,会创建推送通知并在每个订阅的频道上发送。
唯一的问题是,我不希望生成推送通知的客户端获得推送通知。我想我需要做这样的事情:
ParseQuery pushQuery = ParseInstallation.getQuery();
pushQuery.whereEqualTo("channels", "Everyone");
pushQuery.whereNotEqualTo("user", thisDevice);
但我无法找到正确的方法。
答案 0 :(得分:0)
根据此处的文档:
https://parse.com/docs/push_guide#sending-queries/Android
第一步是在您的安装中存储对当前用户的引用,如果您还没有:
// Associate the device with a user
ParseInstallation installation = ParseInstallation.getCurrentInstallation();
installation.put("user",ParseUser.getCurrentUser());
installation.saveInBackground();
完成后,您可以按照下一节推送使用查询(假设您正在进行客户端推送):
// Create our Installation query
ParseQuery pushQuery = ParseInstallation.getQuery();
pushQuery.whereEqualTo("channels", "Everyone");
pushQuery.whereNotEqualTo("user", ParseUser.getCurrentUser());
// Send push notification to query
ParsePush push = new ParsePush();
push.setQuery(pushQuery); // Set our Installation query
push.setMessage("Hello world!");
push.sendInBackground();