我在写一个包含聊天的应用程序。存储消息的最佳做法是什么,有时由图像和对话框组成?一方面将它们保存在核心数据中会更好,但用户可以从服务器获取消息。另一方面,我可以使用缓存,但没人知道应该存储多长时间的消息。我无意尝试了解vk.com应用程序如何处理这个问题。 你会如何处理? Objective-C代码的任何样本都是受欢迎的。在IOS中存储聊天消息和对话的最佳方式
-1
A
回答
3
我有一个社交应用程序。我将核心数据中的聊天消息与他们所属的聊天室保持关系,因此通过聊天室的管理对象获取一组消息非常简单。如果有通知进入,我会在后台更新消息,在聊天室启动时,我会ping服务器以获取比我最近的消息更新的消息。
对于像图像这样的媒体,您可以将它们作为二进制数据存储在消息实体中,最多不超过1MB。之后,您应该将它们存储在目录中,并将URL保留为消息实体中的属性。
核心数据的另一个真正优势是它可以很容易地管理你的内存。您可以获取超过特定时间的任何消息/关联媒体,并将其全部删除。由于您的服务器是您的邮件的主要存储库,如果用户再次打开该聊天室,则可以在需要时下载最后一批邮件(并将其再次存储到Core Data中)。但是对象的实际访问权限都是基于NSPredicate的,这使得它非常容易查询。
0
相关问题
- 1. 如何从聊天对话中获取最新消息?
- 2. 聊天应用程序 - 最佳方式
- 3. 客户端从服务器检索聊天消息的最佳方式?
- 4. 通知离线用户消息的最佳方式Android Xmpp使用openFire聊天
- 5. 如何优化聊天消息在数据库中的存储
- 6. 的iOS XMPPFramework - 房/聊天消息历史
- 7. 将聊天消息存储在MySql表中
- 8. 如何在mysql数据库中存储聊天消息?
- 9. 在Firebase中管理聊天频道的最佳方式
- 10. Quickblox iOS下载聊天消息附件
- 11. ios聊天消息应用程序
- 12. 用对话框存储网站数据的最佳方式
- 13. 在用户之间存储离线消息的最佳方法?
- 14. Laravel聊天消息。保存图像发送聊天?
- 15. 存储用户消息的最佳方式:MySQL数据库或其他地方?
- 16. 在Quickblox中以编程方式删除一对一聊天记录消息?
- 17. 在Django中实现聊天的最佳实践(存储在线用户)
- 18. 在数据库中存储一对多列的最佳方式
- 19. 在Memcached中存储ActiveRecord对象的最佳方式是什么?
- 20. 聊天服务器:什么是保存对话日志的最佳(优化)方式
- 21. redis-我应该使用redis来存储聊天消息吗?
- 22. 存储聊天应用程序数据(消息)
- 23. 在简单的聊天应用程序中存储不同类型的“消息”
- 24. Rails api PUSH聊天消息
- 25. javascript聊天显示消息
- 26. 发送聊天消息
- 27. 在单个数据库表中存储不同聊天的消息
- 28. 如何在聊天应用程序中存储上次查看的消息
- 29. 在网页上显示通知和消息的最佳方式?
- 30. 这是自动刷新聊天页面的最佳方式
为什么不在核心数据中使用外部存储选项? –
@JoeDaniels好点。只需在属性检查器中检查该选项,让我们的核心数据为您管理更大的数据块。绝对要走的路。 –