开发 React Native Apps 时如何在 Android 模拟器窗口中重新加载?

Posted

技术标签:

【中文标题】开发 React Native Apps 时如何在 Android 模拟器窗口中重新加载?【英文标题】:How to reload in the Android emulator window when developing React Native Apps? 【发布时间】:2017-07-22 20:45:02 【问题描述】:

在开发 React Native 应用程序时,我按照 https://facebook.github.io/react-native/docs/getting-started.html#content 的入门步骤进行操作,并且已经到了修改源文件并重新加载的地步。

“双击键盘上的 R 以重新加载、摇动或按下菜单按钮以获取开发菜单”。

双击 R - 在哪里?唯一合理的地方似乎是在 android 模拟器窗口中。当我在那里做的时候,什么都没有发生。我还在运行打包程序的 cmd 窗口中尝试过 - 没有发生任何事情。

我认为没有办法“摇动”模拟器。

按下菜单按钮进入开发菜单 - 唯一看起来像菜单按钮的东西,在模拟器旁边的工具箱侧边栏(三个点)上打开一个扩展控件窗口,它没有重新加载按钮。

感觉真的很愚蠢,因为我无法通过入门而不卡住。

主机是 Windows 7。

How to reload in the default Android emulator for react native app 说 ctrl-R,但这对我也不起作用。

【问题讨论】:

在笔记本电脑键盘上双击 R 确实有效。请在下面查看我的答案。 【参考方案1】:

我认为当他们说双击 R 时,他们的意思是在模拟器内的键盘上(即手机的键盘)。但我通常使用开发菜单重新加载。我认为 Windows 可以使用 Ctrl + M 来访问它。

【讨论】:

我在模拟器中没有键盘。如果我添加一个文本输入字段,也许我会。 Ctrl + M 确实会调出开发菜单。谢谢! Mac OSX 用户,⌘ + M.【参考方案2】:

您可以通过执行以下步骤为模拟器添加键盘:

 * On Windows
 - Go to "C:\Users\<your name>\.android\avd\<your emulator name>.avd" folder
 - Edit file config.ini
 - Change hw.keyboard=yes (default is no)
 * On Ubuntu
 - $HOME/.android/avd/<avd name>/config.ini

问候, 液晶显示器

【讨论】:

【参考方案3】:

对于 WINDOWS 用户:-

    转到 AVD 管理器并单击操作列上的编辑到您的模拟器

    单击“显示高级设置”按钮

    滚动到底部,然后选中“启用键盘输入”复选框 单击右下角的完成按钮,然后重新启动您的模拟器。

【讨论】:

虽然与问题没有直接关系,但这是一个经常被要求且经常被忽略的功能。谢谢大佬。【参考方案4】:

在开发 React Native 应用程序时,在您的笔记本电脑键盘上双击 R 确实有效(在您选择了 Android 模拟器窗口之后)。

但是,您必须非常快速地双击 R。如果你没有足够快地双击 R,应用程序将不会重新加载,也不会发生任何事情。

快速连续双击 R 重新加载应用程序的步骤

    选择模拟器窗口(例如,用笔记本电脑的鼠标单击它)。 现在,在您的笔记本电脑键盘上,快速双击 R。(基本上快速按两次 R 键)。 看吧,应用程序将重新加载。

注意:如果您尚未启用实时重新加载,则可以使用上述过程。您可以按如下方式启用实时重新加载(在这种情况下,您无需执行上述操作即可重新加载应用程序):

启用实时重新加载的过程

    点击模拟器窗口。 键入 Control M(或 MAC 上的 Command M)并选择“启用实时重新加载” 现在,每当您进行代码更改时,都会重新构建应用程序并 将在模拟器窗口中自动刷新。

注意:同样,您也可以启用热重载

【讨论】:

【参考方案5】:

这里发布的答案都不适合我,所以基于this answer,我将此添加到package.json

"scripts": 
  // ...
  "dev-menu": "adb shell input keyevent KEYCODE_MENU"

那么你只需要在控制台中运行:

npm run dev-menu
# or
yarn dev-menu

【讨论】:

【参考方案6】:

在 Ubuntu/Linux 上, 在模拟器中保持应用程序打开,然后按 CTRL+M。它将提示您一个菜单,其中包含重新加载、热重新加载等选项。选择重新加载,它将重新加载页面。enter image description here

【讨论】:

以上是关于开发 React Native Apps 时如何在 Android 模拟器窗口中重新加载?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 React Native 中按下按钮时更改文本值?

调试 React-Native 应用程序时如何在 Chrome devtools 中查看 React 选项卡?

夺命雷公狗-----React_native---4---初始化项目

使用 TouchableHighlight 在 React Native 中按下时如何更改按钮颜色?

如何利用Android Studio打包React Native APK

React Native ListView 不更新数据更改