android - 如何计算手机从静止到垂直方向的移动?

标签 android accelerometer compass-geolocation sensors

我正在使用 Android 操作系统开发一个应用程序,为此我需要知道如何计算设备在垂直方向上的移动。

例如,设备处于静止状态(A 点),用户将其拿在手中(B 点),现在 A 点和 B 点之间存在高度变化,我该如何计算?

我已经阅读了有关传感器和加速度计的文章,但我真的找不到任何可以帮助我的东西。有人有什么想法吗?

最佳答案

如果你对加速度进行两次积分,你会得到位置,但错误是可怕的。它在实践中没有用。这是一个 explanation why (Google Tech Talk)在 23:20。我强烈推荐这个视频。

现在,您不需要任何准确的信息,那是另一回事。如视频中所述,线性加速度 在传感器融合后可用。请参阅 SensorEvent 处的 Sensor.TYPE_LINEAR_ACCELERATION .我会先尝试 high-pass filter检测沿垂直轴的线性加速度的突然增加。

我不知道它是否适合您的申请。

关于android - 如何计算手机从静止到垂直方向的移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6291110/

相关文章:

java - 如何使用加速度计进行手势识别

ios - 在 iOS 中以度数或弧度在 Y 轴上旋转

Android 磁力计返回随机值

iphone - MapView 上的指南针模式

java - Android SQLite 异常

android - 自定义按钮不适用于 OnTouchListener

python - 如何使用 python 读取 Windows 平板电脑中的加速度计?

java - 如何在 Android 中的 Google map 选项菜单中添加指南针

android - 跟踪所有 Android 输入事件

java - 如何重置以前单击的按钮的颜色?