融云 SDK 中新增了 deleteMessages 方法,用于删除某个会话中的所有消息,同时会整理压缩数据库,减少占用空间,此方法不可频繁循环调用。
方法如下:
/*!
删除某个会话中的所有消息
@param conversationType 会话类型,不支持聊天室
@param targetId 目标会话ID
@param successBlock 成功的回调
@param errorBlock 失败的回调
@discussion 此方法删除数据库中该会话的消息记录,同时会整理压缩数据库,减少占用空间
*/
- (void)deleteMessages:(RCConversationType)conversationType
targetId:(NSString *)targetId
success:(void (^)())successBlock
error:(void (^)(RCErrorCode status))errorBlock;
实现方式,可参考 SealTalk 会话中“清除聊天记录”功能,如图:
同时 SealTalk 中实现了清除 SDK 中缓存图片的功能,开发者可参考融云 SealTalk 中的功能实现,功能位置: “SealTalk - 我 - 帐号设置 - 清除缓存” ,如图:
注:融云的缓存文件及图片存放在 Library/Caches/RongCloud 下