我正在编写一个粘性服务,它在BackgroundThread中启用OrientationEventListener。目前,使用onDestroy()和/或手动停止服务时会禁用侦听器,但在设备进入休眠状态时它会保持活动状态。我猜这会影响电池,因为SensorManager保持活动状态。当设备进入休眠状态并在我打开设备时再次启动服务(或启用监听器)时,如何停止服务(或禁用监听器)?
这是BackgroundThread:
private class BackgroundThread implements Runnable {
public void run() {
try {
while (isRunning){
orientListener.enable();
Thread.sleep(10000);
}
orientListener.disable();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
感谢您的帮助!