cmd : react-native 运行-android 每次文件更改
cmd : react-native run-android on every file change
当我 运行 "react-native run-android" 构建被部署到模拟器并且程序执行正常。但是在我对本地文件进行更改后,我需要 运行 "react-native run-android".
可以使用 watchman 以任何方式完成,就像它发生在 react-native ios.
谢谢
您必须启用实时重新加载。
For Android, run react-native run-android from your projectto install the generated app on your emulator or device, and start the Node server which enables live code reloading. To see your changes you have to open the rage-shake-menu (either shake the device or press the menu button on devices, press F2 or Page Up for emulator, ⌘+M for Genymotion), and then press Reload JS.
打开怒摇菜单。 (F2/Page 向上)-> 开发设置-> JS 更改时自动重新加载
我正在使用带有 Genymotion 的 MacOS X。出于某种尚未确定的原因,一切正常,模拟器 运行,我的应用程序已通过 "react-native run-android" 部署到它。但是,当我尝试使用说明 here 中指示的 Command + M 键盘快捷键时,“rage menu”不会显示:
For Android, run react-native run-android from AwesomeProject to
install the generated app on your emulator or device, and start the
Node server which enables live code reloading. To see your changes you
have to open the rage-shake-menu (either shake the device or press the
menu button on devices, press F2 or Page Up for emulator, ⌘+M for
Genymotion), and then press Reload JS.
所以最终,我写了一个很小的 shell 脚本(你可以 运行 直接在 bash shell 等命令行下使用相同的命令)调用 rageMenuAndroid.sh如下:
#!/usr/bin/env bash
adb shell input keyevent 82
这实际上启动了愤怒菜单。从那里可以很简单地使用 React Native 启用实时重新加载(我的目标),只需 select“Auto Reload”和 select“[=25=” ]Reload JS" 按钮随时刷新。
如果有人知道如何让 'rage menu' 直接出现在模拟器上,请他们 post 在下面发表评论。设置 IOS 轻而易举,只用了 2 分钟,另一方面 Android 需要一些努力(可能需要几个小时,而且我已经安装了 JDK)。
从阅读中获得此答案的灵感 this blog
对于 Android 设备,我添加了一个脚本来执行以下操作来激活愤怒菜单。基本上按 "MENU" 然后 "R" 然后 "ENTER" (更多信息 ADB Shell Input Events)
#!/bin/bash
adb shell input keyevent 82 46 66 66
这是 shell 脚本的 link,对我来说效果很好 - https://github.com/r3bl-alliance/react-native-weather/blob/master/android_rage_menu.sh。我使用 Webstorm,所以我只是将它添加为 "run target",这样使用起来非常方便!
在物理 android 设备(例如小米红米 4)上,您按下菜单按钮一秒钟,然后 select "Enable Hot Reloading" 选项。那么您可能需要使用
重新启动开发服务器
react-native run-android
当我 运行 "react-native run-android" 构建被部署到模拟器并且程序执行正常。但是在我对本地文件进行更改后,我需要 运行 "react-native run-android".
可以使用 watchman 以任何方式完成,就像它发生在 react-native ios.
谢谢
您必须启用实时重新加载。
For Android, run react-native run-android from your projectto install the generated app on your emulator or device, and start the Node server which enables live code reloading. To see your changes you have to open the rage-shake-menu (either shake the device or press the menu button on devices, press F2 or Page Up for emulator, ⌘+M for Genymotion), and then press Reload JS.
打开怒摇菜单。 (F2/Page 向上)-> 开发设置-> JS 更改时自动重新加载
我正在使用带有 Genymotion 的 MacOS X。出于某种尚未确定的原因,一切正常,模拟器 运行,我的应用程序已通过 "react-native run-android" 部署到它。但是,当我尝试使用说明 here 中指示的 Command + M 键盘快捷键时,“rage menu”不会显示:
For Android, run react-native run-android from AwesomeProject to install the generated app on your emulator or device, and start the Node server which enables live code reloading. To see your changes you have to open the rage-shake-menu (either shake the device or press the menu button on devices, press F2 or Page Up for emulator, ⌘+M for Genymotion), and then press Reload JS.
所以最终,我写了一个很小的 shell 脚本(你可以 运行 直接在 bash shell 等命令行下使用相同的命令)调用 rageMenuAndroid.sh如下:
#!/usr/bin/env bash
adb shell input keyevent 82
这实际上启动了愤怒菜单。从那里可以很简单地使用 React Native 启用实时重新加载(我的目标),只需 select“Auto Reload”和 select“[=25=” ]Reload JS" 按钮随时刷新。
如果有人知道如何让 'rage menu' 直接出现在模拟器上,请他们 post 在下面发表评论。设置 IOS 轻而易举,只用了 2 分钟,另一方面 Android 需要一些努力(可能需要几个小时,而且我已经安装了 JDK)。
从阅读中获得此答案的灵感 this blog
对于 Android 设备,我添加了一个脚本来执行以下操作来激活愤怒菜单。基本上按 "MENU" 然后 "R" 然后 "ENTER" (更多信息 ADB Shell Input Events)
#!/bin/bash
adb shell input keyevent 82 46 66 66
这是 shell 脚本的 link,对我来说效果很好 - https://github.com/r3bl-alliance/react-native-weather/blob/master/android_rage_menu.sh。我使用 Webstorm,所以我只是将它添加为 "run target",这样使用起来非常方便!
在物理 android 设备(例如小米红米 4)上,您按下菜单按钮一秒钟,然后 select "Enable Hot Reloading" 选项。那么您可能需要使用
重新启动开发服务器react-native run-android