【问题标题】:Is there a contradiction between sensorEvent and sensorListener about x-axis?sensorEvent 和 sensorListener 关于 x 轴是否存在矛盾?
【发布时间】:2011-11-12 03:08:51
【问题描述】:

我在这两个源代码中找到了两个示例,但是sensorEvent.java说“当设备平放在桌子上并从左侧向右侧推时,x加速度值为正。”并且sensorListener.java表示“当设备在其左侧向右推动时,x加速度值为负(设备向左侧推动施加反作用力)”。您可以向上滚动以查看坐标系的定义是什么,您会发现它们是相同的。所以我很困惑。

当然,我做了一个实验,只是将手机左侧推到右侧,我看到 x 轴正在上升。

那么,示例中是否有错误或我遗漏了什么?

这里是sensorEvent.javasensorListener.java

【问题讨论】:

    标签: android sensors


    【解决方案1】:

    据我所知,SensorEvent 中的陈述是正确的 - 由您自己的实验说明。 SensorListener 已经被弃用了很长一段时间(至少两年 - 它已被 SensorEventListener 取代),因此您应该假设未弃用的声明是正确的。

    我的猜测是,在 Android 的早期,加速度值曾经是镜像的,因为这两个类中提到的其他示例之一之间的差异类似于您所困惑的:

    当前(在 SensorEvent 中):

    当设备平放在桌子上时,加速度值为+9.81, 这对应于设备的加速度 (0 m/s^2) 减去 重力 (-9.81 m/s^2)。

    已弃用(在 SensorListener 中):

    当设备平放在桌子上时,加速度值为 -STANDARD_GRAVITY,对应于设备对重力的反应施加在桌子上的力。

    -STANDARD_GRAVITY 解析为 -(9.80665) = -9.80665,与 SensorEvent 中声明的正值正好相反。

    【讨论】:

      猜你喜欢
      • 2020-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-14
      • 1970-01-01
      • 1970-01-01
      • 2015-01-10
      • 2013-07-01
      相关资源
      最近更新 更多