默认使用 React Native 打开 android 模拟器
Posted
技术标签:
【中文标题】默认使用 React Native 打开 android 模拟器【英文标题】:open android simulator with React Native by default 【发布时间】:2019-05-07 09:32:13 【问题描述】:有什么方法可以使用一个命令打开反应本机应用程序和模拟器..
我的意思是:react-native run-android --emulator 'PIXEL_API_27'
我也试试:
"scripts":
"start": "node node_modules/react-native/local-cli/cli.js start",
"android": "react-native run-android --emulator 'PIXEL_API_27'",
"test": "jest"
,
并运行命令npm run android
,但它抱怨error: unknown option
--simulator'`
我对 react native 很陌生。请帮助我....
【问题讨论】:
react-native cli 中没有这样的选项。我建议您阅读以下内容,它将向您解释如何在命令行中启动模拟器:developer.android.com/studio/run/emulator-commandline。然后,在run-android
之前执行该命令。
【参考方案1】:
目前无法通过向react-native run-android
传递附加标志来打开终端。
所以你的问题是双重的。首先如何从命令行运行模拟器,其次如何将该命令链接到运行您的 react-native 项目。让我们按顺序处理它们。
从命令行打开模拟器
可以通过命令行打开模拟器。这是通过emulator @avd
命令完成的,将@avd
替换为您的android 虚拟设备的名称。例如:
emulator @Nexus_5X_API_27_x86
要获取您机器上已安装的 android 虚拟设备的名称,请运行 emulator -list-avds
。
现在您的模拟器正在运行,让我们也运行 react-native。
运行模拟器,然后运行 react-native run-android
我发现从命令行运行模拟器的一个问题是,模拟器命令一直在执行,这意味着您无法使用&&
链接命令。但是,您可以使用&
在后台运行模拟器终端,这样我们就可以通过以下方式链接命令:
emulator @Nexus_5X_API_27_x86 & react-native run-android
如果您乐于在后台运行终端,这可能是您的解决方案。
有关从命令行运行模拟器的更多设置,请参阅docs
请注意,当您尝试运行模拟器命令时可能会出错。我遇到的最常见的是 PANIC: Missing emulator engine program for 'x86' CPUS。 这可能需要您深入了解 .bashrc 或 .bash_profile 以使模拟器命令正常运行.你可以看到更多here
【讨论】:
但它的说法'emulator' is not recognized as an internal or external command,
正如我所说,你可能不得不和你一起玩.bashrc
或.bash_profile
。您可能缺少其中的命令。以下是在Mac上设置adb ***.com/questions/17901692/set-up-adb-on-mac-os-x for windows 本文有一些建议androidcentral.com/…
@Amjad ,对于 Windows,确保 %LOCALAPPDATA%\Android\Sdk\emulator
在您的 PATH
用户变量中。重新启动 command prompt
或 powershell
,然后运行 emulator '@Nexus_5X_API_27_Android_8.1'
其中 Nexus_5X_API_27_Android_8.1
是您的 Android 虚拟设备 (AVD) 名称。以上是关于默认使用 React Native 打开 android 模拟器的主要内容,如果未能解决你的问题,请参考以下文章
为啥 react-native 包使用原生 SDK 而不是 JS/web 版本?