Closed zs1973 closed 2 years ago
直接在你的demo上复现就可以,我这个只是在你demo的基础上多加了一个图片。这样效果比较明显
拖动的时候也卡顿
小伙子,《旧版本无此问题》,你所说的这个旧版本号是多少?
还有小伙子,我试了一下,如果在桌面,在回弹的时候确实存在轻微卡顿,但是我测试了,在桌面应用、微信、QQ 页面上回弹会出现这种情况,如果在其他应用页面上回弹没有问题,你可以测试一下是不是这样的?
小伙子,《旧版本无此问题》,你所说的这个旧版本号是多少?
上个版本
还有小伙子,我试了一下,如果在桌面,在回弹的时候确实存在轻微卡顿,但是我测试了,在桌面应用、微信、QQ 页面上回弹会出现这种情况,如果在其他应用页面上回弹没有问题,你可以测试一下是不是这样的?
这个问题?小伙子你测试了吗?
还有小伙子,我试了一下,如果在桌面,在回弹的时候确实存在轻微卡顿,但是我测试了,在桌面应用、微信、QQ 页面上回弹会出现这种情况,如果在其他应用页面上回弹没有问题,你可以测试一下是不是这样的?
宿主app内不会卡顿,宿主app后台运行之后,在其他地方拖动时就会卡顿了。桌面应用、微信、QQ 页面确实是卡顿比较厉害,其他应用轻微
小伙子,《旧版本无此问题》,你所说的这个旧版本号是多少?
上个版本
小伙子,你确定 8.5 的版本没有这个问题?我试了好像也有这个问题。
小伙子,我排查了一下,这个问题的原因是,如果在桌面应用、微信、QQ 上面动画回弹,ValueAnimator 会回调 62 次 onAnimationUpdate 方法,而在当前应用上面操作,仅会回调 32 次,而我看了一下 ValueAnimator 回调机制,它会等屏幕刷新信号到来后进行回调动画更新的方法,很可能在某些应用上面系统会自动开启高刷模式,这个是框架无法判断和干预的,我这边测试将动画时间从 500 毫秒改成 250 秒就不会出现那个问题了,由此验证是回弹距离太短,但是动画回调次数变多了,导致每次悬浮球移动的距离就会变小,所以可能就会感觉到一种卡顿的现象,但其实这不是卡顿,而是每次动画执行时,滑动的距离太短导致的一种错觉,框架这边的解决方法是,通过悬浮球回弹的距离计算出动画的时间。
@zs1973 小伙子,问题已经处理了,你可以下载上面的 aar 包进行测试。
@zs1973 小伙子,问题已经处理了,你可以下载上面的 aar 包进行测试。
收到 一会我测试一下
@zs1973 小伙子,问题已经处理了,你可以下载上面的 aar 包进行测试。
可以了 谢谢
【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】
全局可拖拽的悬浮窗,在应用至后台运行时,拖动悬浮窗之后回弹卡顿。
框架版本【必填】:8.6
问题描述【必填】:全局可拖拽的悬浮窗,在应用至后台运行时,拖动悬浮窗之后回弹卡顿。
复现步骤【必填】:打开全局可拖拽悬浮窗,将应用放置后台运行,在桌面拖动悬浮窗,可看到悬浮窗回弹时卡顿。
是否必现【必填】:是
出现问题的手机信息【必填】:华为p40pro
出现问题的安卓版本【必填】:鸿蒙3.0 (android 12)
问题信息的来源渠道【必填】:本框架的demo以及自己的项目中使用时发现
请回答
是部分机型还是所有机型都会出现【必答】:部分/全部(例如:某为,某 Android 版本会出现)
框架最新的版本是否存在这个问题【必答】:是,旧版本无此问题
是否已经查阅框架文档还未能解决的【必答】:是
issue 是否有人曾提过类似的问题【必答】:否
是否可以通过 Demo 来复现该问题【必答】:是
使用原生的 WindowManager 是否也会出现该问题【非必答】:是/否(排查一下是不是框架的代码存在问题导致的)
其他
提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)
提供截图或视频(根据需要提供,此项不强制)
https://user-images.githubusercontent.com/8916333/202751576-0fb6174f-d4ea-47cb-8992-aba24a99aa9f.mp4