1
0
上面显示的是跟踪/获取XMPP服务器的花名册请求填充的信息(无论是自动获取还是使用XMPPRoster“fetchRoster”方法手动获取(假设您设置了CoreData存储花名册数据的方式,而不是内存)。 一旦对花名册获取的响应返回(iq结果),XMPPRoster实例中的代理将捕获并使用给定的存储选项放置到位。如果您正在使用的服务器符合XMPP rfc,那么这应该在返回时自动发生。 例如,在XMPPRoster.didReceiveIQ()中,可以看到对“[xmppStorage handleRosterItem:item xmppStream:xmppStream]”的调用。这是处理 您可以在此处扩展存储(例如XMPPRosterCoreDataStorage和XMPPUserCoreDataStorage),并将其设置为向实体添加其他信息。例如,XMPPUserCoreDataStorage有一个override“(void)didUpdateWithItem:(NSXMLElement*)item”,您可以在其中定义属性以指向另一个实体。在这里,您将复制现有的数据模型,并将自己的属性添加到其中-使用上面的override来输入它们。 至于消息,取决于MUC还是1:1,但它们也使用不同的托管对象。XEP-0045是存储MUC消息的工具,您可以尝试将MUC消息附加到其中的用户最后一条消息,以及1:1存储的XMPPMessageArchiving,但如果您需要持续捕获另一个用户的最后一条信息,则仍需要服务器对此提供支持,除非您只讨论每个会话(然后可以将其存储在本地以供显示)。 |
WkWk · Apple Watch动作通知不起作用 2 年前 |
Otavio Miguel · 在手机中保留我自己未发布的ios应用 2 年前 |
Nico Passaglia · 移动键盘向上移动站点 6 年前 |