previous preparation error: The developer disk image could not be unmounted on the device;An unknow
这个错误:
previous preparation error: The developer disk image could not be unmounted on the device; An unknown error message 'internalError'; was from the device. 是 Xcode 在真机运行 / 调试时挂载 Developer Disk Image (DDI) 失败的典型情况,主要原因是 设备调试环境卡住或残留。
1️⃣ 主要原因
- 之前调试挂载的 Developer Disk Image 没被正确卸载
- 比如上次调试时直接拔了线,或者设备崩溃/重启了。
- Xcode 和 iOS 系统版本不匹配
- Xcode 版本太低,找不到匹配的 DDI。
- 设备端锁定或后台挂载进程占用
- 某个调试进程在 iPhone 上还没退出。
2️⃣ 解决方法
方法 1:重启设备 & Xcode(最简单)
- 拔掉数据线。
- 重启 iPhone(长按电源 → 滑动关机 → 再开机)。
- 退出 Xcode(Cmd+Q)。
- 重新打开 Xcode,插回设备。
方法 2:手动卸载 Developer Disk Image
- iPhone 上进入 设置 → 通用 → iPhone 储存空间,看看有没有挂载残留(一般不可见,依赖重启清除)。
或者直接用 ideviceimagemounter 工具卸载:
brew install libimobiledevice ideviceimagemounter -u <你的设备UUID> -u -u 表示卸载当前 Developer Disk Image。
方法 3:检查 Xcode 对应的 iOS 支持文件
- 确认有你设备的 iOS 版本文件夹,比如
17.5 (21F79)。- 如果没有,就要升级 Xcode 或安装对应版本的 DDI(可从其他 Xcode 拷贝)。
找到 DeveloperDiskImage.dmg:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ 方法 4:关闭可能占用调试的进程
在 Mac 上执行:
ps aux | grep -i usb kill -9 <PID> 或者干脆重启 Mac,确保 USB 调试链路干净。
💡 我遇到过几次这种情况,最快的方法是:设备重启 + Xcode重启 + 数据线重新插拔,90% 的情况能恢复。