根据Android文档:https ://developer.android.com/guide/topics/sensors/sensors_motion.html
线性加速度=加速度-重力加速度。
这似乎适用于我的 2 部手机和 LG Watch Urbane W150。
但是,在我的新华为手表 2 上,线性加速度仍然包含重力加速度。我在所有设备上运行相同的应用程序,只有在华为手表 2 上我看到了这个问题。
当手表放在桌子上时adb shell dumpsys sensorservice
,LG Watch Urban W150的命令会将此作为输出:
Linear Acceleration: last 10 events
1 (ts=24353.048620089, wall=17:28:40.031) -0.92, -0.15, 0.23,
2 (ts=24353.115270480, wall=17:28:40.086) -0.79, -0.17, 0.33,
3 (ts=24353.181920870, wall=17:28:40.146) -0.75, -0.14, 0.21,
MPU6515 Accelerometer: last 50 events
1 (ts=93043.344428463, wall=12:33:30.392) -8.18, -2.35, 4.83,
2 (ts=93043.352240963, wall=12:33:30.392) -8.20, -2.35, 4.87,
3 (ts=93043.367865963, wall=12:33:30.392) -8.14, -2.35, 4.81,
如您所见,LG 手表的 x、y 和 z 接近于预期的零。
然而,相同的命令,但对于华为手表 2给出:
huawei Linear Acceleration Sensor: last 10 events
1 (ts=31287.761652539, wall=17:31:07.258) -2.27, 6.58, 7.51,
2 (ts=31287.829730716, wall=17:31:07.325) -2.48, 6.41, 8.10,
3 (ts=31287.891682226, wall=17:31:07.387) -2.55, 6.60, 7.39,
BMI160 3-axis Accelerometer: last 50 events
1 (ts=100179.672482189, wall=12:39:19.258) 9.30, -3.46, 0.83,
2 (ts=100179.682469756, wall=12:39:19.258) 9.32, -3.46, 0.83,
3 (ts=100179.692457323, wall=12:39:19.258) 9.30, -3.47, 0.84,
你会看到线性加速传感器的奇怪输出。
这是华为手表2的错误吗?