您的位置:首页 > 移动开发 > Android开发

Mac OS X 下部分Android手机无法连接adb问题之解决方案

2016-01-14 14:03 826 查看
转自:http://blog.csdn.net/artwebs/article/details/20716431

另一更详细的命令创建 .ini文件 http://www.cnblogs.com/liulipeng/p/4031993.html

时至当今,Android山寨手机厂商已如此之多,能修改和个性化定制Android OS的能人已是多如牛毛,有的牛人修改Android系统只会影响所修改的点,不会影响其它,然后还有的就不多说了,总之做的修改会造成很多影响其它方面功能的问题。对Android APP开发者来说最常见的就是adb(Android Debug Bridge)连接问题,HTC就不说了,是和Google合作的,Android前几代系统版本刚出来时,Google都是首先从HTC出相应新Android版本的产品,所以新产品的很多Android新特性代表的就是Google的原始意愿的。所以HTC的手机相应问题会少很多。

说了点儿废话,下面进入正题:

  Mac OS X下和Windows(XP、7)下adb连接Android手机,有一点不同就是Mac OX X下没有所谓的Android usb adb驱动,只需要下载Google官方的sdk开发包,指定android-sdk-macosx/platform-tools/路经到系统当前用户的环境变量即可。

[java] view
plaincopy





-MacBook-Pro:~ user$ Vim /Users/user/.profile  

export PATH=$PATH:/Android-SDK/android-sdk-macosx/platform-tools  

export PATH=$PATH:/Android-SDK/android-sdk-macosx/tools  

前期adb之类工具放在tools目录下面,后期统一放到platform-tools目录下面去了。

此后,打开终端,在任意当前路经下都可以直接执行adb命令,通过USB线将Android手机和Mac PC连接后,adb devices,没有相应设备的列表。下面是解决办法:

1. 插上手机连Mac  打开终端,输入:system_profiler SPUSBDataType,查看Mac系统所有USB设备信息,找到相应的厂商Vender ID。

查到相应连有Android手机设备的usb hub,找到相应的厂商Vender ID,比如,我的测试机K-Touch T619天语手机就无法连接adb,查到的相应信息片段如下:

[java] view
plaincopy





-----------------  

 Spreadtrum phone:  

  

              Product ID: 0x5d04  

              Vendor ID: 0x1782  

              ...  

       Serial Number: T619  

       ...  

-----------------  

2. 终端进入~/.android,应该有一个adb_usb.ini文件,如果没有就创建,然后将上面的Vender ID “0x1782”单独一行加入到该文件,然后退出。

[java] view
plaincopy





# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.  

# USE 'android update adb' TO GENERATE.  

# 1 USB VENDOR ID PER LINE.  

0x1782  

3. 重启adb server进程。

终端依次执行下面命令:

[java] view
plaincopy





adb kill-server  

adb start-server  

然后通过adb devices命令就可以查看到以相应设备Serial Number为名字的设备。如:

[java] view
plaincopy





-MacBook-Pro:.android user$ adb devices  

List of devices attached   

emulator-5554   device  

T619    device  

PS:

1. 有时 adb devices不能显示连接设备,需要拔掉数据线,多插几次,并且退出终端,然后重新打开,再输入命令就能发现连接的设备,再无法连接请重启电脑,等待系统初始化环境设置。

需要注意的是并不是所有的android机器都能解决,比如有的手机有供应商ID,缺少产品ID,依然无法识别,这种奇葩形的就只能找其它方法了。

2. Windows(XP、7)下面也可以同样的方法解决。但是前提也是已经指定了adb环境变量并且安装了相应Android手机设备的adb usb驱动,判断有没有装通过将手机和Windows连接,设备管理器里面没有发现显示有问号的设备就说明装了,有就说明没有安装。然后在C:\Users\username\.android目录下面也有一个adb_usb.ini文件,像前面那样别起一行添加相应设备的Vender ID,重启adb server进程即可。

 Reference:
http://blog.csdn.net/esonpo/article/details/8798594
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: