We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
现象:
同一台手机 同样的微信, 同一个小游戏的同一个版本, 每次打开 有一定概率无法获得准确的 窗口尺寸或 safeArea. 经过和微信同学的交流. 目前大家比较一致的看法是 安卓系统正确获取 safeArea 的时机 无法做到百分百一致. 有时候要延迟一会儿去获取 才准确.
但是 cocos的 adapter 里 总是会在 初始化时 立刻获取 systemInfo, 并且 缓存起来 . 后面 每次过去safeArea 总是用这个缓存起来的值.
如果第一次获取 systemInfo 时, 里面的 safeArea是错误的, 那么后面就一直错误了.
要解决这个问题, 有两个方案, 就是 cc的 getSafeArea 方法里 每次都去通过 wx.getSystemInfoSync 去获得最新的数据. 但是缺点是 可能会破坏一丝丝性能.
还有个思路是, 引擎稳定运行一段时间之后 (比如5秒钟) , 就不再"每次都去通过 wx.getSystemInfoSync 去获得最新的数据"了. 也就是说加个计时.
不管怎么说现在的做法都不太稳定.
The text was updated successfully, but these errors were encountered:
嗯,这个问题在小游戏平台还普遍存在,在 3.x 的做法是牺牲一些性能,每次都去查系统信息, 2.x 这边需要同步下
Sorry, something went wrong.
我觉得可以尝试小我说的 计时的方法
就是 引起初始化5秒之后 基本上这个值就是准确的了 5秒之后 就可以用缓存的值了
这样也不靠谱,如果屏幕发生了旋转,这个缓存也不可靠了,微信这边对于旋转事件的监听一直支持不是很好 特别是 iPad 这块
PPpro
No branches or pull requests
现象:
同一台手机 同样的微信, 同一个小游戏的同一个版本, 每次打开 有一定概率无法获得准确的 窗口尺寸或 safeArea.
经过和微信同学的交流. 目前大家比较一致的看法是 安卓系统正确获取 safeArea 的时机 无法做到百分百一致.
有时候要延迟一会儿去获取 才准确.
但是 cocos的 adapter 里 总是会在 初始化时 立刻获取 systemInfo, 并且 缓存起来 .
后面 每次过去safeArea 总是用这个缓存起来的值.
如果第一次获取 systemInfo 时, 里面的 safeArea是错误的, 那么后面就一直错误了.
要解决这个问题, 有两个方案, 就是 cc的 getSafeArea 方法里 每次都去通过 wx.getSystemInfoSync 去获得最新的数据.
但是缺点是 可能会破坏一丝丝性能.
还有个思路是, 引擎稳定运行一段时间之后 (比如5秒钟) , 就不再"每次都去通过 wx.getSystemInfoSync 去获得最新的数据"了.
也就是说加个计时.
不管怎么说现在的做法都不太稳定.
The text was updated successfully, but these errors were encountered: