Closed festoney8 closed 1 year ago
现象:切换背景时背景闪动
设置间隔10s切换背景测试,Log如下:
renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:04 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:14 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:14 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:24 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:24 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:34 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:34 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:44 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:44 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:54 GMT+0800 (中国标准时间) renderer.js:0 [Background] 更新背景 Tue Jun 20 2023 16:00:54 GMT+0800 (中国标准时间)
很明显reloadBg函数存在短时间内重复调用,猜测原因是定时器时间过短引起的抖动 https://github.com/xh321/BetterQQNT-Background-Plugin/blob/76f1356a8b4b4ef33ef7265f7017d3d600f45a2d/renderer.js#L130
定时改为1000后现象消失
这个我知道原因了,因为ntqq是会先加载一个空白页再跳转主界面的,插件onLoad的时候不一定就在主界面,所以需要一个定时器100ms检测一次是不是在主页,如果是,则清除定时器并设置背景更新定时器。估计这里是重复设置了2个背景更新定时器导致的。 我加一个变量判断就解决了,目前不会重复更新,等下就push。
可以看到有14*100ms的空白页,随后才进入主页
现象:切换背景时背景闪动
设置间隔10s切换背景测试,Log如下:
很明显reloadBg函数存在短时间内重复调用,猜测原因是定时器时间过短引起的抖动 https://github.com/xh321/BetterQQNT-Background-Plugin/blob/76f1356a8b4b4ef33ef7265f7017d3d600f45a2d/renderer.js#L130
定时改为1000后现象消失