我正在构建iOS应用并使用图层。 根据文档,当消息的推送通知进入时,您不应立即切换到对话,因为消息可能尚未完成同步。因此,您调用同步方法并将其传递给完成函数,如下所示:
self.layerClient!.synchronizeWithRemoteNotification(userInfo, completion: { (conversation, message, error) in
if (conversation != nil || message != nil) {
NSNotificationCenter.defaultCenter().postNotificationName(CXOConstants.Notifications.BadgeChatTabNotification.rawValue, object: nil, userInfo: userInfo)
let msgPart = message?.parts.first
if msgPart?.MIMEType == "text/plain"{
let msgText = String(data: msgPart!.data!,encoding: NSUTF8StringEncoding)
debugPrint("msgText:: \(msgText)")
} else {
debugPrint("The user sent an image")
}
completionHandler(.NewData)
} else {
completionHandler(.Failed)
}
})
问题是,这种方法永远不会被调用。我尝试在synchronizeWithRemoteNotification
方法之外实现相同的逻辑,但是当我切换到对话时,消息显示在对话中需要几秒钟。
可以在这里使用一些帮助来弄清楚为什么这个方法没有被调用。 谢谢:))