devicemotion不再工作了

时间:2018-03-22 15:01:02

标签: javascript ssl browser devicemotion

我不确定这是否适合提问,但我的devicemotion脚本存在问题。

我有一些代码在加载页面时运行,以检查是否有陀螺仪可用。我通过以下方式执行此操作:

function check_user_hardware(){

    if (mobile_size <= 600) {
        hidden = true;
    }
    console.log("checking hardware");
    giro_timer = setTimeout(update_gyro_value, 30);
    window.addEventListener("devicemotion", function(event){
        console.log("device motion?");
        if(event.rotationRate.alpha || event.rotationRate.beta || event.rotationRate.gamma){
            calculate_rotation_mesh_pos(event.rotationRate.beta, event.rotationRate.gamma);
            if (!gyroscope) {
                gyroscope = true;
                console.log("gyroscope here");
                current_interaction_mode = 'gyroscope_option';
                set_user_ui_elements();
            }
        }else{
            followMouse = true;
            console.log("no gyroscope here");
            current_interaction_mode = 'followMouse_option';
            set_user_ui_elements();
            window.addEventListener('mousemove', get_user_mouse_pos);
        }
    });
}

这几周前工作得很好...... 但现在它不再工作了.. 当我检查控制台时,我看到以下打印件:

checking hardware

就是这样.. 为什么我的devicemotion事件没有被解雇? 即使在我的网站上使用基本的SSL加密,它也无法正常工作? 我需要某种特殊的SSL加密吗? 发生了什么事? 欢迎所有建议!
如果需要更多信息,我很乐意提供 你可以在这里看到有问题的网站:gravient.thomashoek.com

1 个答案:

答案 0 :(得分:0)

我在webapp上面临同样的问题。我看到Chromium 62上的加速度计存在一个问题,但它似乎已经在第63页修复了。

然而,'devicemotion'事件在我这边的Chrome Android上不再起作用(但在iOS上完美运行)。