【问题标题】:Parse Server LiveQuery Subscribe for Multiple contacts and Events (Android)解析服务器 LiveQuery 订阅多个联系人和事件 (Android)
【发布时间】:2017-04-28 21:37:23
【问题描述】:

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

    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 Application Launches。

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

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

提前致谢

【问题讨论】:

  • 在创建订阅之前,您是否在“查询”中调用了这两个调用?
  • 不,我没有使用

标签: android livequery


【解决方案1】:

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

您应该查看的查询是:“whereContainedIn”

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

由于同一个键上有两个“whereEqualTo”约束——这自相矛盾——Parse 只会应用一个约束。

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多