代码之家  ›  专栏  ›  技术社区  ›  max

线程与AlarmManager,哪一个电池使用率低

  •  0
  • max  · 技术社区  · 10 年前

    我在我的应用程序中需要的是每天18小时,每30秒做一些事情,即使设备进入睡眠模式,我也要继续运行
    为此,我找到了两种方法:

    1. 使用计时器 AlarmManager 类型为 AlarmManager.ELAPSED_REALTIME_WAKEUP
    2. 使用具有未完成while循环的线程,并每隔30秒为线程休眠一次。

    现在我使用计时器,它在所有API版本中都很好,但有一个问题,那就是电池使用。

    我的问题是,我可以用线程代替计时器吗?我听说线程不能运行很长时间(最多5秒),但我不确定。
    如果我能使用线程,那是不是比计时器功耗更低?
    并且适用于所有API版本?

    1 回复  |  直到 6 年前
        1
  •  0
  •   BalaramNayak    10 年前

    下面是对你问题的一个很好的描述 http://www.vogella.com/tutorials/AndroidTaskScheduling/article.html