在我的Android设备(Nexus 5)上,getPower()方法为acclerometer返回0.45mA的值,为重力传感器返回3.65mA的值。
我的理解是重力传感器只是一个通过滤波器运行加速度计数据的虚拟传感器。如果是这样,为什么它会吸引更多的力量?
getPower()返回的值是否准确或与实际功耗相关?
答案 0 :(得分:1)
Acceleration sensor
会返回应用于您设备的所有力的总和,而Gravity sensor
仅返回重力的影响。这就是为什么acclerometer
比the gravity sensor
获得更多权力的原因。您可以参考Using the Accelerometer和Using the Gravity Sensor的文档。请查看Which Sensors in Android gets Direct Input? What are Virtual Sensors?以获得更多说明。
来自文档
注意:当设备静止时,重力传感器的输出应与加速度计的输出相同。
答案 1 :(得分:1)
我的理解是重力传感器只是一个运行的虚拟传感器 加速度计数据通过过滤器。
不。虚拟重力传感器融合了加速度计,陀螺仪和磁力计(罗盘)读数,而不仅仅是加速度计读数。我想最大的消费者是磁力计。