重学安卓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实战干货,请关注下面"千里马学框架"

相关推荐
2601_963771377 小时前
Offloading WP-Cron and Securing Ticket Webhooks on Enterprise IT Sites
android
花燃柳卧8 小时前
跨平台路由组件工程源码补充上传
android·flutter·kotlin
apihz8 小时前
随机驾考题目(C 照科一 / 科四 2000+ 题)免费API调用教程
android·java·c语言·开发语言·网络协议·tcp/ip
宸翰8 小时前
uni-app 设置 Android 底部虚拟导航栏背景色
android·前端·uni-app
TechNomad8 小时前
Kotlin类对象与接口详解
android·kotlin
QiLinkOS14 小时前
QiLink OS的失败数据共享平台的运作模式是否适用于所有行业?
android·开发语言·人工智能·算法·重构·开源
杉氧14 小时前
Framework 补完计划 (2):BufferQueue 与 SurfaceFlinger —— 像素的跨进程“接力赛”
android·架构·android jetpack
牢七14 小时前
RCE?复现成功
android
一化十14 小时前
Android16 自定义全局手势 任意界面依次点击屏幕四个角返回Home界面
android
wok15715 小时前
Git Bash 执行中文命令报错 127:MSYS 参数编码 bug 排查与修复
git·bug·bash