太长不读: 在换机迁移数据时,不要用小米的换机助手迁移微信数据,而应该用微信自带的迁移功能。
前情
最近换了手机,新机和旧机都是小米系机器,因此迁移时用了自带的换机助手完成了整机数据的迁移。迁移过程本身倒是很正常,甚至自带一个「微信、QQ 数据」的选项,不过因为数据比较多,即使是建立了 WiFi 直连也花了一个多小时。(全部数据体量大概 60 GB)迁移完成后微信点开就直接可以用,稍微看了看聊天记录也都在,自己就以为万事大吉了。
然而,最近因为一些事情,需要翻阅之前用微信收发的图片,这时才发现虽然文字聊天记录迁移完成了,图片倒是只迁移了一部分。点开某个聊天,选择「查找聊天记录 - 图片与视频」,会发现有的图片有问题,缩略图是黑色,而且直接点开会提示「图片无法加载」。整体上,正常的图片和异常无法加载的图片大概是一半一半。这样的迁移结果自然是不可接受的,好在旧机器还没有清理数据,只需要想办法重新迁移一次就好了。
现状
因为发现异常比较晚,此时新机器已经使用一周时间,相当于旧机器上有至一周前的聊天记录+至一周前的聊天文件(完整),新机器上有至今天的聊天记录+至今天的聊天文件(不完整)。任务就变成了如何合并两者的聊天记录和聊天文件,在新机器上得到一个最新且完整的版本。
尝试
首先为了保险,分别将两台设备的微信数据用电脑端微信的「备份聊天记录」功能备份到了电脑。(这里其实已经有些奇怪了,因为在电脑端两台设备会备份到同一个备份文件夹中,备份记录中也只显示一台设备。在备份完一台机器后,我手动将备份文件夹里的备份文件复制到了其他地方,再开始下一台机器的备份。)
第一次尝试,是将旧机器备份到电脑的数据,用电脑端微信恢复到新机。恢复过程的确可以成功完成,但是异常图片依旧存在。
第二次尝试,是登录旧机器微信,用微信自带的跨机器迁移功能(
设置 - 聊天 - 聊天记录备份与迁移 - 迁移聊天记录到另一台设备)将旧机器上的聊天记录迁移到新机器,希望异常的图片能被旧机器上的正常图片覆盖掉。(注:微信的跨机器迁移聊天记录是支持合并历史记录的,不会完全覆盖/替换。)然而并未如我所愿,异常图片依旧存在。
第三次尝试,是登录新机器微信,再用微信自带的跨机器迁移功能将新机上的聊天记录迁移到旧机。这一步完成后,旧机器上总算有了至今完整的聊天记录和文件,目标达成了一部分。不过当我尝试再将旧机器上的完整数据,用微信自带的跨机器迁移功能,迁移到新机器上时,却出现了一个很奇怪的「系统繁忙,请稍后再试」提示。一开始我以为真的只是系统繁忙,等了半个小时之后重试,问题依旧。后来想到可能是登录态有问题,试着重启手机+重新登入微信,也没能解决。最后无奈之下只好卸载微信,从应用商店重新安装,再重新登入(会触发新机器登陆提醒),才成功启动了迁移过程。好在漫长的迁移结束之后,新机器上也有了完整的聊天记录和文件,检查了几个比较久的聊天,也没有发现任何异常。
分析
虽然问题最后还是成功解决了,不过还是值得分析下过程中发生了什么。(微信聊天记录不能云同步自然是罪大恶极,也是会有这次经历的根本原因,但是改变的希望渺茫,在此先按下不表。)以下只是我的个人猜测,如果有错欢迎指正。
小米换机助手在迁移微信数据时,不仅迁移了媒体文件(如图片、视频),可能还迁移了一些登录/认证相关的信息(如登录态、设备标识)。然而可能是微信版本更新,或者微信将部分文件存储在了默认目录之外,又或者是小米换机助手没有适配,使得部分媒体文件没有被成功迁移,最终导致了异常图片。但登录/认证信息又被成功迁移,所以在新机上不用输微信密码或者收短信验证码确认,就能正常进入微信。(『微信点开就能直接用』)另一个让我认为可能设备标识相同的证据,是之前备份时,新机器和旧机器都会备份到相同文件夹下,且备份记录中仅显示了一台设备。
重复的设备标识可能在日常使用时没有什么影响,但是在数据迁移需要识别新旧设备时就成了问题,最后导致我在第三次尝试的最后,需要重新登录微信,让微信认识到这是一台新机器(『触发新机器登陆提醒』),刷新设备标识,才能完成迁移过程。至于所谓的「系统繁忙」,大概率只是一个被伪装起来的错误提示罢了。
碎碎念
- 迁移后的数据检查不应该流于表面
- 微信就真的没钱在云端存聊天记录吗?就算付费订阅我也会买啊
- 小米的换机助手可能还需要更多测试,尤其是在迁移微信数据这种十分重要的场景中
- 如果自己是个苹果全家桶用户,体验大概会好一些?
- 希望读到本文的各位,都不会像我一样遇到这种奇怪的问题