我正在编写脚本,假设在多个设备上运行CTS测试。
不幸的是,当我检查我的Android设备的序列号时,我看到它们中的一部分包含相同的序列号。
现在,我读到了运行adb devices -l
以获取usb输入设备的选项,以便我可以在特定的USB上运行命令:
$ adb devices -l
List of devices attached
0123456789ABCDEF device usb:2-1.8
0123456789ABCDEF device usb:2-1.7
现在,我们可以在特定的usb上运行此命令,而不是像以前那样运行特定的序列号:
$ adb -s usb:26200000 install xxx.apk
我想在特定的Android设备上运行CTS时做类似的事情:
$ ./cts-tradefed run cts -s usb:2-1.8 -p android.permission2
问题是看起来命令不起作用。我尝试这个时没有任何回应。
拜托,任何人都可以告诉我,如果有两种相同的序列号,是否有其他方法可以在特定设备上运行cts?
答案 0 :(得分:0)
除adb
参数外,还有另一种强制-s
使用特定设备的方法。您可以将设备ID分配给ANDROID_SERIAL
环境变量。这对于不支持指定所需id的第三方脚本非常有用。
答案 1 :(得分:0)
您可以在多个设备之间进行选择,使用命令list devices
来获取设备的序列号:
l d
示例
cts-tf > l d
Serial State Allocation Product Variant Build Battery
10.1.1.113:5555 ONLINE Allocated product variant 2018.02.2 100
然后使用--serial
参数
run cts --serial <id>
其中<id>
是l d
命令
即使参数的名称为serial
,实际上您给它的值是device id
(由命令l d
或list devices
给出)而不是设备的实际序列。