【发布时间】:2021-02-22 23:59:24
【问题描述】:
移动 Chrome 浏览器中似乎存在与设备运动相关的错误(或非常无用的功能)。在使用 google chrome 移动设备中的 javascript 从设备传感器(例如加速度计)中检索移动浏览器中的数据时,数据仅四舍五入到大约两位有效数字,使其几乎无法用于许多目的,尽管原始设备数据要准确得多比这个。不知道为什么。我认为浏览器必须舍入它,也许是出于安全考虑?相同的代码不会在移动 Safari 或三星移动互联网浏览器上产生这种行为。
如何获取全分辨率传感器数据?
产生四舍五入数据的示例代码:
window.addEventListener("devicemotion", handleMotionEvent, true);
handleMotionEvent: function(event) {
result = event.acceleration.x;
// do something with result. Result datapoints will be, eg: 3.200000004, 3.4000000....
}
像这样使用 api 元素会产生相同的行为:
accelerometer = new Accelerometer({ referenceFrame: 'device' });
谢谢
【问题讨论】:
标签: javascript google-chrome mobile accelerometer sensors