重学安卓14/15自由窗口freeform企业实战bug-学员作业

背景:

在aosp14版本及以后版本上,安卓的自由窗口部分的工具栏部分都有了较大的更新

工具栏这部分已经移到了SystemUI进程的WMShell进行统一的管理。

但是近来有学员朋友在对自由窗口进行相关的拖拽操作时候,有遇到这个工具栏相关的一个bug,刚好aosp上面也确实可以复现,这里就拿出来分享给各位学员朋友,刚好可以拿来尝试练手,从而巩固在aosp14/15上自由窗口相关的实战经验。

bug现象展示:

复现版本:

aosp15验证,当然aosp14应该也可以

复现步骤:

1、最近任务中启动自由窗口

2、选中右下角频繁进行相关拖拽放大缩小自由窗口

视频如下:

细心同学可以已经看到了相关的问题所在的,当然不认真看可能比较难看出来,这里取出有问题的相关帧如下:

明显看到上面的工具栏的大小在拖拽过程中和自由窗口Activity的宽度不一样大了,看起来就有错位现象,抓取出其中一帧有问题的看看。

作业要求:

上面的bug

1、基于所学知识大概猜测出问题原因

2、实战使用Winscope等分析工具定位出直接原因

3、源码中寻找到问题点,并进行相关方案修改

修改该问题必备相关的知识:

1、课程的freeform相关知识

2、课程的Winscope的相关

3、课程的ShellTransition相关知识

更多framework实战干货,请关注下面"千里马学框架"

相关推荐
放风铃的兔子1 小时前
我把 5 个 Python bug 投进 CubeSandbox 当沙盘 —— 从 envd 协议反编译到一键 RED→GREEN
bug·issue
Jinkxs1 小时前
Python基础 - 初识内置函数 Python自带的便捷工具
android·java·python
私人珍藏库1 小时前
【Android】VLLO-韩国热门手机剪辑APP
android·app·工具·软件·多功能
Cloud_Shy6182 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第六章 Item 40 - 43)
android·开发语言·人工智能·笔记·python·学习方法
AFinalStone3 小时前
Android12 U盘插拔链路源码全解析(五):Framework层(下) StorageManagerService
android·frameworks
林九生4 小时前
【实用技巧】MySQL 绿色版一键路径更新脚本详解 —— update_path.bat 深度解析
android·数据库·mysql
故渊at5 小时前
第十三板块:Android 综合架构与未来演进 | 第三十一篇:Android 架构演进与 Fuchsia OS 的挑战
android·架构·宏内核·微内核·fuchsia·ipc 性能博弈
aqi005 小时前
一文速览 HarmonyOS 6.1.1 推出的十个新特性
android·华为·harmonyos·鸿蒙·harmony
matrixmind15 小时前
aiomysql:异步场景下的 MySQL 驱动
android·数据库·mysql·其他
随遇丿而安5 小时前
第8周:弹窗 / 提示组件全功能与弹窗优化
android