如果采用queryMessagesFromServerWithLimit从服务端拉去消息的话,聊天界面会先白屏一段时间,然后显示聊天记录。如果通过queryMessagesFromCacheWithLimit从本地缓存同步去取的话,能立即展示数据。接口描述说两端数据会有同步机制,所以想问下,聊天界面首次数据源的加载能完全使用queryMessagesFromCacheWithLimit方法吗,毕竟白屏一段时间的效果很难接受,但只使用这个方法去展示记录,会不会有坑,比如聊天记录不全什么的。
queryMessagesFromServerWithLimit
queryMessagesFromCacheWithLimit
@xiaoxu
你好,可以使用 queryMessagesFromCacheWithLimit 方法加载聊天记录,SDK 是有算法保证本地与云端聊天记录是同步的。
「关于聊天记录的展示」问题和您确定一下。
我们提供的聊天记录的缓存功能是为了提高查询效率,SDK 默认聊天缓存路径是到 Library/Caches 目录下,这个目录由系统管理,如果内存告急,是会被系统清理的。
如果您的需求是长期稳定缓存聊天的记录,建议您自己做消息的缓存。