提交工单
咨询集成、功能及报价等问题
凭借 ZIM SDK,您可以将当前用户客户端的本地聊天记录(单聊消息和群聊消息)导出作为备份,可用于更换设备时迁移聊天记录,或恢复被删除的消息。
强烈建议开发者在迁移消息过程中对备份文件进行加密,以免泄露用户数据。
在实现“导出导入消息”功能之前,请确保:
创建 ZIM 对象并登录后,调用 exportLocalMessages 接口,传入一个绝对路径,将当前用户的聊天消息保存到该目录。
导出进度,将通过 ZIMMessageExportingProgress 回调接口返回。
导出操作结果,将通过 ZIMMessageExportedCallback 回调接口返回。
本接口导出的消息文件名称为 zim_backup_msg_text。如果多次调用本接口时,传入的路径相同,ZIM SDK 会自行将旧的 zim_backup_msg_text 文件更名,以确保最新导出的文件名称为 zim_backup_msg_text。
// 导出消息
ZIMMessageExportConfig config = new ZIMMessageExportConfig();
zim.exportLocalMessages("folderPath", config, new ZIMMessageExportedCallback() {
@Override
public void onMessageExportingProgress(long exportedMessageCount, long totalMessageCount) {
// 导出进度回调
}
@Override
public void onMessageExported(ZIMError errorInfo) {
//导出结果回调
}
});
创建 ZIM 对象并登录后,调用 importLocalMessages 接口,传入备份文件所在目录的绝对路径,即可导入消息。
ZIM SDK 默认读取目录中名称为 zim_backup_msg_text 的文件。如果该路径下存在多份备份,请确认待导入的文件名称是否为 zim_backup_msg_text。
导入进度,将通过 ZIMMessageImportingProgress 回调接口返回。
导入操作结果,将通过 ZIMMessageImportedCallback 回调接口返回。
// 导入消息
ZIMMessageImportConfig config = new ZIMMessageImportConfig();
zim.importLocalMessages("folderPath", config, new ZIMMessageImportedCallback() {
@Override
public void onMessageImportingProgress(long importedMessageCount, long totalMessageCount) {
// 导入进度回调
}
@Override
public void onMessageImported(ZIMError errorInfo) {
// 导入结果回调
}
});
联系我们
文档反馈