Xcode 14.3无法识别iOS 16.4.x设备的命令行问题咨询
解决Xcode 14.3命令行无法识别iOS 16.4.x设备的问题
问题概述
同时安装Xcode 14.2和14.3,切换到14.3后出现以下异常:
flutter devices、xcrun xcdevice list无法识别iOS 16.4.1设备,导致IntelliJ无法选择该设备作为部署目标- Xcode 14.3内部可正常识别并部署Flutter应用
- iOS 15.7.x设备在Xcode 14.3命令行中可正常识别
- 执行
/usr/bin/arch -arm64e xcrun xcdevice list --timeout 2报错:xcdevice[1473:15359] DVTCoreDeviceEnabledState: DVTCoreDeviceEnabledState_Disabled set via user default (DVTEnableCoreDevice=disabled)
xcrun xctrace list devices可正常列出iOS 16.4.1设备,推测为xcdevice工具兼容性问题
解决方案
1. 启用CoreDevice用户默认设置
报错明确指出DVTEnableCoreDevice被设为禁用,Xcode内部自动启用了该选项,但命令行环境未同步。执行以下命令修改配置:
defaults write com.apple.dt.Xcode DVTEnableCoreDevice -bool YES
执行后重启终端,再运行xcrun xcdevice list验证设备是否被识别。
2. 手动指定设备ID部署(临时 workaround)
若上述方法无效,可通过xcrun xctrace list devices获取iOS 16.4.1设备的ID,然后直接指定设备运行Flutter应用:
# 先获取设备ID xcrun xctrace list devices # 替换<设备ID>为实际值 flutter run -d <设备ID>
在IntelliJ中,也可通过"Run Configurations"手动输入设备ID选择目标设备。
3. 重置Xcode命令行工具
若配置出现异常,可重置命令行工具后重新关联Xcode 14.3:
sudo xcode-select --reset sudo xcode-select -switch /Applications/Xcode_14.3.app
打开Xcode 14.3,同意许可协议并完成组件安装,重启终端后再次测试设备识别。
内容的提问来源于stack exchange,提问作者valley
相关产品推荐
相关产品推荐

