在ios应用程序中的xmpp服务器中存储聊天历史记录
有没有办法将聊天记录永久保存到xmpp服务器。 i、 e如果我卸载应用程序并再次安装,我是否能够从服务器恢复所有聊天 我使用以下代码:-在ios应用程序中的xmpp服务器中存储聊天历史记录,ios,xmpp,Ios,Xmpp,有没有办法将聊天记录永久保存到xmpp服务器。 i、 e如果我卸载应用程序并再次安装,我是否能够从服务器恢复所有聊天 我使用以下代码:- XMPPMessageArchivingCoreDataStorage *_xmppMsgStorage = [XMPPMessageArchivingCoreDataStorage sharedInstance]; NSManagedObjectContext *moc = [_xmppMsgStorage mainThreadManagedO
XMPPMessageArchivingCoreDataStorage *_xmppMsgStorage = [XMPPMessageArchivingCoreDataStorage sharedInstance];
NSManagedObjectContext *moc = [_xmppMsgStorage mainThreadManagedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"XMPPMessageArchiving_Message_CoreDataObject"
inManagedObjectContext:moc];
NSFetchRequest *request = [[NSFetchRequest alloc]init];
[request setEntity:entityDescription];
// [request setFetchLimit:20];
NSError *error;
NSString *predicateFrmt = @"bareJidStr == %@";
NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateFrmt, userJid];
request.predicate = predicate;
NSArray *messages = [moc executeFetchRequest:request error:&error];
但在这种情况下,如果我卸载应用程序,消息将被删除。您可以将其保存在钥匙链中,即使您删除应用程序,数据也将被保存。但在钥匙链中保存大量数据不是一个好主意,因为这样会有点慢。@rckoenes感谢您的快速回复。还有其他方法吗?因为钥匙链有助于存储用户名、密码等有限的数据。我需要保存文本、图像、音频文件等,因为如果应用程序被删除,沙盒将被删除。由于您只能在沙箱中保存文件。如果您将日志保存在iCloud中,这可能会起作用,但这也不是最佳解决方案。@rckoenes我们可以使用API存储历史记录。但我无法理解应该以何种格式存储数据或将数据发送到API?这取决于API。