React-Native 和 Visual Studio Emulator for Android

11

是否可以在Visual Studio Emulator for Android(独立版)上运行React Native应用程序?如果可以,设置步骤是什么?我可以成功启动模拟器,但无法弄清楚如何配置React Native以使用它而不是“adb设备”。

我的当前尝试以错误结束: 无法调试。执行命令“adb devices”时出错:命令失败:adb设备 “adb”不被识别为内部或外部命令, 可操作程序或批处理文件

我知道Android Studio和随附的虚拟设备,但我想将其作为最后一个选项尝试。我的环境是:Windows 10专业版,VS Code(带有React Native工具扩展),react-native,yarn。

更新

即使我没有在尝试中取得任何进展 我只是想分享我在解决此问题时获得的知识, 因为在另一台PC上可能有效,但我的问题可能特定于我的环境。

理论上,在Visual Studio Emulator for Android中运行React-Native只需要很少的步骤 在VS代码中,而不需要安装Android Studio或Visual Studio。

  1. 安装Visual Studio Emulator for Android,独立版 https://www.visualstudio.com/vs/msft-android-emulator/

  2. 下载Android Debug Bridge(adb)

Android SDK Platform-Tools已经包含在内,可以在此处下载并阅读更多内容: https://developer.android.com/studio/command-line/adb.html。它以zip文件的形式下载,您需要解压缩并将adb.exe的路径添加到PATH环境变量中,这样您就可以从任何路径执行adb命令了。我正在使用yarn,它需要知道adb.exe的位置。

它是您的应用程序和虚拟或真实的Android设备之间的连接器,在启动模拟器之前必须运行。基本命令包括:

停止 - adb kill-server

启动 - adb start-server

查看adb识别的设备列表 - adb devices

  1. 我还发现了一份关于如何使Visual Studio Emulator for Android与adb配合工作的具体说明:

https://msdn.microsoft.com/en-us/library/mt228282.aspx

'Visual Studio Emulator for Android' 设备未在 Android 设备监视器中列出

这是一个注册表编辑键

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools

显然,Visual Studio Emulator for Android 使用该键,如果没有该键,则可以创建它,并将 Path 变量添加/修改为 adb.exe 的路径。

  1. 现在,您可以启动 Visual Studio Emulator for Android,然后在您的 React Native VS Code 项目中打开集成终端并键入:

yarn run android

如果我理解正确(在完美的世界中),您的应用程序应安装并显示在 Visual Studio Emulator for Android 中, 但对于我来说,我的模拟器从未显示为设备,当我输入 adb devices 时,我只看到两行空白。

所以我认为我已经花了足够的时间尝试让它工作,在我的情况下,回答我自己的问题是:

理论上,您应该能够使用 VS 代码从 react-native 运行 Visual Studio Emulator for Android,但实际上可能不起作用, 因此请寻找更可靠的方法。

我使用expo应用程序尝试通过USB连接手机时,看到了一线希望,adb立即捕获到它,“yarn run android”开始执行操作,甚至尝试加载我的应用程序,我屏住呼吸,心跳加速,准备迎接奇迹......然后......崩溃了,但这可能更容易解决,似乎存在一些网络配置问题,我的手机无法识别运行yarn后输出的IP地址。如果这个问题得到解决(大的“如果”),那么仍然很好,我可以在不使用Android/Visual Studio的情况下运行/调试react-native。
最终更新:无法使其工作,停止所有尝试,改为使用Android Studio,Android Studio模拟器与react native和expo无任何问题。(好吧,至少示例应用程序运行正常。)

为了使adb命令正常工作,请参考以下链接:https://dev59.com/W2Ij5IYBdhLWcg3wKiLs - jay shah
2个回答

2
最初的回答:
我在尝试将React-Native和VS模拟器一起设置时遇到了同样的问题,以下步骤解决了这些问题:
1. 在“VS模拟器 for Android”上,我在“工具/网络”选项卡中检查了模拟手机的IP地址。 “Emulator Adapter #1”是指模拟手机。
2. 然后,我进入终端并运行了“adb connect :5555”。 这使得模拟手机可用于Android Studio以及React-Native。

1
如果您已经安装了Android Studio,则需要将路径C:\Users\manu\AppData\Local\Android\Sdk\platform-tools添加到环境路径中(请将您的用户名替换为manu)。
如果您没有安装Android Studio,则需要从https://github.com/intel/haxm/releases/download/v7.0.0/haxm-windows_v7_0_0.zip下载ADB。
然后进行安装。

intelhaxm-android.exe

.

打开一个新的终端,现在adb命令将会起作用。

这是HAXM源网站https://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager-intel-haxm


谢谢您的回答,使用Visual Studio模拟器对于react-native有帮助吗? - vlscanner
我不使用Visual Studio模拟器来进行Android开发。 但是如果你的设备在执行adb devices命令后出现在终端中, 如果你使用create-react-native app,那么就可以正常工作。 否则,你需要安装sdk才能使其正常工作。 - Man
我尝试了你的建议,Intel HAXM设置需要关闭Hyper-V,但是当我禁用它时,Visual Studio Android模拟器无法启动。错误消息建议确保启用Hyper-V。 - vlscanner
这是Intel硬件加速执行管理器Windows版的安装指南。 - Man

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接