Android16 【CTS】CtsWindowManagerDeviceAnimations存在fail项

Android16 EDLA【CTS】CtsWindowManagerDeviceAnimations存在fail项

文章目录

  • [Android16 EDLA【CTS】CtsWindowManagerDeviceAnimations存在fail项](#Android16 EDLA【CTS】CtsWindowManagerDeviceAnimations存在fail项)

一、前言

EDLA Window相关的报错一般是: frameworks /base/services/core /java/com/android/server/wm 改动导致;

也有可能是server目录下的am、pm、input、inputmethod 代码修改导致;

分析窗口的问题,这里记录一下遇到的报错,后续方便快速分析解决。

本文分析的是CtsWindowManagerDeviceAnimations项的其中一些Failed。

二、分析解决

1、报错

报错如下:

报错项如下:

复制代码
android.server.wm.animations.DialogFrameTests#testExplicitPositionMatchParentNoLimits
android.server.wm.animations.DialogFrameTests#testMarginsArePercentagesOfContentFrame
android.server.wm.animations.DialogFrameTests#testExplicitSizeDefaultGravity
android.server.wm.animations.SplashscreenTests#testSplashscreenContent_FreeformWindow
android.server.wm.animations.SplashscreenTests#testSetBackgroundColorActivity_FreeformWindow

2、分析修改

悬浮球视窗会导致一些Failed项,因为我发现隐藏默认打开的悬浮侧边栏,后面两个Failed项是没有的。

然后 clean wm目录的修改,编译的大包,测试没有发现该项Failed的。

修改过的wm目录的文件主要有如下:

复制代码
release$ cd frameworks/base/services/core/java/com/android/server/
wallpaper/  app/  connectivity/  pm/  policy/  media/  power/  wm/   net/  
audio/  notification/       display/               input/                       
...
release/frameworks/base/services/core/java/com/android/server/wm$ git status .
        modified:   ActivityRecord.java
        modified:   ActivityStarter.java
        modified:   ActivityTaskManagerService.java
        modified:   ActivityTaskSupervisor.java
        modified:   AppWarnings.java
        modified:   DisplayContent.java
        modified:   DisplayPolicy.java
        modified:   DisplayRotation.java
        modified:   InsetsPolicy.java
        modified:   LaunchParamsUtil.java
        modified:   RecentTasks.java
        modified:   RootWindowContainer.java
        modified:   SystemGesturesPointerEventListener.java
        modified:   Task.java
        modified:   TaskDisplayArea.java
        modified:   TaskFragment.java
        modified:   TaskLaunchParamsModifier.java
        modified:   TaskOrganizerController.java
        modified:   Transition.java
        modified:   WindowContainer.java
        modified:   WindowManagerService.java
        modified:   WindowProcessController.java
        modified:   WindowState.java

有20多个文件,可以都打开看看哪里修改会影响到Failed项;

或者可以一次三五个文件去除进行排查;排查到具体是哪里的代码导致的Failed项;

也可以全部加上CTS属性判断,cts测试的时候,跳过自定义的修改,就可以PASS。

具体是哪个修改导致我也不记得了,因为上面的代码后续基本都加入了cts属性判断,会跳过自定义逻辑。

三、其他

1、小结

复制代码
(1)window相关的Failed项一般是framework的修改导致;
(2)悬浮框的显示会导致Failed项;
(3)如果代码其他地方修改干扰到了window的大小也会导致该项Failed。

2、Android16 EDLA 分析CtsWindowManagerDeviceActivity存在fail方法testStartActivityWithLaunchBounds

testStartActivityWithLaunchBounds 方法的Failed,可能是配置文件的修改,也可能是framework的修改;

https://blog.csdn.net/wenzhi20102321/article/details/156342721

相关推荐
代码山河7 小时前
Python就业方向全解析:后端、爬虫、数据分析、AI你选哪个?
python·学习·架构·教程·面向对象·项目
HideF8 小时前
Linux
linux·服务器·网络
释厄6238 小时前
AI学习层更新与跨体转移律——人类社会同构·不缺理解缺 U
人工智能·学习
驰骋工作流8 小时前
流程时效考核的表结构:从待办时限到 WF_CH 考核结果驰骋BPM驰骋低代码低代码工作流引擎
android·低代码·rxjava
Ruiery10 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
传奇开心果编程10 小时前
【Flutter踩坑排雷】第7课:巨型 build 函数坑|全部 UI 写在同一个 build,维护难、隐性异常
android·flutter·ios·移动开发·跨平台·dart·声明式ui
丰锋ff12 小时前
压缩命令笔记
linux
小嘉丶学长12 小时前
Day14 · 字典与集合
java·开发语言·网络·python·学习·1024程序员节
小李不想当小白12 小时前
SPI通信外设与W25Q64 (硬件SPI)(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
GeW13 小时前
产业新优势基础软件的人才底盘,从Linux与数据库开始
linux·数据库