【问题标题】:Turn off AlarmManager when phone goes to sleep mode手机进入睡眠模式时关闭 AlarmManager
【发布时间】:2015-09-19 06:50:42
【问题描述】:

我已将 AlarmManager 设置为每分钟触发一次。但是,我只在电话处于活动状态时才需要它。我想在手机进入睡眠状态时关闭所有更新。我不确定当手机进入睡眠状态时 AlarmManager 和小部件的默认行为是什么。但我注意到我的电池在睡眠模式下会下降。因此,我相信它是导致它失败的小部件。

那么,如果 AlarmManager 和其他广播默认保持触发,我如何在睡眠模式下关闭这些更新,然后在手机恢复活动模式时重新打开它们?

【问题讨论】:

    标签: android android-widget alarmmanager


    【解决方案1】:

    使用 public void setInexactRepeating (int type, long triggerAtMillis, long intervalMillis, PendingIntent operation) 和 RTC 作为类型。只有 RTC_WAKEUP 和 ELAPSED_REALTIME_WAKEUP 会唤醒设备。

    例如在我的代码中我使用

    am.setInexactRepeating(AlarmManager.RTC, System.currentTimeMillis() + syncInterval, syncInterval, pendingIntent);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多