是的,我可以使用SensorEventListener获得传感器更新事件.但是这种方法有两个缺点:
1)对于某些传感器,我必须等待状态更新.例如,温度可能在一分钟后更新!
2)在某些情况下,我会得到不正确的读数.例如,电话放在平坦的表面上并且不会移动.侦听器注册后,我收到第一个方向更新事件.当仅一部分方向矢量发生变化时,其他部分可能为0.无法确定是真正的0度方位角还是仅是不完整的矢量.如果我稍微移动电话,则会出现正确的非零方位角.
为了解决这个问题,可以创建一个单独的线程来不断监视传感器.一段时间后,它肯定会包含真实值.但是我认为这是一项简单任务的开销.
最佳答案
Is it any other way to get current
sensor data?
抱歉,当前API中没有AFAIK.