Android CTS Camera 环境搭建指导手册
1、 环境需求:
① 系统 : Ubuntu 系统。
② java : java 1.7, java 1.8。
③ android sdk : 安装 android-sdk-linux.,
④ 配置 java ,android sdk 的系统环境变量。
2、 安装环境:
① 安装 ubuntu 系统,我是用的 14.04 的系统。(
② 安装 java 及环境变量配置。
⑴ 安装 java 1.7、java1.8:
$sudo add-apt-repository ppa:openjdk-r/ppa (更新源)
$sudo apt-get update
$sudo apt-get install openjdk-7-jdk (安装 java7)
$sudo apt-get install openjdk-8-jdk (安装 java8)
⑵ $ls /usr/lib/jvm/ (查看 java 的版本)
③ 安装 android-sdk-linux 及配置环境变量。
解压文件(unzip,然后拖进) android-sdk-linux.zip 至你的安装目录。进入 androidsdk-linux/tools 路径下,在终端执行 android 这个可执行文件。建议更
新一下 sdk。
配置环境变量:
s
u
d
o
g
e
d
i
t
(
v
i
)
/
e
t
c
/
p
r
o
f
i
l
e
输
入
i
进
行
编
辑
,
在
最
末
尾
添
加
:
e
x
p
o
r
t
P
A
T
H
=
sudo gedit(vi) /etc/profile 输入i进行编辑, 在最末尾添加: export PATH=
sudogedit(vi)/etc/profile输入i进行编辑,在最末尾添加:exportPATH=PATH:/home/xxx/android-sdk-linux/tools:
export PATH=
P
A
T
H
:
/
h
o
m
e
/
x
x
x
/
a
n
d
r
o
i
d
−
s
d
k
−
l
i
n
u
x
/
p
l
a
t
f
o
r
m
t
o
o
l
s
输
入
:
q
w
保
存
退
出
、
:
q
!
不
保
存
退
出
配
置
文
件
生
效
:
s
o
u
r
c
e
/
e
t
c
/
p
r
o
f
i
l
e
a
n
d
r
o
i
d
−
s
d
k
环
境
验
证
:
重
新
打
开
一
个
终
端
:
输
入
a
d
b
回
车
,
看
是
否
有
输
出
(
只
要
不
提
示
a
d
b
不
是
命
令
等
提
示
就
行
)
。
配
置
a
a
p
t
的
环
境
:
在
a
n
d
r
o
i
d
−
s
d
k
−
l
i
n
u
x
的
主
目
录
下
,
进
入
PATH: /home/xxx/android-sdk-linux/platformtools 输入:qw保存退出、:q!不保存退出 配置文件生效:source /etc/profile android-sdk 环境验证: 重新打开一个终端:输入 adb 回车,看是否有输出(只要不提示 adb 不 是命令等提示就行)。 配置 aapt 的环境: 在 android-sdk-linux 的主目录下,进入
PATH:/home/xxx/android−sdk−linux/platformtools输入:qw保存退出、:q!不保存退出配置文件生效:source/etc/profileandroid−sdk环境验证:重新打开一个终端:输入adb回车,看是否有输出(只要不提示adb不是命令等提示就行)。配置aapt的环境:在android−sdk−linux的主目录下,进入ANDROID_HOME/buildtools/任意文件夹/,拷贝 aapt 文件,和 lib64/文件夹,到
A
N
D
R
O
I
D
H
O
M
E
/
t
o
o
l
s
目
录
下
。
可
c
d
路
径
,
重
新
打
开
一
个
终
端
:
输
入
a
a
p
t
回
车
,
看
是
否
有
输
出
.
64
位
兼
容
库
文
件
安
装
:
s
u
d
o
a
p
t
−
g
e
t
i
n
s
t
a
l
l
l
i
b
32
z
1
−
d
e
v
s
u
d
o
a
p
t
−
g
e
t
i
n
s
t
a
l
l
i
a
32
−
l
i
b
s
s
u
d
o
a
p
t
−
g
e
t
i
n
s
t
a
l
l
l
i
b
32
s
t
d
c
+
+
6
s
u
d
o
a
p
t
−
g
e
t
i
n
s
t
a
l
l
l
i
b
32
z
1
U
b
u
n
t
u
系
统
u
d
e
v
设
备
文
件
配
置
:
(
系
统
识
别
手
机
设
备
)
系
统
切
换
到
r
o
o
t
登
陆
:
连
上
手
机
,
终
端
输
入
ANDROID_HOME/tools 目录下。可cd 路径,重新打开一个终端:输入 aapt 回车, 看是否有输出. 64 位兼容库文件安装: sudo apt-get install lib32z1-dev sudo apt-get install ia32-libs sudo apt-get install lib32stdc++6 sudo apt-get install lib32z1 Ubuntu 系统 udev 设备文件配置:(系统识别手机设备) 系统切换到 root 登陆: 连上手机,终端输入
ANDROIDHOME/tools目录下。可cd路径,重新打开一个终端:输入aapt回车,看是否有输出.64位兼容库文件安装:sudoapt−getinstalllib32z1−devsudoapt−getinstallia32−libssudoapt−getinstalllib32stdc++6sudoapt−getinstalllib32z1Ubuntu系统udev设备文件配置:(系统识别手机设备)系统切换到root登陆:连上手机,终端输入lsusb.
拔掉手机,输入 $ lsusb.
前后对比看一下,多余出来的那一行信息,就是刚才手机设备的显示信
息。
记住中间 ID 后面的冒号前后的数字。如下:
创建文件 1 : 51-android.rules
$gedit /etc/udev/rules.d/51-android.rules
添加下面的文件:
SUBSYSTEM==“usb”, ATTR{idVendor}“2717”,ATTRS{idProduct}“ff68”, MODE=“0666”,
GROUP=“yangzhaoguang”
之后替换如下信息:
ATTR{idVendor}后面的数字,替换为刚才 id 的后面的数字(冒号前面的
数字)。
ATTRS{idProduct}后面的数字。替换为刚才 id 后面的冒号后面的数字。
GROUP 双引号中间的用户名,替换为你的一般用户名。
创建文件 1 : 70-android.reles
$ gedit /etc/udev/rules.d/70-android.reles
SUBSYSTEM==“usb”, ATTRS{idVendor}“2717”, ATTRS{idProduct}“ff68”,MODE=“0666”
红色部分替换信息如上。
替换成功后,生效文件,命令如下:
/etc/init.d/udev restart (实现不行 reboot 电脑。)
一定要确保手机能被电脑识别到,如下所示:
3、 CTS 包下载及命令执行。
CTS 包下载:
google 官网介绍:https://source.android.com/compatibility/cts/
如下图所示:下载后缀是 ARM 的包,在本地解压。
执行前,手机系统设置:
1、 去除系统休眠;
2、 系统更多设置—》勾选直接进系统;
3、 安全中心—》授权管理—》点击右上角—》关闭 USB 安装管理。
CTS 命令执行:终端进入解压的文件目录下,
测试命令:
举例如下
android 6.0 及以下:
执行整个包:
run cts --s ******** --plan CTS-camera --skip-preconditions
执行单个 case:
run cts --s 6f52e191 -t android.hardware.camera2.cts.MultiViewTest --disablereboot --skip-preconditions
Android 7.0 及 7.1:
执行整个包:
run cts --s WKBEDESOYSFMDQEA --module CtsCameraTestCases --disablereboot --skip-device-info --skip-preconditions
执行单独的测试项:
run cts --s WKBEDESOYSFMDQEA --module CtsCameraTestCases --test
android.hardware.camera2.cts.RobustnessTest#testAbandonRepeatingRequestSurface
–disable-reboot --skip-device-info --skip-preconditions
4、执行步骤
将上面下载的文件解压缩,从终端进入当前目录的 tools 路径下,如下所
示:
运行前,java 环境和 adb 环境一定要配置好。
在 tools 路径下,执行 ./cts-tradefed 文件。如下图所示:CTS 包会自动加载链
接在电脑上的终端设备。
在“ cts-tf > ”执行测试命令。连接一台设备时不需要指定设备号。
执行过程截图:
解释一下上文标注的数字:
第一张截图:
1、执行的测试命令,我这里执行的是一个具体的 failed 项。
2 & 4、是执行的是 32 和 64 位的包。
3 & 5、是 32 和 64 位测试包的执行结果,有 0 pass ; 0 failed ; 0 Not executed. 前面的数
字表示通过/失败的数量。
第二张截图:
1、测试完成后,log 的保存路径,在 CTS 测试包路径下的…/…/android-cts/results/路径
下。
2、黄色区域,测试用时,pass、failed、not exectued 的数量。
3、2 位置是一个 html 文档,是自动生成的,可以直接打开该文档,图文直接查看。
【VTS&CTS-GSI需要】Python环境配置:
apt-get install python-dev
apt-get install python-protobuf
apt-get install protobuf-compiler
apt-get install python-virtualenv
apt-get install python-pip