在 Mac OSX 下做 Android 真机测试的时候,发现 Android Device Chooser 里,小米手机的状态显示为 unknown。但是手机的 USB 调试已经打开了。难道是因为驱动的问题?然而小米并没有提供 Mac 下的驱动程序。
注:小米手机打开 USB 调试模式的方法——在“关于手机”里,连续点击“Android 版本”四次,然后回到上一级,“关于手机”上面就出现了“开发者选项”
其实在 Linux 和 Mac 上是不需要安装驱动的,只要让 ADB 能够识别小米手机的 USB Vendor ID 即可。
解决办法:
1、配置
Android 开发环境。最好直接去
Android 官网下载一个集成的 ADT(Android Developer Tools) 工具即可,解压缩以后 Eclipse 和 SDK 都有了。
记得配置 ~/.bash_profile,请自行搜索相关资料。
2、查找设备的厂商号(Vendor ID)。点击屏幕左上角苹果标志->关于本机->更多信息->系统报告,在左侧列表选择 USB,就能看到对应的 USB 设备厂商号。
找到其中的类似于“HM1 Android Phone”的东东(不同设备略有不同,自己摸索吧),点击在下方看详细信息,如图:
其中的厂商 ID 就是我们需要的,小米1的一般是 0x18dl,小米 2 以后 和 红米应该是 0x2717。
3、执行命令
[color=rgb(88, 110, 117) !important]1 | echo "0x2717" >> ~/.android/adb_usb.ini |
4、重启 ADB。如果配置了 adb 的环境,就直接执行
[color=rgb(88, 110, 117) !important]1[color=rgb(88, 110, 117) !important]2 | adb kill-serveradb start-server |
如果没有,就要进入 Android SDK 目录下的 platform-tools 去执行(早期的 Android SDK 版本,可能在 tools 目录下):
[color=rgb(88, 110, 117) !important]1[color=rgb(88, 110, 117) !important]2 | ./adb kill-server./adb start-server |
成功后应该能看见提示:
[color=rgb(88, 110, 117) !important]1[color=rgb(88, 110, 117) !important]2 | * daemon not running. starting it now on port 5037 ** daemon started successfully * |
如果遇到错误:
[color=rgb(88, 110, 117) !important]1[color=rgb(88, 110, 117) !important]2[color=rgb(88, 110, 117) !important]3 | can't bind 'tcp:5037', ADB server didn't ACK*faild to start daemon * |
就将 5037 端口的进程杀掉重启就可以了,实在不行就重启一下电脑。
最后拔掉手机重新连接一下,手机会提示是否允许连接这台电脑进行 USB 调试,确定后应该就可以了。