解析服务器 LiveQuery 订阅多个联系人和事件 (Android)

Parse Server LiveQuery Subscribe for Multiple contacts and Events (Android)

我正在为 Android 开发聊天应用程序。 我想为 _User Class 中的多个联系人订阅关于用户在线状态的实时查询。

    ParseQuery<ParseObject> query= ParseQuery.getQuery("_User");

        SubscriptionHandling<ParseObject> subscriptionHandling = parseLiveQueryClient.subscribe(query);


        subscriptionHandling.handleEvent(SubscriptionHandling.Event.CREATE,
                new SubscriptionHandling.HandleEventCallback<ParseObject>() {
                    @Override
                    public void onEvent(ParseQuery<ParseObject> query, ParseObject object) {


                    }
                });

此代码适用于所有用户。但我想对选定的用户触发 LiveQuery。 我想做类似的事情...在 运行 时间,WhenEver 应用程序启动。

query.whereEqualsTo("username","USER1");
query.whereEqualsTo("username","USER2");

我正在使用图书馆 编译 'com.parse:parse-livequery-android:1.0.0'

提前致谢

回复晚了一点,希望对遇到同样问题的其他人有所帮助。

您应该查看的查询是:"whereContainedIn"

query.whereContainedIn("username", Arrays.asList("USER1", "USER2"));

由于同一个键有两个 "whereEqualTo" 约束 - 这自相矛盾 - Parse 将只应用一个约束。

更多信息请看:https://docs.parseplatform.org/android/guide/#limits-and-other-considerations

P.S.: 约束的语言也有错字。它应该是 "whereEqualTo",而不是 "whereEqualsTo"。