你好,我们现在遇到一个问题:正常情况下IOS设备关闭屏幕锁定功能时,游戏会随着设备的朝向变化更改orientation。但是当我们开启屏幕锁定,退出游戏使游戏进入后台然后重新点开,此时如果我们旋转屏幕180°,游戏会旋转屏幕朝向,但是我们在IOSAppDelegate的didRotate中断不上点,这次旋转并没有触发didRotate,保持游戏在前台的情况下后续的设备旋转不会触发游戏的朝向旋转。因为我们游戏中的陀螺仪输入依赖于当前设备的Orientation来做方向校正,这次旋转因为没有触发didRotate去修改CacheOrientation,导致陀螺仪输入方向错误。我们想知道如何能够捕获这种旋转行为,正确地更新CachedOrientation,或者是能够在开启屏幕锁定时屏蔽从后台进入游戏时触发的第一次屏幕旋转。
Hi,
我搜了一下,貌似没有什么好办法
这个帖子里提到的两个方案,貌似都无法在auto rotate关闭的情况下工作,我感觉这属于苹果的缺陷,需要找苹果的支持了解一下是否有其他方案。
感谢,我们现在参考了AndroidInput那边的处理方式,改成在tick里面去更新CachedOrientation作为一个workaround,也能解决问题
嗯嗯,我也咨询过苹果的开发工程师了,他们也没有其他方法,在tick里检查可能是目前唯一的办法了。