function consentToAuthorization(){ //ios用户点击 '这里' 链接触发
window.localStorage.setItem('agree_IOS',true)
if (typeof(DeviceMotionEvent) !== 'undefined' && typeof(DeviceMotionEvent.requestPermission) === 'function') {
window.DeviceMotionEvent.requestPermission().then(permissionState => {
if (permissionState === "granted" && window.DeviceMotionEvent) { //允许
window.addEventListener('devicemotion',deviceMotionHandler, false);
}
if (permissionState === "denied") {
console.log("你拒绝了");
}
}).catch((err) => {
console.log(err,'err')
});
} else {
console.log('deviceMotionEvent is not defined')
}
用户如果要一摇没有反应 有可能用户手机是ios13.3+版本 我们需要用户需要进行手动授权 才可以触发ios摇一摇 这里我们给了用户一个按钮 如果用户摇一摇没有反应 用户可以根据提示点击文字链接,然后constToAuthorization事件触发后 ios手机会弹出一个系统自带弹框
提示用户'xxx.com想要访问动作与方向'这个弹框是ios自带弹框 我们通过调用将这个弹框显示了出来 点击允许即可使用摇一摇,点击取消就不能使用摇一摇