有没有办法使用AlarmManager在特定时间段内激活闹钟?我有数据库中存储的开始时间和结束时间值。我想在启动时启动警报,使设备保持静音,警报应在设备音量恢复正常的结束时结束。
一种方法是在开始时设置闹钟&然后在结束时设置另一个警报。但问题是时间段可能重叠,如果我使用2个不同的警报(一个在开始时,另一个在结束时),则需要额外的逻辑来实现。 Android中是否有任何程序可以应对这种情况?或者实现逻辑是解决这个问题的唯一方法吗?
答案 0 :(得分:1)
为什么不在你的Intent
PendingIntent
中传递额外的“endTime”长类型,以便结束闹钟。 (我假设它是重复的)然后在你的广播接收器中获得额外的,与System.currentTimeMillis()
比较,如果它小于当前时间取消警报并退出?