我需要一些帮助从方向传感器获取信息。正如我在几乎每个教程/指南中看到的那样,值被传递给一个事件(onSensorChanged(SensorEvent事件),可以在其中操作它们。
我的问题是我不想让电磁/方向传感器持续运转(为了电池寿命)。我希望能够打开它,获取当前值并将其关闭。有没有办法做到这一点?
我做了一些搜索,发现我可以尝试多线程,但我对此并不十分满意。
我正在寻找的是(对不起格式化我似乎无法弄明白):
private void getOrientationNOW() {
m_SensorManager.registerListener(mySensorEventListener, m_MagneticSensor, SensorManager.SENSOR_DELAY_FASTEST);
//---->Something here to get the current value from the sensor
m_SensorManager.unregisterListener(mySensorEventListener);
}
如果可以,请帮助我!
提前谢谢大家!
答案 0 :(得分:0)
当您为传感器注册侦听器时,每次传感器值根据参数更改时,都会调用该活动。因此,如果您只想获取一次值,那么在获取值一次后,取消注册该传感器的侦听器。