linux 如何在Windows上运行Android模拟器,同时使用WSL2和zsh?

yfjy0ee7  于 2023-03-29  发布在  Linux
关注(0)|答案(2)|浏览(318)

我基于这个答案:https://stackoverflow.com/a/58229368/13495096
我需要通过WSL 2在Windows中使用react-native进行开发。
我完全按照答案做了,在解决了一些错误几个小时后,达到了这样的地步:

  • WSL 2已安装并运行(Ubuntu 20.04 LTS)
  • Android Studio安装在Windows 10(Pro x64)上;
  • ADB在WSL 2和Windows中的版本相同(1.0.32);
  • 在我的.zshrc文件中正确配置了$PATH(如下):
# Android SDK

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JRE_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre/
export ANDROID_SDK_ROOT=/usr/lib/android-sdk
export ANDROID_HOME=/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
export PATH=$PATH:$JAVA_HOME/bin
export PATH=$ANDROID_SDK_ROOT/cmdline-tools/tools/bin:$PATH

我在Android Studio(Windows)和Powershell中启动设备,运行adb devices时,它返回:

List of devices attached
emulator-5554   device

当我在我的WSL终端上运行adb devices时,它只返回List of devices attached,没有其他任何东西。
根据链接的答案,有可能做到但我做不到。我如何才能做到这一点?我错过了什么?
我正在从OS X转向Windows,我从未尝试过Linux。

hmtdttj4

hmtdttj41#

最终找到了这个解决了我问题的教程(但提出了其他一些问题,比如无法从Android Emulator访问localhost)
https://gist.github.com/bergmannjg/461958db03c6ae41a66d264ae6504ade

tp5buhyn

tp5buhyn2#

这个问题已经在topic中解决了,这个问题的解决方案非常简单:
例如,我在windows中的SDK PATH位于以下位置:
/mnt/d/Android/Sdk/platform-tools/adb.exe
然后在我的wsl bash控制台中,我需要安装adb:
sudo apt install adb
wsl中的默认安装路径如下:
/usr/bin/adb
现在在wsl安装路径中将adb更改为adb_bk:
sudo mv /usr/bin/adb /usr/bin/adb_bk
最后用adb.exe将wsl安装中的PATH更改为Windows PATH安装:
sudo ln -s /mnt/d/Android/Sdk/platform-tools/adb.exe /usr/bin/adb
当我运行我的ADB设备在我的windows这个设备是附加在我的wsl adb:
adb devices

相关问题