一、问题简介
由于苹果iOS手机系统升级,目前重力感应权限默认关闭,与之相关的功能效果:摇一摇触发,重力感应控制图片移动,layer 容器重力感应部分、一镜到底、全景容器组件中需要重力感应控制的部分、陀螺仪组件等,在H5中无法默认开启。
因此,我们需在进入 H5 时,弹出获取重力感应授权的弹窗,以让用户主动点击授权。
二、详细说明
详细请参考苹果官网给出的系统版本安全性说明:《关于 iOS 12.2 的安全性内容》,具体信息截图如下:
三、解决方案
如果想获取 iOS 的重力感应授权,要求有 2:
需使用 https 网址发布作品查看;
需有手势点击的动作来获取重力感应授权;
如果取消授权,需清除 app 缓存(通常可退出当前 APP 或浏览器标签页后重新进入)后,才可重新获取授权。
因此,如果当前作品的某个页面中有重力感应组件,会在进入当前页面时,弹出通知弹窗:
用户手势点击后,会弹出系统的获取重力感应的弹窗。
存在的限制:直接显示当前作品网址要获取权限,无法修改弹窗样式;如果用户点击了取消,将无法获取用户对当前H5作品的重力感应权限。
如果用户取消授权后,则需清除缓存后重新获取授权方可体验重力感应功能。