在linux裡面,模擬器可以直接識別,使用adb也沒有限制,但是手機插上usb之後,adb並不識別,顯示的是問號,在eclipse裡面也是這樣。
解決方法如下:
1.在bash中輸入lsusb,可以看到很多BUS設備,很多都是Linux Foundation 1.1 root hub的,這是沒有插上usb設備的端口,插上手機的端口會出現另外的字符串,比如我的是High Tech Computer Corp. 然後記下它的id:0bb4:0c02
2.在/etc/udev/rules.d目錄下新建一個51-Android.rules文件,內容如下:
Java代碼
- SUBSYSTEM=="usb|usb_device", SYSFS{idVendor}=="0bb4", MODE="0660",GROUP="plugdev"
- SUBSYSTEM=="usb|usb_device", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c02", SYMLINK+="android_adb"
- SUBSYSTEM=="usb|usb_device", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c01", SYMLINK+="android_fastboot"
這裡的idVendor是第一步中記下的id。
3.執行如下命令
Java代碼
- chmod a+r /etc/udev/rules.d/51-android.rules
- sudo adb kill-server
- sudo adb devices
然後就會發現 adb可以用了。