有没有办法在Android 4.4中禁用传感器结果的批处理(来自我的应用程序的代码)?
我知道这可能不是最好的主意,但我确信它在我的应用程序的情况下是值得的,尽管耗电量更高。
答案 0 :(得分:1)
如果你打电话
registerListener (SensorEventListener listener, Sensor sensor, int rateUs, int maxBatchReportLatencyUs)
然后启用传感器批处理。如果你打电话给旧版本:
registerListener (SensorEventListener listener, Sensor sensor, int rateUs, Handler handler)
然后不应发生传感器批处理。 另一种可行的解决方法:
使用SensorManager
时,请拨打getFifoMaxEventCount()
以获取可以保存的最大传感器事件数,并将该数字除以应用对每个事件所需的速率。使用该计算设置唤醒警报,使用AlarmManager
调用您的服务(实现SensorEventListener
)来刷新传感器。
另见: https://developer.android.com/about/versions/android-4.4.html#BatchSensors