文档中心
IM 即时通讯
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 即时通讯
  • 消息相关
  • 导出导入消息

导出导入消息

更新时间:2024-04-25 20:28

功能简介

凭借 ZIM SDK,您可以将当前用户客户端的本地聊天记录(单聊消息和群聊消息)导出作为备份,可用于更换设备时迁移聊天记录,或恢复被删除的消息。

强烈建议开发者在迁移消息过程中对备份文件进行加密,以免泄露用户数据。

前提条件

在实现“导出导入消息”功能之前,请确保:

  • 已在 ZEGO 控制台 创建项目,获取到了接入 ZIM SDK 服务所需的 AppID、AppSign。ZIM 服务权限不是默认开启的,使用前,请先在 ZEGO 控制台 自助开通 ZIM 服务(详情请参考控制台的 服务配置 - 即时通讯 - 开通服务),若无法开通 ZIM 服务,请联系 ZEGO 技术支持开通。
  • 已集成 ZIM SDK,详情请参考 快速开始 - 实现基本收发消息 的 “2 集成 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) {
         // 导入结果回调
    }

 });
本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈