0

我想启动一个计时器,当设备处于低功耗(睡眠)模式时计时器到期时将触发该计时器。

设备仅在硬件事件(按下电源按钮)或任何网络活动(呼叫或数据包接收)时被唤醒(正常模式)。

有没有办法通过android本机层中的计时器将设备恢复到正常模式?

我google了很多,但找不到方法。也尝试使用 timer_create()。但是当设备处于低功耗(睡眠)模式时,它不会被触发。

请让我知道是否有人已经完成了这部分。

实际上,我需要的精度以毫秒为单位,带有 RTC_WAKEUP 的 AlarmManager 位于应用程序层中,在考虑延迟后将过期,这也在 Java 层中。(如果我实现 Jni,它将给应用程序带来一些开销,因为有多个计时器需要在睡眠模式下运行)。

4

1 回答 1

0

要恢复设备,我认为您可以在这些方面进行探索 1. PowerMangerService


    PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
    wl.acquire();
    //..screen will stay on during this section..
wl.release();
2.屏幕超时设置中的android.provider.Settings.System.SCREEN_OFF_TIMEOUT值。3. PowerManagerService 的 Intent.ACTION_SCREEN_ON 和 Intent.ACTION_SCREEN_OFF 意图

于 2012-12-03T12:47:22.863 回答