React Native 应用程序未在 XCode iOS 模拟器中运行

Posted

技术标签:

【中文标题】React Native 应用程序未在 XCode iOS 模拟器中运行【英文标题】:React Native app not running in XCode iOS simulator 【发布时间】:2018-06-11 03:43:14 【问题描述】:

我尝试使用 React Native 迈出第一步。 android 开发(在 Windows 主机上)有效。现在想测试ios,尝试在MacBook Pro上搭建开发环境。

问题:React Native 启动 iOS 模拟器,然后什么也没有发生。模拟器运行正常,但我的 React 本机应用程序无法启动。

我需要做什么才能让我的 React Native 安装继续进行?

更多信息:

我根据运行 OSx 10.13.2 (High Sierra) 的 MacBook Pro 上的文档设置了 XCode 和 React Native。 XCode 安装测试成功,包括模拟器。

当我安装 Node.js 时,我故意选择了一个旧版本(包含 npm 4.2.0),因为论坛说 React Native 在 npm 5 上仍然存在问题。我还安装了 Homebrew 和 Watchman,如文档中所述。

为了初始化一个空项目,我使用了

create-react-native-app HelloWorldProject

在我的 Documents 文件夹中创建了一个项目结构。

如果我最终使用

启动我的“Hello World”测试应用程序
cd HelloWorldProject
sudo react-native run-ios

系统响应:

Starting packager ...
Starting simulator ...

然后什么都没有发生。模拟器确实启动了(启动 --> 苹果标志 --> 进度条 --> IOs 启动屏幕),但之后没有任何反应。

编辑 我已经放弃了 React Native 有几个原因,我把这个问题留在这里是为了记录的目的,但我无法验证或接受任何答案,我已经没有 React Native 开发环境了。

【问题讨论】:

你试过只点击 XCode 中的播放按钮吗? 请记住,如果您的设备缓存为空,则下载和运行 javascript 包将需要更多时间。我建议你使用 Expo 这个工具可以更轻松地调试和运行 react-native 即使在 6 小时后...模拟器中也没有任何反应... 是否会弹出较小的节点终端框?这将是向我们提供错误的下一步,这就是它们出现的地方。 我的屏幕上只有两个窗口:我开始 react-native 的终端(说“正在启动模拟器...”)和显示 iPhone X - 11.2 在模拟器中的窗口(尝试了其他 iPhone 型号以及 - 同样的问题)。没有其他的。奇怪的观察结果(可能是正常的,但没有可与之比较的工作系统):终端的标题栏显示“HelloWorldProject -- node .sudo -- 126x24”与“HelloWorldProject -- simctl .sudo -- 126x24”交替显示" ~ 每秒 4 次。 【参考方案1】:

即使您的应用程序中的一切看起来都很好,有时您会遇到应用程序通过终端或 Xcode 加载所需时间过多的问题。如果您的项目没有任何其他特定问题,则以下解决方案大部分时间都有效:

    转到您的应用文件夹,然后转到“iOS”文件夹。

    删除“Podfile.lock”和“Pods”文件夹。

    从您的“ios”文件夹在终端中执行以下命令,这将带回“Podfile.lock”并将所需的 Pod 安装到“Pods”文件夹:

    吊舱安装

    删除“iOS”文件夹中的“build”文件夹。

    在终端中运行以下命令:

    react-native run-ios

    在终端运行时,在 Xcode 的“ios”文件夹中打开“.xcworkspace”。

以上步骤将确保它将新构建您的 react native 项目并在模拟器上运行。

谢谢

瓦桑塔·维贾亚拉特纳

【讨论】:

【参考方案2】:

可能是因为您使用了sudo/.expo/ 归根用户所有。尝试更改所有权

sudo chown -R `whoami` ~/.expo

参考https://github.com/react-community/create-react-native-app/issues/422

【讨论】:

以上是关于React Native 应用程序未在 XCode iOS 模拟器中运行的主要内容,如果未能解决你的问题,请参考以下文章

对于最新版本的 react-native,应用程序未在 iOS 上运行

JavaScript Array flat 函数未在 React native 中定义

有些图像未在 react-native-fastimage 中显示

当应用程序未在 React-Native firebase 中运行时如何设置通知声音

React Native Image 未在 iOS 上显示

React Native mapview:标记未在IOS上显示