执行此命令时:
react-native run-ios
我的应用程序在iPhone6模拟器设备中默认运行:
Found Xcode project RN.xcodeproj
Launching iPhone 6 (9.2)...
如何在默认情况下让应用程序在不同的模拟器设备(如iPhone5s)中运行?
执行此命令时:
react-native run-ios
我的应用程序在iPhone6模拟器设备中默认运行:
Found Xcode project RN.xcodeproj
Launching iPhone 6 (9.2)...
如何在默认情况下让应用程序在不同的模拟器设备(如iPhone5s)中运行?
当前回答
我有一个问题与XCode 10.2指定正确的iOS模拟器版本号,所以使用:
react-native run-ios --simulator='iPhone X (com.apple.CoreSimulator.SimRuntime.iOS-12-1)'
其他回答
正如Ian L所回答的,我也使用NPM来管理我的脚本。
例子: { "脚本":{ “ios”:“react-native run-ios——模拟器=\"iPad Air 2\"", “设备”:“xcrun simctl list设备” } }
这样,我可以很快得到我需要的东西:
列出所有设备:npm run devices 运行默认模拟器:npm Run ios
用于iPhone Xʀ模拟器
"iosxr": "react-native run-ios --simulator=\"iPhone Xʀ\"",
只需将此添加到您的脚本包。json文件
这里使用的字母“ʀ”和“R”是不同的Unicode。
然后点击$ yarn iosxr在iPhone Xʀ模拟器上启动应用程序
有一个项目设置,如果你搜索:
{项目}/ node_modules / react-native / local-cli / runIOS / runIOS.js
在模块下有一些选项。出口包括:
选择:[{ 命令:'——simulator [string]', 描述:'显式设置模拟器使用', 默认:'iPhone 7', }
我的是第231行,只需将其设置为有效安装的模拟器并运行 React-native run-ios默认情况下会运行到那个模拟器。
修改/node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js的行代码
线55
if (
simulator.availability !== '(available)' &&
simulator.isAvailable !== true
) {
continue;
}
取代的:
if (
simulator.availability !== '(available)' &&
simulator.isAvailable !== true
) {
continue;
}
为此我开发了CLI工具。你只需输入“rndcli”。然后选择设备
https://github.com/nazrdogan/rndcli