1. 程式人生 > >adb 不識別解決辦法

adb 不識別解決辦法

在 android 裝置的 Linux 核心中把 USB 驅動的 PID VID 修改以後,也許之前的 adb 工具就不能識別裝置了,會打印出 "device not found" 的提示,特別是 windows ,adb 驅動也不能用了。

這個時候該怎麼辦呢?

一,先搞清現在的 PID ,VID 為多少,例如分別為 aaaa、bbbb(十六進位制)

      對於 linux 如 ubuntu, 插入 裝置,再查詢 /sys/bus/usb/ 下的相應裝置,如 "1-1" 下的 idVender, idProduct 獲得。

      對於 windows, 可從相應裝置的屬性中獲得

二,對於windows:

1. 修改 adb 驅動中的 android_winusb.inf 檔案。對照著別的專案加就可以了。

例如:

; My product
%CompositeAdbInterface% = USB_Install, USB\VID_AAAA&PID_BBBB

%SingleBootLoaderInterface% = USB_Install, USB\VID_AAAA&PID_BBBB&MI_01

2. 右擊我的電腦->屬性->高階->環境變數,新增 ANROID_SDK_HOME 環境變數。如果你有 android SDK, 就設成 SDK 的路徑;如果沒有,那也沒關係,設為你覺得方便的任何路徑。

3. 在前面設定的 ANDROID_SDK_HOME 對應的路徑下,尋找 .android 目錄,如果沒有就建立一個;在 .android 目錄下新建一個檔案,叫adb_usb.ini, 記住,字尾是 "ini" 哦;新增前面獲得的 VID 到 adb_usb.ini 中,如 0xAAAA。

4. 然後安裝 adb 驅動

5. 進入 DOS cmd, 分別輸入 adb kill-server, adb start-server, adb devices;若能看到 devices 列出,那麼就成功了。

三,對於linux

1. 在使用者的 home 目錄下,尋找 .android 目錄,如果沒有就建立。在 .android 目錄下新建一個檔案,叫 adb_usb.ini, 記住,字尾是 "ini" 哦;新增前面獲得的 VID 到 adb_usb.ini 中,如 0xAAAA。

2. 在 shell 中 分別輸入 adb kill-server, adb start-server, adb devices;若能看到 devices 列出,那麼就成功了。

這裡 kill-server,是 kill 掉 adb 的 daemon,否則,adb 還是保留著先前的 Vender 資訊。start-server 就載入了新的 Vender 資訊。

注意:有些人可能用 adb 需要超級使用者許可權,這時第一步中的home 目錄應該為 /root,不想麻煩,直接兩個 Home 目錄都加上得了。