IOS获取重力感应遇到的坑

在做各种移动端小游戏的时候,经常有些游戏会涉及到需要获取物体的重力感应,比如什么摇一摇,陀螺仪之类的。其实基础代码就是如下所示这样,就是简单的一个监听事件

window.addEventListener('deviceorientation', handleFunc, false);

但是在ios中就涉及到了需要获取设备权限,我也是研究了挺长时间的。如果你也有问题,那么可以照着下方这块代码试试看能否帮助到你

if (typeof DeviceOrientationEvent.requestPermission === "function") {
    DeviceOrientationEvent.requestPermission()
    .then((permissionState) => {
    	if (permissionState === "granted") {
                //进行设备移动监听
                addEventListener("deviceorientation",function(event){},false);
    	     //移除对设备的监听
          	     removeEventListener("deviceorientation",function(event){},false);
           } else {
                alert(
                  "很抱歉需要打开授权才可以进行游戏,麻烦退出微信重新进一次吧~"
                );
           }
    })
    .catch((err) => {
    	console.log(err);
    });
} else {
     console.log(typeof DeviceOrientationEvent);
}

ps:记得调试链接得是https开头的哦~

这款小游戏主要功能就离不开上述代码,小猫上天

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值