在做各种移动端小游戏的时候,经常有些游戏会涉及到需要获取物体的重力感应,比如什么摇一摇,陀螺仪之类的。其实基础代码就是如下所示这样,就是简单的一个监听事件
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开头的哦~
这款小游戏主要功能就离不开上述代码,小猫上天