有更新时解析 Livequery 更改不打印

Parse Livequery changes not printing when there's an update

当我开始使用解析实时查询时,我从一开始就知道这将是一个挑战。看到有多种方法可以创建实时查询。当我早期设置服务器时,我用来监听更新的代码如下所示:

let liveQueryClientMessage = ParseLiveQuery.Client()
    qMessages.whereKey("toUser", equalTo: (PFUser.current()?.objectId!)! as String)
    messageSubscription = liveQueryClientMessage.subscribe(qMessage).handle(Event.created){ _, message in
        //prepare a local notification alert
        print("object updated")
    }

然而,这似乎不再正常运行。所以我查看了解析实时查询文档,看看是否有一个工作示例,发现这会使服务器使用以下代码 "Create new client: ":

let qMessages = PFQuery(className: "Messages")
    qMessages.whereKey("toUser", equalTo: (PFUser.current()?.objectId!)! as String)
    let subscription = Client.shared.subscribe(qMessages)
    subscription.handle(Event.updated){ query, event in
        print("object updated")
    }

但是我无法显示打印消息...我是不是漏掉了什么?我相信我正在使用最新版本的 parselivequery:

pod 'ParseLiveQuery'

更新 1:所以我尝试重建服务器,但问题似乎仍然存在。我将尝试使用解析查询并查看其过滤器是否... UPDATE2:我回滚了 podfile 的版本,以防只是获取最新的 master 分支时出现问题。还没有修复...

解决此问题的方法与定义所有内容的位置有关。请参阅这个 Whosebug 问题的 awnser: 那里也有足够的解释。