无法在 Expo CLI 模拟器上运行 React Native App

Posted

技术标签:

【中文标题】无法在 Expo CLI 模拟器上运行 React Native App【英文标题】:Can't run React Native App on Expo CLI simulator 【发布时间】:2021-10-13 02:20:43 【问题描述】:

我使用以下命令创建了一个 React Native 应用程序:

npx create-react-app my-app

创建项目后,我尝试使用以下命令在模拟器中运行:

yarn ios

应用程序运行正常,但终端显示它正在 iPhone 8 上打开,但是模拟器在 iPhone 13 上打开并且应用程序永远不会启动,我还启动了一个模拟器,选择 iPhone 8 作为设备,但应用程序确实也不从那里开始。

【问题讨论】:

聚焦模拟器并尝试与之交互 - 打开设置应用程序或其他东西。这可能会导致出现有关打开 Expo Go 的提示。这是ios模拟器的一个怪癖 【参考方案1】:

React Native Docs 建议将 --simulator 标志与 react-native run-ios 一起使用:

react-native run-ios --simulator=”iPhone 11 Pro Max”

如果你遇到(像我一样):

command not found: react-native

尝试在应用的 package.json(通常是 ios)中运行 iOS 脚本:

yarn ios --simulator=”iPhone 11 Pro Max”

理论上 npm 应该也可以工作,但我没有运气。您的里程可能会有所不同:

npm run ios --simulator=”iPhone 11 Pro Max”

列出可用设备

列出可用的 iOS 设备:

xcrun simctl list devices

我的机器上适用于 iOS 13.3 的可用设备:

iPhone 8 (2FE6CAE2–4908–4464–884A-5DED11505CE4) (Shutdown)
iPhone 8 Plus (F2A473F7–1F48–48DB-A6A6–584253814AA6) (Shutdown)
iPhone X (8FC4167D-AC9C-4F90–825C-9FB7004D03BA) (Booted)
iPhone 11 (E7885A5A-0306–4243-A852–8E71A7B0A5CB) (Shutdown)
iPhone 11 Pro (13B1AF48-BDD5–4AD7–8D7C-F31F3CF97FF5) (Shutdown)
iPhone 11 Pro Max (9C3B2313–258B-4E79–86A3–275D6BB3D078) (Shutdown)
iPad Pro (9.7-inch) (1A094DA7-A246–47B7–9716–5D8A9190C563) (Shutdown)
iPad (7th generation) (E0E0E252–5B96–4D2B-BD98–7D9ED79756AD) (Shutdown)
iPad Pro (11-inch) (143BB411-E726–4048–98E5-F87F04DEDCC2) (Shutdown)
iPad Pro (12.9-inch) (3rd generation) (14EFAE0F-C4D2–49E3-B501–633CB3E7DD00) (Shutdown)
iPad Air (3rd generation) (2797C8B5-E8FC-428A-AA4A-81F500153DDA) (Shutdown)

为您提供方便的命令

为了您的方便,这里有一些带有yarn 的命令可供使用:

yarn ios --simulator=”iPhone 8"
yarn ios --simulator=”iPhone 8 Plus”
yarn ios --simulator=”iPhone X”
yarn ios --simulator=”iPhone 11"
yarn ios --simulator=”iPhone 11 Pro”
yarn ios --simulator=”iPhone 11 Pro Max”
yarn ios --simulator=”iPad Pro (9.7-inch)”
yarn ios --simulator=”iPad (7th generation)”
yarn ios --simulator=”iPad Pro (11-inch)”
yarn ios --simulator=”iPad Pro (12.9-inch)”
yarn ios --simulator=”iPad Air (3rd generation)”

注意

目前无法为模拟器设置默认设备。

【讨论】:

如果有帮助,请将其标记为已接受。谢谢!

以上是关于无法在 Expo CLI 模拟器上运行 React Native App的主要内容,如果未能解决你的问题,请参考以下文章

create react native app expo无法连接在同一台计算机上的模拟器上运行

Expo 网络响应超时,无法在 Android 模拟器上运行 Expo 应用

Expo React Native 无法在 Android 上启动项目:“系统找不到指定的路径”

为啥 React-Native 无法在与 Expo 的 Android 连接上启动项目?

react-native expo android macos问题

React-Native Expo,Facebook 登录无法在 Android 设备上运行