如何让 adb 设备在 virtualbox 虚拟机中工作?

如何让 adb 设备在 virtualbox 虚拟机中工作?

如何让 adb 设备在 virtualbox 虚拟机中工作?

(注意:我安装了 VS 2015 可再发行版本https://www.microsoft.com/en-us/download/details.aspx?id=53587为了adb devices不在我的 win7 VM 上给出缺少 DLL 的错误,否则至少在 win7 上会给出错误。我从https://developer.android.com/studio/releases/platform-tools

如您所见,在虚拟机之外,它列出了连接到我的物理计算机的智能手机。

但在虚拟机中,它看不到它

在此处输入图片描述

添加

我发现使用 VirtualBox 时,你必须做很多事情才能让 USB 被识别。例如检查 VirtualBox 的版本(我的情况是 6.0.4),转到此处https://www.virtualbox.org/wiki/Download_Old_Builds_6_0 下载适用于我的 virtualbox 版本的“扩展包”,安装它,以便它显示在 virtualbox 的文件..首选项..扩展中。执行设备..插入客户添加 CD 映像,安装它。关闭虚拟机。转到我现在已经完成了。单击虚拟机,转到机器..设置.. usb,然后单击 USB 设备弹出的小方块。我选择了我希望我的虚拟机看到的 USB 设备。我启动了机器。

我使用的 USB 插槽是 USB3,它们在 USb 符号旁边标有 SS。在 VirtualBox 机器..settings..usb 中,显示 USB2、USB3。我尝试了 USB3,但没有显示。然后我尝试了 USB2,成功了。(即关闭虚拟机,这样 USB 设置就不会变灰,选择 USB2,然后启动虚拟机)。

VM 现在可以看到智能手机。还有我插入的 USB 记忆棒。(因此,VM 可以看到,而不是物理计算机可以看到)。

但是虚拟机内的 adb devices 仍然没有列出该设备。

我在另一部手机(Moto G7 Power)上测试了它,结果也是一样。获取 VM 来查看它,但 adb devices 没有列出它。

下图中的两个窗口(显示智能手机的计算机窗口和未看到智能手机的 adb devices 命令窗口)都是虚拟机的窗口。使用不同品牌/型号的智能手机时也会发生同样的事情。

在此处输入图片描述

答案1

这种方式的 ADB 与您的 USB 绑定,因此您的 VM 需要能够看到 USB 设备。但是,这是一个非此即彼的操作。您的设备要么与您的主机绑定,要么与 VM 绑定 - 不能同时进行。

确保您的 VM 在其硬件配置中添加了 USB 控制器,并且 VM 中安装了 Virtualbox Guest Additions。

完成此操作后,您将在虚拟机窗口底部看到一个 USB 图标。单击该图标,然后选择您的 Android 设备以将其控制权交给虚拟机。

VirtualBox 窗口

答案2

据我所知:vm 中的 adb 在另一个端口打开一个服务器。它与 VM 外部的 adb 不兼容。因此,您必须确保它未连接到 VM 外部的系统并且在那里忙碌。(请先尝试断开 USB,然后使用 virtualbox 菜单连接,参见@Karu 的屏幕)。如果它未连接到主机系统,您可以启动 adb 设备并在连接的设备上授权此 adb 会话。

(通过搜索来到这里,这种方法对我来说很有效,感谢您的准备工作)

相关内容