如何使用adb与Memu / Bluestacks / Nox App Player等模拟器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用adb与Memu / Bluestacks / Nox App Player等模拟器相关的知识,希望对你有一定的参考价值。
我想使用adb
与android模拟器。我可以伪造USB连接或者这怎么可能?
仿真器已植根,USB调试选项已打开
我也试过像adbWireless这样的应用程序,但我得到主机没有回应(10060)错误。
我是否总是需要USB连接进行初始化?如何将adb
与仿真器连接起来?
对于MEmu,Droid4X和其他基于VirtualBox的仿真器存在非常简单的方法:
您需要转发5555端口给您主机。
例如,在Droid4X中,您可以在文本编辑器中打开vmsdroid4xdroid4x.vbox
。它只是简单的xml文件。
在<NAT>
部分中,您添加了一行:
<Forwarding name="MY_PORT" proto="1" hostip="127.0.0.1" hostport="5565" guestip="10.0.2.15" guestport="5555"/>
您不仅可以使用5565端口。它必须是不均匀的,范围5555-5585或adb不会自动找到您的模拟器。
保存文件并启动模拟器。现在运行adb devices
,你会在列表中看到emulator-5564
。
您必须仅在完全停止的模拟器上编辑文件,否则您的更改将被覆盖。它不仅意味着停止虚拟机。您也必须停止服务流程。通常它从你的模拟器的文件夹中称为VBoxSVC.exe
或MemuSVC.exe
或另一个*SVC.exe
。
对于Memu,你需要编辑MEmuMemuHyperv VMsMEmuMEmu.memu
。所有其他人保持不变。
我正在使用Memu版本2.3,用于将其连接到Android studio的端口是21503.导航到您的sdk的platformtools目录并在cmd中执行以下操作。如果失败,请尝试再次执行它。您也可以安装三星USB驱动程序,然后重试。
adb connect localhost:21503
我通过以下步骤解决了:
转到Memu安装目录:(在我的案例中D: Program Files Microvirt MEmu)
然后删除adb.exe文件。它应该适合你。
好的,这是MEmu模拟器的分步指南。
下载并安装adbWireless应用程序到模拟器(谷歌“adbwireless xda”,我不能在这篇文章中插入超过2个链接)。之后,您将需要设置一个网桥,完全按照此处所写,并重新启动计算机:MEmu bridge
然后打开模拟器,激活USB调试,运行adbwireless,按下按钮。您应该看到IP地址,从“192.168”开始。如果没有 - 你做错了什么。
使用管理员权限运行命令shell。用它导航到带有adb的文件夹(在我的例子中是“D: Program Files Microvirt MEmuHyperv”或将其添加到系统Path变量)。记住adbwireless的IP,然后在shell中执行命令adb connect your_ip
,在我的例子中它是192.168.0.101。 shell会通知你:connected to 192.168.0.101:5555
。然后执行adb devices
,这样你就可以看到连接设备的列表。恭喜,您使用adb连接到MEmu。
在this post有更多的方法来建立连接,但它是俄语。
对于Nox App Player,端口是62001
。
$ adb connect 127.0.0.1:62001
connected to 127.0.0.1:62001
$ adb devices
List of devices attached
127.0.0.1:62001 device
$ adb shell
root@android:/ #
如果它不起作用,请先打开“USB Debugging”:
- 启动Nox App Player。
- 转到“设置” - >“关于平板电脑”。
- 点击(点击)“Build number”7次,直到它说: 开发者模式已启用。
- 返回上一屏幕。
- 转到“开发人员选项”。
- 打开“USB调试”。
- 重启Nox App Player。
Resources
- How to connect Android Studio with Nox App Player for Android development and debug | NoxPlayer 来自官方网站的指南。可提供分步说明的图片。 我发现按指南的建议打开“Root”是没有必要的。
FindEmulatorPort用于查找android模拟器adb端口并自动连接,如腾讯手机助手,网易MuMu,BlueStacks,Nox App Player等。下载来自:https://gitee.com/tp7309/TTEmulatorPortFinder/repository/archive/master.zip
python emulator_port.py
复制adb.exe和你在工作室使用的android SDK中的文件夹中找到的所有文件,而不是将它传递到memu文件夹以替换旧的memu adb。而已。
- 下载/解压缩MEmu HyperV Tool
- 将解压缩文件夹中的文件移动到:%PROGRAMFILES% Microvirt MemuHyperV
- 使用以上文件夹中的驱动程序'MEmuNetFit.inf'安装仅主机网络适配器开始>控制面板>设备管理器>网络适配器> [窗口顶部的菜单]>操作>安装旧硬件>下一步> [o]安装硬件I手动 - 从列表中选择>下一步> [x]网络适配器>从磁盘>浏览...>%PROGRAMFILES% Microvirt MEmuHyperV MEmuNetFit.inf
- 桥接网络适配器“开始”>“控制面板”>“网络和共享中心”> [窗口左侧的链接]>更改适配器设置> [按住Ctrl键并单击右键,单击仅主机适配器和主互联网一个]>桥接连接
- 关闭VM并在“MEmuHyperV”文件夹中打开“MEmuHyperV.exe”。我们将把VM连接到我们在以下步骤中创建的适配器。
- [右键单击VM]>设置>网络>适配器2删除适配器#1会中断VM
- 启用适配器,选择连接到'Host-Only Adapter'并选择Name:'MEmuHyperV Host-Only Ethernet Adapter'
- 应用设置并关闭MEmuHyperV
- 导航到C: Program Files Microvirt MEmu adb.exe并在那里启动命令。
- 运行adb connect 127.0.0.1:21503。
首先,您应该找到特定仿真器VM的配置文件。例如Memu的配置vm的文件位于~C:Program FilesMicrovirtMEmuMemuHyperv VMsMEMU_NAMEMEMU_NAME.memu
附近。其次,如第一个答案中所述,在部分中添加行:
<Forwarding name="ADB" proto="1" hostip="127.0.0.1" hostport="21743" guestip="10.0.2.15" guestport="5555"/>
取hostport
的价值,这里是21743
。
第三步是使用来自MEmuHyperv C:Program FilesMicrovirtMEmuHypervadb.exe
的adb。其中一个可能的解决方案是打开cmd,然后cd到MEmuHyperv的文件夹并从那里开始工作。
由于MEmuHyperv现在是独立项目,您可以从这里下载http://www.memuplay.com/blog/2016/08/08/memuhyperv-tool/
以上是关于如何使用adb与Memu / Bluestacks / Nox App Player等模拟器的主要内容,如果未能解决你的问题,请参考以下文章
如何在三星galaxy s7上为React Native启用USB调试