Linux 不是很多裝置都不需安裝驅動程式嗎?怎麼會這樣呢?原來,是 USB 裝置的自動辨識機制尚未設定。由於 Android 裝置並不是 PC 的常設裝置,當然 Linux 也就未預設安裝妥善。只要依照下面這幾個步驟,就可以自動偵測了:
1. 切換成 root 身份
需先切換成 root 身份才能作以下操作,請參考 " 在 Linux 中,切換為 root 身分以操作、設定系統 " 一文。2. 編輯設定檔
在目錄路俓 “ /etc/udev/rules.d/ " 下編輯一個設定檔 “ 52-android.rules ”,以「終端機」用圖形化編輯的操作為例,[root@Celeron-D ~]# gedit /etc/udev/rules.d/52-android.rules再將下面文字輸入
# Company USB Vendor ID編輯完成,將檔案儲存。
# ASUS 0B05
# HTC 0BB4
# Motorola 22B8
# Samsung 04E8
SUBSYSTEM=="usb", SYSFS{idVendor}=="0b05", SYMLINK+="android_adb", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", SYMLINK+="android_adb", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="22b8", SYMLINK+="android_adb", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="04e8", SYMLINK+="android_adb", MODE="0666"
注意:以上開頭為 " SUBSYSTEM " 的四列設定文字,中間並沒換列。
3. 重新啟動測試機制
這時候自動偵測的機制仍然是舊的設定,要重新啟動後,剛才的設定才會生效。[root@Celeron-D ~]# udevadm control --reload-rules執行成功後,就可以切換回原來的使用者身份。
4. 正常測試使用
重新拔插 Android 手機或平板的 USB 插頭一次,這時 Linux 應該可以正常偵測到 Android 設備了。再用 adb 測試一下,看看剛才的設定是否成功:[SiB@Celeron-D ~]$ Android-SDK/platform-tools/adb devices注意:" adb " 的路徑會因作業系統、或 SDK 版本的不同而不同,請耐心找一下。
List of devices attached
000990c55a666f device
已測試版本:
- Fedora: 14, 17
沒有留言:
張貼留言
感謝你耐心看完本文,歡迎留下任何指正、建議,筆者會儘快回應。(English is also welcome.)