You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native CLI iOS构建失败(错误码70),需手动指定UDID

React Native run-ios 省略UDID参数构建失败问题解决

问题描述

使用react-native init创建的全新项目,执行react-native run-ios --udid='4720C15A-8AED-45E5-B3CC-58461F5B4413'可正常运行,但省略UDID参数执行react-native run-ios时构建失败,返回错误码70。错误日志显示React Native默认使用了一个不存在的目标ID(863BC019-F4A9-52FA-A489-94F23F2E4446),而可用设备列表中并无该ID。通过Xcode UI构建运行可正常工作,react-native start已在独立终端启动。

环境信息

  • react 18.2.0
  • react-native 0.71.1
  • react-native CLI 10.1.3
  • Xcode 14.2
  • macOS Ventura 13.1(M1 Pro)

问题原因

React Native CLI选择默认设备时,会读取Xcode的设备缓存或历史配置记录。如果之前的模拟器/设备被删除但缓存未及时清理,就会导致CLI尝试连接一个不存在的设备。另外,M1芯片Mac在模拟器架构适配、Xcode设备列表同步环节,偶尔会出现这类缓存不一致的问题。

解决办法

1. 清理Xcode及模拟器缓存

  • 关闭Xcode和所有运行中的模拟器
  • 执行以下命令删除缓存:
    rm -rf ~/Library/Developer/Xcode/DerivedData
    rm -rf ~/Library/Developer/CoreSimulator/Devices
    
  • 重启Mac,重新打开Xcode,让系统重新生成设备列表

2. 手动指定默认设备

  • 先查看所有可用设备:
    xcrun simctl list devices
    
  • 找到常用设备的名称(比如iPhone 14),直接指定设备运行:
    react-native run-ios --device "iPhone 14"
    
  • 也可以在项目的package.json中添加快捷脚本,方便后续使用:
    "scripts": {
      "ios": "react-native run-ios --device \"iPhone 14\""
    }
    
    之后执行npm run ios即可直接启动指定设备

3. 更新React Native CLI

当前使用的CLI版本可能存在适配Xcode 14.2的bug,尝试更新到最新版本:

npm install -g react-native-cli@latest

更新完成后再执行react-native run-ios测试

4. 通过Xcode同步设备列表

  • 打开Xcode,进入Window > Devices and Simulators
  • 删除列表中显示为无效的模拟器,点击右上角的Refresh按钮刷新设备列表
  • 回到终端重新执行react-native run-ios

内容的提问来源于stack exchange,提问作者Dan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 01:55:15