有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

服务中的java定向侦听器

我正在编写一个粘性服务,它可以在后台线程中启用OrientationEventListener。当前,使用onDestroy()和/或手动停止服务时,侦听器处于禁用状态,但当设备进入睡眠状态时,侦听器将保持活动状态。我猜这会影响电池,因为SensorManager保持激活状态。如何在设备进入睡眠状态时停止服务(或禁用侦听器),并在打开设备时再次启动服务(或启用侦听器)

以下是背景线索:

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();
        }
    }
}

谢谢你的帮助


共 (1) 个答案

  1. # 1 楼答案

    This question应该回答你的问题。它指向this article,解释了如何知道屏幕何时打开和关闭