我目前正在开发一款利用光线传感器在我的服务中执行任务的应用。我使用本网站的例子作为我的基础:
当我的平板电脑插入计算机进行调试时,传感器可以正常工作。但是,如果我在没有插入的情况下运行相同的代码,则响应速度非常慢,有时根本不会触发。
有人可以建议为什么当设备本身时性能受阻?
编辑: 我应该注意到我正在尝试关闭设备读取传感器。我发现问题是传感器在设备发生故障时关闭了。请看下面我的答案。
谢谢, 约什
答案 0 :(得分:1)
有时候这只是一个设备问题,据报道很多人都认为它们对光/接近传感器的速度很慢。只要插入时传感器的异常正常响应;也许您的设备传感器在有电源时响应更快。
我想通过更改rate
在:
https://developer.android.com/reference/android/hardware/SensorManager.html
率事件发生率。这只是对系统的暗示。可以比指定的速率更快或更慢地接收事件。通常是事件 收到的更快。该值必须是
SENSOR_DELAY_NORMAL
之一,SENSOR_DELAY_UI
,SENSOR_DELAY_GAME
或SENSOR_DELAY_FASTEST
。
所以我想,添加SENSOR_DELAY_FASTEST
可能对您有帮助。
答案 1 :(得分:1)
我发现问题的原因是设备关闭了CPU,导致光传感器延迟或无法读取。
添加部分唤醒锁确实解决了这个问题,但代价是电池使用率过高。如果有人建议如何在没有唤醒锁的情况下关闭设备来继续监控光传感器,我将非常感激。