执行此命令时:

react-native run-ios

我的应用程序在iPhone6模拟器设备中默认运行:

Found Xcode project RN.xcodeproj
Launching iPhone 6 (9.2)...

如何在默认情况下让应用程序在不同的模拟器设备(如iPhone5s)中运行?


当前回答

用于iPhone Xʀ模拟器

    "iosxr": "react-native run-ios --simulator=\"iPhone Xʀ\"",

只需将此添加到您的脚本包。json文件

这里使用的字母“ʀ”和“R”是不同的Unicode。

然后点击$ yarn iosxr在iPhone Xʀ模拟器上启动应用程序

其他回答

你也可以通过在你的包的scripts元素中添加一个条目来使用npm。json文件。如。

"launch-ios": "react-native run-ios --simulator \"iPad Air 2\""

然后使用这个:运行launch-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;
     }

正如Ian L所回答的,我也使用NPM来管理我的脚本。

例子: { "脚本":{ “ios”:“react-native run-ios——模拟器=\"iPad Air 2\"", “设备”:“xcrun simctl list设备” } }

这样,我可以很快得到我需要的东西:

列出所有设备:npm run devices 运行默认模拟器:npm Run ios

使用——simulator标志指定一个模拟器。

以下是iOS 14.0之后可用的设备:

npx react-native run-ios --simulator="iPhone 8"
npx react-native run-ios --simulator="iPhone 8 Plus"
npx react-native run-ios --simulator="iPhone 11"
npx react-native run-ios --simulator="iPhone 11 Pro"
npx react-native run-ios --simulator="iPhone 11 Pro Max"
npx react-native run-ios --simulator="iPhone SE (2nd generation)"
npx react-native run-ios --simulator="iPhone 12 mini"
npx react-native run-ios --simulator="iPhone 12"
npx react-native run-ios --simulator="iPhone 12 Pro"
npx react-native run-ios --simulator="iPhone 12 Pro Max"
npx react-native run-ios --simulator="iPhone 13 Pro"
npx react-native run-ios --simulator="iPhone 13 Pro Max"
npx react-native run-ios --simulator="iPhone 13 mini"
npx react-native run-ios --simulator="iPhone 13"
npx react-native run-ios --simulator="iPod touch (7th generation)"
npx react-native run-ios --simulator="iPad Pro (9.7-inch)"
npx react-native run-ios --simulator="iPad (9th generation)"
npx react-native run-ios --simulator="iPad Air (4th generation)"
npx react-native run-ios --simulator="iPad Pro (11-inch) (3rd generation)"
npx react-native run-ios --simulator="iPad Pro (12.9-inch) (5th generation)"
npx react-native run-ios --simulator="iPad mini (6th generation)"

列出所有可用的iOS设备:

xcrun simctl list devices

目前没有办法设置默认值。

React Native Docs:在模拟器上运行

我有一个问题与XCode 10.2指定正确的iOS模拟器版本号,所以使用:

react-native run-ios --simulator='iPhone X (com.apple.CoreSimulator.SimRuntime.iOS-12-1)'