3

我想每 10 秒听到一次哔声,7*24 无论如何。我应该怎么办?

  1. 它适用于打盹模式。
  2. 它的工作时间准确。
  3. 它在没有 GCM 的情况下工作。
  4. 它适用于自定义ROM。

如果不可能,是否可以将 10 秒更改为 1 分钟,并放弃确切的时间?

备注:关于第4项自定义ROM,很多厂商为了省电,会像AlarmManager一样杀掉后台运行。

4

2 回答 2

1

我很确定 AlarmManager 是一种方法。警报不是后台工作 - 它是一项计划的工作,将在未来的指定(确切)时间运行。如果,如您所说,制造商会杀死那些以节省电池电量,那将意味着用户的警报(例如早上 8 点的起床时间)将不再起作用,这没有任何意义。

请注意,AlarmManager 的行为在 API 19(及更高版本)中已更改,因此默认情况下,警报触发时间是不准确的。这样做是出于电池优化的原因。但是,仍然可以通过使用或更少的API来询问准确的交货时间。AlarmManager#setExactAlarmManager#setWindow

当默认情况下所有警报都准确时,旧平台的行为将与以前一样

有关 AlarmManager 的更多信息和一些代码示例,您可以在此处找到

于 2016-09-18T07:19:40.037 回答
0

您需要使用 Android 后台服务。和CountDownTimer。检查链接以供参考。

SService 将在后台模式下工作。您可以设置间隔CountDownTimer为 10 秒。

于 2016-09-18T05:41:35.873 回答