You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Android ADB多设备/模拟器报错:如何指定默认设备实现WiFi调试?

解决ADB多设备冲突,指定实体手机执行调试命令的方法

别担心,这个问题在同时连接实体手机和模拟器时特别常见——ADB不知道该优先操作哪台设备,所以抛出了error: more than one device/emulator的报错。咱们一步步来搞定它:

  • 第一步:先列出所有已连接的设备,确认实体手机的序列号
    打开终端执行以下命令:
    adb devices
    你会得到类似这样的输出(其中包含实体手机和Genymotion模拟器的信息):

    List of devices attached
    89XYZ123    device  # 这是你的实体手机的唯一序列号
    emulator-5556    device  # Genymotion模拟器的标识
    

    记下那串属于你实体手机的序列号(通常是一串字母数字组合,和模拟器的emulator-xxxx标识区分开)。

  • 第二步:指定实体手机执行tcpip命令
    把原来的命令改成带设备序列号的形式,替换成你刚才记下的实体机序列号:
    adb -s 89XYZ123 tcpip 5555
    这样ADB就会明确针对你的实体手机执行开启TCP调试端口的操作,不会再出现多设备冲突的问题。

  • 额外技巧:设置默认设备(免每次输入序列号)
    如果你之后经常要针对这台实体手机操作,不想每次都加-s参数,可以设置环境变量让ADB默认指向它:
    在终端执行:
    export ANDROID_SERIAL=89XYZ123
    这个设置只在当前终端会话有效,如果想永久生效,可以把这条命令添加到你的shell配置文件里(比如~/.bashrc~/.zshrc),保存后重启终端就可以啦。

内容的提问来源于stack exchange,提问作者Navid Abutorab

火山引擎 最新活动