必须确保ADB服务识别设备厂商ID,否则adb devices返回空或unauthorized;先验证adb version,再开启手机USB调试并授权,用system_profiler查Vendor ID(如0x2717),写入~/.android/adb_usb.ini,最后adb kill-server && adb start-server。

要在Mac终端中准确列出所有已连接的安卓设备,必须确保ADB服务识别到设备的硬件厂商ID,否则adb devices命令只会返回空列表或显示unauthorized状态。
确认ADB命令可用
打开终端,输入adb version回车。若提示command not found,说明ADB未加入环境变量路径,需先配置platform-tools路径;若正常输出版本号(如Android Debug Bridge version 1.0.41),说明基础环境就绪。
这一步操作起来很简单,直接把文件拖进去就行。
开启手机USB调试并连接
在安卓手机“设置→关于手机”中连续点击“构建号”7次,激活开发者选项;返回设置主菜单,进入“开发者选项”,启用“USB调试”。用原装USB线将手机连接Mac,系统弹出授权提示时,勾选“始终允许”,再点“确定”。
【不勾选“始终允许”会导致每次重启ADB服务后重新弹窗,且无法自动授权】
获取手机厂商ID(Vendor ID)
终端执行:system_profiler SPUSBDataType → 在输出内容中逐行查找你的手机型号(如“Xiaomi M2102K1AC”或“Samsung SM-S918U”)→ 定位其下方的Vendor ID:字段,值形如0x2717或0x04e8。
注意:不同品牌对应不同Vendor ID,华为是0x12d1,三星是0x04e8,小米常见为0x2717,OPPO/realme多为0x22d9——不能凭经验乱填,必须实查。
写入adb_usb.ini并重启服务
第一步:检查~/.android/adb_usb.ini是否存在,若无则新建:touch ~/.android/adb_usb.ini;
第二步:将上一步查到的Vendor ID(含0x前缀)追加进该文件:echo "0x2717" >> ~/.android/adb_usb.ini;
第三步:强制重启ADB服务:adb kill-server → adb start-server;
第四步:执行adb devices,此时应看到类似输出:
List of devices attached<br>1234567890ABCDEF device。
如果仍显示?????????? no permissions,说明Vendor ID写错或未生效,需重新检查adb_usb.ini文件权限及内容是否含多余空格或换行。

















