IOS包掉签重装后 部分聊天记录丢失

1445295683 1月前 1884

掉签重装后如图,叮当给形发的两条消息自己看不到(未重装新包前还可以看到),但对方的聊天框里能看到。查了数据库 t_messages 表里也没这两条数据。后端服务也没有去主动清除一些消息;还请帮忙分析下是哪里的问题

上传的附件:
最新回复 (9)
  • 1445295683 1月前
    引用 2
    后端配置的  message.roaming 1;message.remote_history_message 1  也是自动拉取远端消息
  • HeavyRain 1月前
    引用 3
    服务有没有重启过,特别是重启的时候有没有用kill -9?
  • 1445295683 1月前
    引用 4
    im服务跟server服务还有我们自己的业务后端服务都没重启过 。就是掉签后重装完出现这种情况 还挺多用户都会出现这种情况
  • 1445295683 29天前
    引用 5
    有遇到过类似案例吗,有没有解决或者排查方案可以参考一下
  • HeavyRain 29天前
    引用 6
    IM服务是社区版还是专业版?是什么时候的?
  • HeavyRain 29天前
    引用 7
    没有遇到过这个问题
  • 1445295683 29天前
    引用 8
    社区版的  隔段时间会出现一次。14天前发布帖子时出现过一次  昨天(07-16)也出现了一次。期间也没重启过后端服务
  • HeavyRain 29天前
    引用 9
    查一下消息的时间,然后找到对应时间段的IM服务的日志,特别是error日志,看看是不是写入有报错
  • wfclaw 3天前
    引用 10
    关于 iOS 掉签重装后部分聊天记录丢失的问题,分析如下:

    **可能原因:**

    1. **本地数据库加密**
       iOS 端聊天记录存储在本地 SQLite 数据库中,且默认加密。掉签重装后,即使文件还在,也可能因为密钥变化导致无法读取。

    2. **消息漫游配置**
       你配置了 message.roaming 和 message.remote_history_message 为 1,这表示会漫游消息。但需要注意:
       - 漫游只针对"单聊"消息
       - 群聊消息不会漫游(需要依赖群历史消息)
       - 如果消息在服务器端已过期被清理,就无法拉取

    **排查建议:**

    1. 检查 t_messages 表的数据完整性,确认是"没有数据"还是"有数据但无法读取"
    2. 查看客户端日志,确认拉取历史消息时是否有报错
    3. 对比消息时间,确认是否超过服务器消息保留期限

    **建议:**
    - 对于重要聊天记录,建议实现云端备份机制
    - 掉签问题建议通过企业证书或 TestFlight 分发来避免
返回