CTS/GTS 常见问题解答
1.android.security.cts.PackageSignatureTest测试fail(MTK平台)
原因:由于用的是google default key而导致的fail,需要自己定义release key,不仅可以满足CTS request,还可以满足工信部CATR TAF spec。
方案:在编译器执行如下命令:
Genernate the release key
./development/tools/make_key releasekey '/C=CN/ST=BeiJing/L=HaiDian/O=MediaTek/OU=WCD/CN=demo/emailAddress=demo@mediatek.com',类似以此产生platform keys,media keys,shared keys,testkey.

然后把这些生成的密钥移动到device/mediatek/common/security/${Project}路径下,还有一点最重要的是要在ProjectConfig.mk中设置宏MTK_SIGNATURE_CUSTOMIZATION = yes,最后编译自动会生成二进制的apk签名,问题解决!
2.com.google.android.permission.gts.InitialRuntimePermissionStateTest#testAllSystemAppsUsingRuntimePermissionsTargetMncAndAboveSdk测试fail(MTK/Sprd都适用)
原因:这是由于一些apk的sdk版本过低导致的权限问题
方案:导出device.log,查找出是哪些apk,然后在对应apk下的AndroidManifest下修改下目标sdk,一般都修改为当前最新版的
3.Camera FOV Calibration测项failed(适用于MTK平台,展讯平台修改较复杂,后面会更新)
原因:Report FOV与Display FOV的值相差2度以上
方案:测试时把绿线和黑线对齐,这时查看Display FOV实测值是多少,记录下来。然后查看对应项目的cfg_setting_imgsensor.cpp文件,看看getSensorViewAngle中MainSensorHorFOV的值是多少?把MainSensorHorFOV的值改成刚才记录的实际结果就OK了,如果是前摄有误差,同理修改下SubSensorHorFOV 的值为实测值。
4.android.os.cts.BuildVersionTest#testBuildFingerprint测试fail
原因:fingerprint信息匹配不一致
方案:fingerprint是设备的唯一标识,由设备的多个信息拼接合成。我自己的修改习惯通常就是在build/core/Makefile文件里重新定义BUILD_FINGERPRINT,比如: BUILD_FINGERPRINT := $(FINGER_PRINT_BRAND)/$(FINGER_PRINT_NAME)/$(FINGER_PRINT_DEVICE):$(PLATFORM_VERSION)/$(BUILD_ID)/$(FINGER_PRINT_TIME):$(TARGET_BUILD_VARIANT)/$(FINGER_PRINT_BUILD_VERSION_TAGS)
然后在build/core/version_default.mk文件中添加自己对应的部分
FINGER_PRINT_BRAND:=
FINGER_PRINT_NAME:=
FINGER_PRINT_DEVICE:=
FINGER_PRINT_BUILD_VERSION_TAGS:= release-keys(这个必须是release-keys,不然会有其它fail项,具体的我忘记了,后续会补充)
FINGER_PRINT_TIME :=$(shell date +%H%M%S)
brand,name,device在对应的buildinfo文件都是有的,厂商名,设备名等,这时就能保证信息匹配,fingerprint会在out目录下的build.prop文件中生成。
抽空先写这么多,我会定期更新,常见的fail项还有很多,解决CTS fail项一是靠积累经验,二是要分析log,研究一下google测试源码,循序渐进慢慢就能掌握,转载请注明出处,谢谢!
CTS/GTS 常见问题解答的更多相关文章
- MySQL同步常见问题解答(自己的小心得)
前几天刚刚注册了博客园,我想写一些技巧性的教程,今天给大家分享一个MySQL同步常见问题解答. Q:如果主服务器正在运行并且不想停止主服务器,怎样配置一个从服务器? A:有多种方法.如果你在某时间点做 ...
- Delphi XE5 常见问题解答
Delphi XE5 常见问题解答 有关于新即时试用的问题吗?请看看 RAD Studio 即时试用常见问答. 常见问题 什么是 Delphi? Embarcadero? Delphi? XE5 是易 ...
- SSL/TLS 高强度加密: 常见问题解答
关于这个模块 mod_ssl 简史 mod_ssl会受到Wassenaar Arrangement(瓦森纳协议)的影响吗? mod_ssl 简史 mod_ssl v1 最早在1998年4月由Ralf ...
- [!!!!!]Inno Setup教程-常见问题解答
[转]Inno Setup教程-常见问题解答 功能 * 翻译 Inno Setup 文字 * 它支持 MBCS (多字节字符集) 吗? * 将来会支持 Windows Installer 吗? ...
- 英特尔® 实感™ SDK 前置摄像头 (F200) 常见问题解答
原文地址 https://software.intel.com/zh-cn/articles/intel-realsense-sdk-faq-for-front-facing-camera-f200? ...
- 我个人有关 Azure 网络 SLA、带宽、延迟、性能、SLB、DNS、DMZ、VNET、IPv6 等的 Azure 常见问题解答
Igor Pagliai(微软) 2014 年 9月 28日上午 5:57 年 11 月 3 年欧洲 TechEd 大会新宣布的内容). 重要提示:这篇文章中我提供的信息具有时间敏感性,因为这些 ...
- 关于CopyU!的常见问题解答
拷优(CopyU!)常见问题解答 本常见问题解答列举了一些常见的疑问及其解释,如果您对CopyU!有任何问题,请您首先查看本解答! 本解答将会保持随时更新! 一.使用篇: 1.问:我的杀毒软件 ...
- genymotion常见问题解答
[转]常见问题解答 很多人喜欢使用Genymotion这款安卓模拟器,但是虽然Genymotion很好用,可是却有各种问题存在哦,下面潇潇就一些常见的Genymotion问题来说下解决方法吧. 为什么 ...
- Linux的常见问题解答和管理技巧
Linux的常见问题解答和管理技巧 一. 如何建立多用户 提醒大家一句,别一直使用root用户,因为root用户在系统中有着至高无上的权力,一不小心就可能破坏系统.比如我们想删除/temp目录下的文件 ...
随机推荐
- HTML5基本标签的使用
第一次写这种东西,肯定存在许多不足之处,还望大家多多担待,我会继续加油的!我也是一名HTML5的初学者,只是将这几周在课堂上所听到的东西分享给大家. 下面给大家介绍一下H5! 一.<!DOCTY ...
- C语言编译过程及数据类型
写在前面 C语言可以称得上是高级语言中的低级语言,接下来一段时间,我会写一下文章关于c语言,把它的神秘面纱一 一揭开.下面主要是c语言的C语言编译过程及数据类型 源文件编译过程 为了使计算机能执行高级 ...
- 微服务~Eureka实现的服务注册与发现及服务之间的调用
微服务里一个重要的概念就是服务注册与发现技术,当你有一个新的服务运行后,我们的服务中心可以感知你,然后把加添加到服务列表里,然后当你死掉后,会从服务中心把你移除,而你作为一个服务,对其它服务公开的只是 ...
- RAID及热备盘详解
RAID,为Redundant Arrays of Independent Disks的简称,中文为廉价冗余磁盘阵列. 一.出现的原因(RAID的优点): 它的用途主要是面向服务器,但现在的个人电脑由 ...
- 实例讲解webpack的基本使用第一篇
更新文章不容易,尤其是更新高质量的文章更加不易,因此为了节约时间,闲话就不多说了.关于webpack的介绍,webpack是用来干嘛的,这些基础概念性的东西,就不在此赘述,下面直接开始正题. webp ...
- Linux入门之常用命令(14) kill
Linux kill 命令使用详解 功能说明:删除执行中的程序或工作. 语 法:kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>] 补充说明: ...
- 深入浅出AQS之条件队列
相比于独占锁跟共享锁,AbstractQueuedSynchronizer中的条件队列可能被关注的并不是很多,但它在阻塞队列的实现里起着至关重要的作用,同时如果想全面了解AQS,条件队列也是必须要学习 ...
- 1007 正整数分组 1010 只包含因子2 3 5的数 1014 X^2 Mod P 1024 矩阵中不重复的元素 1031 骨牌覆盖
1007 正整数分组 将一堆正整数分为2组,要求2组的和相差最小. 例如:1 2 3 4 5,将1 2 4分为1组,3 5分为1组,两组和相差1,是所有方案中相差最少的. Input 第1行:一个 ...
- swiper拖拽之后不自动滑动问题
//swiper轮播图 var mySwiper = new Swiper('.swiper-container',{ initialSlide :0, autoplay : 3000, direct ...
- C#.net干货,最全公共帮助类
比较全面的c#帮助类,日常工作收集,包括前面几家公司用到的,各式各样的几乎都能找到,所有功能性代码都是独立的类,类与类之间没有联系,可以单独引用至项目,分享出来,方便大家,几乎都有注释,喜欢的请点赞, ...