ubuntuadbdevices :no permissions解決方法
untun下usb連線android手機後,使用adbdevices 出現如下:
list of devices attached
????????????no permissions
同時在ddms中顯示裝置名也顯示????,也無法顯示程序名,無法檢視log。
一、工具介紹
android-sdk-linux_x86/tools下有一堆工具,今天要用的是:android debug bridge,在android開發過程中,這個工具是使用得最多的。(縮寫adb,有點像gcc的gdb似的)
adbstart-server – 實際上它會啟動乙個adbfork-server server二、設定usb許可權adbkill-server – kill掉
adbdevices – 列出所有的裝置
因為ubuntu這樣的系統都是預設以非root身份在執行的,要使用usb除錯,需要sudo支援。
$ lsusb列表中,bus 001 device 010: id 0bb4:0c87 high tech computer corp. 這一行為htc手機的usb使用埠,記錄一下,id為0bb4(基於上所有的htc都是這個id)。bus 005 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 004 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 003 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 002 device 003: id 413c:2106 dell computer corp.
bus 002 device 002: id 0461:4d81 primax electronics, ltd
bus 002 device 001: id 1d6b:0001 linux foundation 1.1 root hub
bus 001 device 010: id 0bb4:0c87 high tech computer corp.
bus 001 device 001: id 1d6b:0002 linux foundation 2.0 root hub
$sudo vim /etc/udev/rules.d/70-android.rules加入以下內容:
subsystem=="usb", attrs=="0bb4", attrs=="0c87",mode="0666"執行命令,重啟udev:其中的idvendor idproduct指的是usb的id可以使用lsusb查詢得到。
比如我的是:
lsusb
bus 001 device 010: id 0bb4:0c87 high tech computer corp
id 0bb4 就是idvendor ,0c87就是 idproduct
$sudo chmod a+rx /etc/udev/rules.d/70-android.rules三、重新啟動adbserver$sudo service udev restart
(很重要)拔掉usb重新連上再執行:
sudo ./adbkill-server四、使用usb進行除錯./adbdevices
./adbroot (這一步很重要 )
問題說明中的問題至此已經得到解決。
在ddms選擇相應的devices,可以看到log了。。。。
五、知識積累
1. gooogle udev
2.拔插usb,使用以下命令可以實時監視系統資訊
sudo tail -f /var/log/messages
六、ubuntu 敲adbdevices 裝置列表為空,但lsusb可以檢視到pid與vid
sudo gedit ~/.android/adb_usb.ini 編輯該檔案
加入0x0bb4 後執行下面命令
sudo service udev restart
android updateadb更新服務
七、參考
1. 2.
讀後感:
因為工作中用到在linux裡檢測adb的功能,所以找到上面這篇文章。參照上面的步驟一步步做最後成功地檢測到adb。值得注意的是,我在執行./adb root時,仍然提示no permissions,後來我參照
輸入 sudo ./adbstart-server後,再輸入./adbdevices驗證,問題才解決。
如果想要在任意路徑下都直接執行adb命令,需要把adb所在的路徑註冊到系統$path,方法是:
這時候還需要編輯一下 ~/.bashrc 檔案加入adbtool的路徑
vi ~/.bashrcexport path=$:/home/rabbit/documents/platform-tools (摘自linux(ubuntu)下配置安裝adb工具 鏈結
另外,$sudo service udev restart 指令可以用另外的指令代替:sudo /etc/init.d/udev restart 或者sudo restart udev (摘自
Ubuntu下adb工具安裝配置
2 解壓縮,並更新 cd adt bundle linux x86 64 20140321 sdk tools andirod 3 配置環境變數 sudo gedit bashrc set path for android sdk tools export path path adt bundle ...
ubuntu中adb的安裝
1 通過apt get安裝adb sudo add apt repository ppa nilarimogard webupd8 sudo apt get update sudo apt get install android tools adb 將android裝置連線至電腦,執行adb she...
ubuntu 下 adb 裝置掛載
經常在ubuntu 進行andorid 開發除錯的時候,adb 連線中斷 解決方案 1 查詢手機usb資訊 id 方法 先拔下手機連線pc的usb線,然後檢視usb裝置資訊,再次插入usb連線線,再次檢視usb裝置資訊,通過比較,查詢到自己手機的usb資訊。使用命令 lsusb bus 002 de...