如何在我的设备上而不是在iPhone 6仿真器上运行React Native应用程序?

时间:2018-08-10 16:52:06

标签: ios react-native react-native-ios react-native-firebase

我一直在阅读React Native的文档以及论坛,并回答类似的问题,但无法弄清楚如何在设备上运行我的应用程序。

我已经尝试过在问题“ Run react-native application on iOS device directly from command line?”中提到的内容,以及从ios目录中删除build文件夹并重新运行脚本。我将运行该命令npm run ios --device "Anthony’s iPhone",但是它导致该Launching iPhone 6 (iOS 11.3)...我也尝试运行npm run ios --simulator "iPhone 5s",但再次得到Launching iPhone 6 (iOS 11.3)...。我不确定从何处去,可以在下面看到更多信息。当然,模拟器始终会启动并正常运行,但是我想控制它是在设备上运行还是在哪个模拟器上运行。

Anthonys-MacBook-Pro:fitness-app anthonysette$ npm run ios --device "Anthony’s iPhone"

> FitnessApp@0.1.0 ios /Users/anthonysette/Documents/fitness-app
> react-native run-ios "Anthony’s iPhone"

Scanning folders for symlinks in /Users/anthonysette/Documents/fitness-app/node_modules (15ms)
Found Xcode workspace FitnessApp.xcworkspace
Launching iPhone 6 (iOS 11.3)...
Building using "xcodebuild -workspace FitnessApp.xcworkspace -configuration Debug -scheme FitnessApp -destination id=28DE4434-4D1A-4B5E-8C16-0AC2C101F8E0 -derivedDataPath build"
User defaults from command line:

编辑:添加了来自package.json的信息

我的package.json中有一个称为脚本的部分,其中包含以下内容

  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "rename": "node ./bin/rename.js",
    "start": "react-native start",
    "test": "jest"
  },

2 个答案:

答案 0 :(得分:1)

您定义的脚本npm run ios将运行react-native run-ios。 因此,您可以全局安装react-native cli并使用

react-native run-ios --device "Anthony’s iPhone"

或以以下方式将新脚本添加到您的package.json

"ios-device": "react-native run-ios --device"

并运行npm run ios-device "Anthony’s iPhone"

答案 1 :(得分:-1)

我建议您安装“ create-react-native-app ”以创建React Native应用。您可以通过“ 博览会”在设备中运行应用。使用“ npm start ”命令运行您的应用。在手机中下载并安装expo,然后扫描生成的QR码。它还支持热重装。

注意-确保您的计算机和电话在同一网络上。