React Native Expo Managed App 在 iOS 模拟器上没有 launch/start

React Native Expo Managed App doesn't launch/start on iOS simulator

在开发 React Native 应用程序时,我用旧的 Windows 笔记本电脑遇到了困难,所以我转向了 MacOS 笔记本电脑。我安装了 Android Studio 和 Xcode(包括 Xcode 命令行工具)。然后我初始化了一个空白的世博会管理项目。我在 Android 模拟器和 iOS 模拟器上启动。 Android 一个出现了 ádb´ 错误(或者可能是警告)。但另一方面,iOS 模拟器什么也没做。 iOS 设备上没有安装 Expo Go 应用程序,因此无法使用它启动我的应用程序。我没有收到与此问题相关的任何错误或警告,因此我无法追踪问题。

我已经尝试解决这个问题至少 2 个小时,我尝试了所有可能与我的问题相关的方法,但 none 确实有效。不过有一件事我不明白。尽管我使用了不同的 iOS 设备模拟器,但 Expo Metro Bundler 显示了这个 '› 在 iPhone 8' 输出上打开 exp://10.42.33.15:19000。我试过 iPhone 13、iPhone 6、iPod 等,但这是不同设备的相同输出。这是一些与 probem 相关的屏幕截图:

https://www.youtube.com/watch?v=dvuZn6gX_Q4

YouTube 上的这个教程视频帮助我解决了我的问题。我想我遗漏了一些东西:

  1. 我没有在我的 Mac 上为 Xcode、Android Studio 和 VS Code 授予所需的隐私权限。打开System Preferences > Security & Privacy > Go Privacy Tab > Give Full Disk Access to Xcode, VS Code, Android Studio, Terminal and Watchman(watchman不是必须的,不过我之前为了解决问题也安装过)
  2. 您应该在启动 expo 应用程序之前同时启动 Android 和 iOS 模拟器。只需转到 Android Studio 并启动您的设备。要启动 iOS 设备,请使用 bash 并键入 open -a simulator.
  3. 如果您的 iOS 模拟器上没有安装 Expo Go 应用程序,那么您应该先安装它,然后再启动您的 expo 应用程序。要安装它,请使用 expo client:install:ios 命令。
  4. 使用 expo start 命令启动您的应用程序。输入 ia 或单击 Run on iOS simulatorRun on Android device/emulator 按钮以在设备上启动您的应用程序。

注意:如果您的应用程序卡在 New update available, downloading... 阶段,那么您可以使用 expo start -c 命令启动带有清理缓存的 expo 应用程序。对我很有帮助。

注意 2:您可能需要对我提到的某些命令使用 sudo 命令,我不确定哪些是必需的。