手机传感器检测 - 陀螺仪与加速度计
全面检测手机与平板的内置传感器,实时读取陀螺仪、加速度计与方向传感器数据,验证设备运动感应功能是否灵敏。
可用性与权限
安全上下文(HTTPS)
否(可能导致传感器不可用)
DeviceMotionEvent
不可用
权限:未知
DeviceOrientationEvent
不可用
权限:未知
deviceorientationabsolute
不确定/不可用(常见)
多数浏览器不提供该事件。
你现在不是安全上下文。移动端浏览器可能会限制运动/方向事件;
控制与采样
未采集
事件频率:Motion 0/s,Orientation 0/s
实时读数
加速度(不含重力)m/s²更新:-
x
-
y
-
z
-
|a|:-
加速度(含重力)m/s²interval:-
x
-
y
-
z
-
|a|:- (约 - g)
陀螺仪 rotationRate(°/s)更新:-
alpha
-
beta
-
gamma
-
方向(alpha/beta/gamma, °)更新:-
alpha
-
beta
-
gamma
-
absolute:falseheading:-accuracy:-
提示:如果数值一直是“ - ”,通常是未授权、设备无对应传感器、或浏览器/系统禁用了“运动与方向”访问。
事件日志
暂无日志
快速排查
• 尽量用手机浏览器打开;桌面浏览器通常没有传感器事件
• 先看“可用性与权限”:如果不是 HTTPS 或权限未授予,读数很可能一直是 “-”。
• iOS Safari 常见需要显式授权:先点“请求授权”,再点“开始采集”。如果系统关闭了“运动与方向访问”,也会一直无数据。
• 读数异常时,先看事件频率(Motion/Orientation 每秒次数)与“更新”时间;频率为 0 往往是监听没生效或被系统拦截。
设备传感器测试指南
快速检查 DeviceMotion / DeviceOrientation:权限、事件频率与实时读数是否正常。
步骤 1
确认环境与权限
约 10 秒
先确保在手机浏览器与安全上下文中运行,并授予运动/方向权限。
尽量使用手机浏览器打开(桌面浏览器通常无传感器事件)
确认处于 HTTPS(非安全上下文可能被限制)
如提示需要授权:点击“请求授权”,并在系统弹窗选择允许
若仍无数据:检查系统设置是否关闭“运动与方向访问”(iOS 常见)
提示:iOS Safari 需要“用户手势”触发授权,所以请在同一次点击中完成授权操作。
步骤 2
开始采集并观察频率
约 10 秒
开始采集后,先看事件频率与更新时间,确认事件是否真的在上报。
点击“开始采集”
观察“事件频率:Motion/Orientation 每秒次数”是否大于 0
观察“更新:xxms/xxs”是否持续刷新(越小越新)
若频率为 0:通常是未授权/不支持/监听未生效
步骤 3
做一个简单动作验证读数
约 15 秒
通过轻微晃动/旋转设备,验证加速度、陀螺仪与方向值是否合理变化。
轻微晃动设备:观察“加速度(不含重力)”是否有明显变化
缓慢转动设备:观察 rotationRate(°/s)是否变化
改变设备朝向:观察 alpha/beta/gamma 是否变化(不同设备坐标系会有差异)
如方向相关数据异常:尝试远离强磁干扰,或切换浏览器再测一次
常见问题解答
关于设备传感器(加速度/陀螺仪/方向)测试的常见疑问与排查建议。
1.
这个页面能测到什么?
它会监听 DeviceMotion(加速度/角速度)与 DeviceOrientation(alpha/beta/gamma 等)事件,并展示权限状态、事件频率与实时读数,帮助你快速判断设备传感器是否正常上报。
2.
为什么数值一直是 “-”?
最常见原因是:未授权、非安全上下文(不是 HTTPS)、桌面浏览器无传感器、或系统/浏览器禁用了“运动与方向访问”。建议先点“刷新状态”,再点“请求授权”,并确认系统设置允许。
3.
为什么 iOS Safari 需要点“请求授权”?
iOS 13+ 的 Safari 对运动/方向事件采用 requestPermission() 授权模型,必须由用户手势触发授权弹窗,否则事件不会上报或会返回空数据。
4.
为什么事件频率是 0/s?
通常代表监听没有生效或被系统拦截:权限未授予、浏览器不支持、页面非安全上下文、或系统开关关闭。也可能是设备没有对应传感器(少见)。
5.
alpha/beta/gamma 的含义是什么?
它们表示设备在 3 个轴上的朝向角度(单位 °),但不同浏览器/设备对坐标系与参考方向实现存在差异,因此更适合用于“是否在变化/是否连续”的验证,而不是严格的工程测量。
6.
这会上传传感器数据吗?
不会。页面只在本地浏览器读取并展示传感器事件,不会把数据上传到服务器。