1. 程式人生 > >adb連線的終極解決方法

adb連線的終極解決方法

前情提要

本文的前提是你已經嘗試過網上一般的解決方法,比如:

Windows(Window 7-32為例):

1.重新安裝驅動

2.下載adb,並新增系統路徑

3.重新開啟除錯模式,重拔插,重啟等等

Linux(Ubuntu12.04-64為例):

1.修改過/etc/dev/rules/51-android.rules,已新增裝置id規則。

2.重啟adb服務,重啟udev服務,重新拔插裝置,重啟裝置,開啟除錯模式等等。

解決方法

下面說解決方法:

Linux(Ubuntu12.04-64為例):

執行命令:

$:android update adb
正常情況下會輸出如下內容:
adb has been updated. You must restart adb with the following commands
	adb kill-server
	adb start-server
如果輸出:
SWT folder '/xxx/...' does not exist.
Please export ANDROID_SWT to point to the folder containing swt.jar for your platform.
這表示找不到swt.jar,根據提示路徑找到swt.jar,然後根據下面命令臨時新增到PATH:
export ANDROID_SWT=/xxx/...
新增完後再執行:
$:android update adb
知道輸出正確內容,如上所示。

在你的home目錄下有個隱藏資料夾.android(Ctrl+H檢視隱藏資料夾),裡面會有adb_usb.ini檔案,開啟新增你的android裝置ID。比如:

# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x1f3a
0x1f3a就是我的裝置ID。裝置ID號可通過lsusb命令檢視。此時,再重啟adb server。應該就可以正常使用adb了。

Windows(Windows 7-32為例):

windows下和linux大同小異。在CMD中執行

android update adb
前提是你已經把SDK tools新增到系統環境變數,如果沒有也可以直接在SDK tools路徑下執行命令。

執行完之後,在你的使用者目錄下有.android目錄,裡面同樣有adb_usb.ini檔案,編輯新增裝置ID,裝置ID可以檢視對應的USB驅動->詳細資訊->硬體ID:

比如為:USB\VID_0C45&PID_1234,VID後的4位數就是我們需要新增的ID,0x0C45
新增完後,用adb kill-server重啟adb就可以使adb正常檢測並連線到裝置了。