之前一直都是在windows下進行開發的,但是這次由於一個小模塊用的東西只能在linux下運行,所以就發生了這么一系列的問題
環境:虛擬機Vmware下的Ubuntu12.10
事件:連接android手機后,使用adb devices,出現了?????,nopermissions沒有權限的問題,如圖:
原因:經過百度得,原因是ubuntu這樣的系統都是默認以非root身份在運行的,要使用usb調試,需要sudo支持。
解決方法:
1.輸入命令lsusb,查看usb的使用情況,其中綠色方框里面的是我當前連接的android設備,記錄下ID中的18d1:9025.后面會用到
2.輸入命令sudo vim /etc/udev/rules.d/70-android.rules,在里面輸入以下內容並且保存,需要注意的是,下面內容中的ATTRS{idVendor}為上圖中的ID中的冒號左邊部分,ATTRS{idProduct}為上圖中的ID中的冒號的右邊部分。
如果有多個設備的話,可以直接在這個文件下,換行,繼續按照下面的格式添加內容。
單個的情況下:
SUBSYSTEM=="usb",ATTRS{idVendor}=="18d1",ATTRS{idProduct}=="9025",MODE="0666"
多個的情況下:
SUBSYSTEM=="usb", ATTRS{idVendor}=="21d2", ATTRS{idProduct}=="0363",MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="9025",MODE="0666"
3.保存之后就給該文件賦予相關權限sudo chmod a+rx /etc/udev/rules.d/70-android.rules
4.輸入命令sudo service udev restart重啟udev
5.不需要重啟計算機,重新啟動adb server,拔掉usb重新連上再執行adb devices即可。

