有没有可能在 iOS 设备上直接从命令行运行本机应用程序,就像我们在使用 react-native run ios --simulator "iPhone 5s"的模拟器上所做的那样?
react-native run ios --simulator "iPhone 5s"
以下方法对我有效(测试反应原生 0.38和 0.40) :
0.38
0.40
npm install -g ios-deploy # Run on a connected device, e.g. Max's iPhone: react-native run-ios --device "Max's iPhone"
如果您尝试运行 run-ios,您将看到脚本建议在构建后到达安装步骤时执行 npm install -g ios-deploy。
run-ios
npm install -g ios-deploy
虽然关于本地提供的各种命令的文档有些粗略,但是值得使用 本地反应/本地反应。在那里,您可以看到所有可用的命令和它们运行的代码-因此您可以计算出哪些开关可用于未记录的命令。
react-native run-ios --device "______\'s iPhone"
Found Xcode project ________.xcodeproj Could not find device with the name: "_______'s iPhone". Choose one of the following: ______’s iPhone Udid: _________
react-native run-ios --udid 0412e2c230a14e23451699
react-native run-ios --udid 0412e2c230a14e23451699 -- configuration Release
只是想给卡米尔的回答加点料
按照这些步骤后,我仍然得到了一个错误,
无法找到名称为“ ... . 的 Xr”的设备
从设备名称中删除特殊字符后(转到 设置-> 一般-> 关于-> 名称)
例句: '
成功了!
希望这能帮助那些面临类似问题的人。
用 -测试 反应-原生-cli: 2.0.1 | 本地反应: 0.59.8 | VSCode 1.32 | Xcode 10.2.1 | < em > iOS 12.3
如果使用 npm install -g ios-deploy得到此错误 ios-deploy@x.x.x preinstall: ./src/scripts/check_reqs.js && xcodebuild ...
ios-deploy@x.x.x preinstall: ./src/scripts/check_reqs.js && xcodebuild ...
试试这个,对我很有效:
sudo npm uninstall -g ios-deploy
brew install ios-deploy
在项目根目录中运行此命令。
1 >.找到已连接的 Real Device 和 Simulator 的 iPhone 设备列表 。与 android 的 adb 设备命令相同。
xcrun xctrace list devices
或者
xcrun instruments -s devices
使用这个命令选择要运行应用程序的设备
使用设备名称
react-native run-ios --device "Kool's iPhone"
使用 UDID
react-native run-ios --udid 0412e2c2******51699
等待和观察在特定设备上运行你的应用程序-K00L;)
实际上,对于第一次构建,请使用 Xcode 完成,然后按照以下方法进行:
npx react-native run-ios --device
第二个命令将在 首先连接的设备上运行应用程序。
让我的工作与
react-native run-ios --device="My’s iPhone"
注意你的 iphone 名字,撇号’可能不一样,我的用的是这个
用于在特定的 ios 设备上运行
yarn ios --simulator "iPhone 8" if you are using yarn or npx react-native run-ios --simulator="iPhone SE (1st generation)"
为了自动化任何物理设备,您可以尝试使用:
npx react-native run-ios --device=$(xcrun instruments -s devices | grep -v '(Simulator)' | tail -1 | sed 's/ (.*//')
注意: 这将使用 xcrun 中列出的最后一个未列为模拟器的设备。设备名称从 xcrun Instruments 字符串中解析,该字符串拉出第一个 (之前出现的所有字符。
(
如果您只有一个苹果设备插入,并且它的名称不包括 (,那么这个工作方式很好。
否则,你可能只想跑:
选择您的设备(最高版本是您应该使用的设备名称)。
然后跑:
npx react-native run-ios --device='yourDeviceName'
我也有同样的问题。命令 npx run-ios,然后选择在 设置-> 一般-> 关于-> 名称中重命名设备名后工作的 Physical Device。我只用没有空格和特殊符号的字母来命名。
npx run-ios
Physical Device
我的问题是设备在 Xcode 13中被识别出来了,但是在 run 命令时在设备列表中找不到它
列表设备
但是在升级到 Xcode 13.4.1之后,我可以在设备列表中看到该设备
然后,我遵循了前面文章中提到的第一个安装 ios 部署包
纱线全局添加 ios-部署
拿到你的设备 ID
然后
反应本地 run-ios —— udid“ your device id”