android-emulator - 设置安卓模拟器设备名称
问题描述
当我将手机连接到计算机并adb devices
在控制台中使用时,我可以看到:
List of devices attached
XYZQWERTYXYZ device
当我将同一部手机连接到另一台电脑时,设备名称保持不变。
最近我开始使用MEMU模拟器。当我通过模拟器运行 android 实例时,会adb devices
返回如下内容:
List of devices attached
127.0.0.1:21513 device
问题是当我想在另一台电脑上使用相同的 memu android 实例时。我可以导出和导入该实例,但设备名称在另一台电脑上可能不同,例如:
List of devices attached
127.0.0.1:21503 device
D:\Program Files\Microvirt\MEmu\MemuHyperv VMs\MEmu_1
我在包含每个模拟器 android 实例的配置的位置找到了配置文件。在.memu
文件中我可以找到这样的行:
<Forwarding name="ADB" proto="1" hostip="127.0.0.1" hostport="21513" guestip="10.0.2.15" guestport="5555"/>
<Forwarding name="MVD" proto="1" hostip="127.0.0.1" hostport="21511" guestip="10.0.2.15" guestport="21501"/>
hostport
我想我可以通过将值更改为不同的值来强制 memu 在特定端口上运行 android 实例,例如
<Forwarding name="ADB" proto="1" hostip="127.0.0.1" hostport="21600" guestip="10.0.2.15" guestport="5555"/>
不幸的是,当我通过 MEMU 启动 android 实例时,主机端口又回到21513
. 对此我有什么办法吗?
换句话说 -我想有机会确定设备名称。
解决方案
使用最新的 Memu 进行测试,似乎 Memu 会按照设计在每次启动时恢复主机端口。
一个简单的解决方法是使用 Windows 防火墙转发端口,如下所示:
netsh interface portproxy add v4tov4 listenport=21600 listenaddress=0.0.0.0 connectport=21513 connectaddress=localhost
netsh advfirewall firewall add rule name="Port for Memu_0" dir=in action=allow protocol=TCP localport=21600
推荐阅读
- perl - Perl 5.22 和之前的子程序有 * 原型有什么区别?
- react-native - 停止工作“expo start”。错误:“在项目中找不到路径。”
- react-native - 我如何用上下文包装反应导航
- c++ - 在 QGraphicsScene 中单击并拖动 QGraphicsItem?
- sparql - 从给定的 wiki-ID 获取多个信息的 SPARQL 查询
- apache-spark - Pyspark sql 创建 hive 分区表
- amazon-web-services - 如何在不使用密钥的情况下将 GitHub 操作与 AWS 部署连接?
- css - 有什么方法可以从 CSS 中使用 SVG Sprite?
- r - 将txt文件加载到R中并根据其他数据框替换一些值
- vue.js - 如何将任务添加到我的 Vue 2 待办事项应用程序的列表中?