ubuntu下執行cts

某日需要在Ubuntu下執行cts,卻發現設備不能被adb訪問如下:

$ adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
????????????    no permissions


首先識別設備:

step 1:得到設備ID,注意某一廠商所有產品的idVendor應當固定不變,只是具體產品idProduct不一致

$:lsusb

Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 004: ID 413c:2010 Dell Computer Corp. 
Bus 004 Device 003: ID 0461:4d15 Primax Electronics, Ltd Dell Optical Mouse
Bus 004 Device 002: ID 413c:1003 Dell Computer Corp. Keyboard 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 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 065: ID 22b8:433b Motorola PCS 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

得到設備idVendor=22b8 idProduct=433b.

step 2: 設置udev設備權限

sudo vim /etc/udev/rules.d/51-android.rules

# adb protocol on passion (Nexus One)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", MODE="0600", OWNER="user"
# fastboot protocol on passion (Nexus One)
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="user"
# adb protocol on crespo (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", MODE="0600", OWNER="user"
# fastboot protocol on crespo (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", MODE="0600", OWNER="user"
# product phone
SUBSYSTEM=="usb", ATTR{"myphone"}=="22b8", ATTR{idProduct}=="433b", MODE="0600", OWNER="user"

完成後,注意要先拔掉設備再次插入即可訪問如下:

$ adb devices
List of devices attached
0A3BB6731201101B    device

運行CTS:

step 1:生成cts zip文件android-cts.zip

make cts


step 2:運行

unzip android-cts.zip

android-cts/tools/startcts

cts_host >







發佈了28 篇原創文章 · 獲贊 14 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章