如何获得Android接近传感器的当前价值?

Nul*_*rty 6 android android-sensors sensormanager proximitysensor android-developer-api

是否有可能在Android中获得接近传感器的当前值?

我知道我可以使用SensorManager和Sensor并注册状态更改的侦听器,但我不需要收到每个状态更改的通知,因此这个代码在服务中运行会非常低效.此外,我的代码在状态发生变化之前不知道该值(如果值没有改变怎么办?如何知道它是什么?相反,我只想说:而不是注册一个监听器,我只想说:

proximitySensor.getCurrentDistance();
Run Code Online (Sandbox Code Playgroud)

这可能吗?

谢谢

小智 4

查看文档后,看起来您可以通过订阅 SensorEvent 并查看传回的数据来获取以厘米为单位的距离。

这里有一个开始使用接近传感器的好例子:Android Proximity Sensor Example

进一步阅读 Android文档后,看起来该数组values[0]返回一个以厘米为单位的值。请注意,请查看文档,某些传感器仅返回二进制值,这意味着设备要么近,要么远。