根据Android文档:https://developer.android.com/guide/topics/sensors/sensors_motion.html
线性加速度=加速度 - 重力引起的加速度 这似乎适用于我的2部手机和LG Watch Urbane W150。
但是,在我的新华为手表2上,线性加速度仍包含重力加速度。我在所有设备上运行相同的应用程序,仅在华为手表2上我看到了这个问题。
当手表躺在桌子上时, LG Watch Urban W150的命令adb shell dumpsys sensorservice
将作为输出:
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接近零,这是预期的。
然而,相同的命令,但 Huawei Watch 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,
你会看到线性acc传感器的奇怪输出。
这是华为Watch 2中的错误吗?
答案 0 :(得分:0)
所有华为设备都存在此问题,可能是SOC设计问题或驾驶员的数学错误。
在华为p40 mate20 p10中进行了测试,所有结果都具有较高的偏见。