关于iOS从Mac/iTunes备份恢复时提示”未能恢复iPhone。因为发生了一个错误。”的解决方案

less than 1 minute read

Published:

近日,我送修后换新了一部iPhone。在送之前,我已经在Mac Finder和Windows iTunes都进行了数据的备份。在我拿回手机尝试恢复时,恢复进度进行到一半(且多次尝试时每次都在同一进度),手机会被强制重启且提示”未能恢复iPhone。因为发生了一个错误。”在我升级iTunes、使用Mac上的备份、更换线材、DFU手机等一系列操作后,依然无效。

我有点沮丧,因为一旦失去这个备份,我可能需要花几天甚至几周的时间来完全完成迁移。搜索了一些案例,在一些帖子 1 2 3 中有提到过版本更新、剩余空间等问题,但我一再确认过都正常,且不管是PC还是Mac都会出现同样的问题。

幸运的是,我在Windows PC的备份文件夹找到了一个log.txt文件(备注:我在Mac上并没有找到相应的文件。我额外测试了使用爱思助手进行恢复,因此不确定这个log是iTunes还是爱思助手生成的)。

image.png

其中大多数信息都没什么帮助,除了一条有意思的错误信息:

image.png

更幸运的是,通过这个文件路径我能确定是哪个App发生的这个错误。这是个使用AltStore进行侧载的App(但这并不代表问题一定出在侧载上,也有可能只是巧合)。那么是否是说,解决了这个问题就能成功进行恢复了呢?

为此,我在GitHub上找到了一个项目:iTunes-Backup-Explorer。引用原话来说,这是个“一个可以从加密和非加密的iOS备份中提取和替换文件的图形工具”。我在这个工具里找到了App对应的备份文件,并且把文件所在的整个父文件夹都删了(这个App的数据并不重要),之后,备份就被成功恢复了。

一点碎碎念

我很难苟同Apple的软件工程理念,尤其是他特别喜欢包装并隐藏错误,似乎他们尤其不希望用户了解具体的原理和报错发生的位置。有时候Apple永远只会告诉你失败,至于哪里失败、为什么失败,他们是绝对不会告诉你的,自己去猜吧。