Android - 空闲时允许重复警报
Posted
技术标签:
【中文标题】Android - 空闲时允许重复警报【英文标题】:Android - Repeating Alarms Allowed While Idle 【发布时间】:2017-01-07 18:33:40 【问题描述】:我需要每隔 X 小时设置一个重复警报,即使在打瞌睡模式下也会触发。但是,android 23 的 AlarmManager 中唯一可用的 API 是 setExactAndAllowWhileIdle 和 setAndAllowWhileIdle,它们不用于重复警报。
我想知道是否应该在每次触发警报时重新安排警报时间?还是有更好的解决方案?
【问题讨论】:
这仍然可以在 Oreo 及更高版本中完成吗?setExactAndAllowWhileIdle
并每隔 X 间隔设置一个重复警报,甚至可以在打瞌睡模式下触发。有没有人有样品我该怎么做。
【参考方案1】:
我想知道是否应该在每次触发警报时重新安排警报时间?
这正是你应该做的。
doze 背后的想法是试图防止耗尽电池电量。重复闹钟会耗尽电池电量,因此在 android 6 中删除了通过传递额外参数重复闹钟的内置方法。它仍然可以完成,但正如您所想的那样,这需要您手动重新安排闹钟。
请务必在触发警报时立即重新安排警报,然后再做任何其他可能出错的事情并防止警报被重新安排。
【讨论】:
调用哪个方法来设置它?你应该打电话给setAndAllowWhileIdle()
还是别的什么?
这会绕过 Oreo 中的后台执行限制吗?我对此表示怀疑。我使用它,但 Android 仍然显示不允许后台启动:服务
@NinjaCoder 我看不出这与安排警报有什么关系
我的错。我将这个答案与PendingIntent
中的服务安排警报混淆了@
如何在打盹模式下重新安排闹钟?我可以获得参考链接以上是关于Android - 空闲时允许重复警报的主要内容,如果未能解决你的问题,请参考以下文章
com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com/google/androi
如何在 Android 上实现通过另一个屏幕上的操作关闭的警报?