有没有办法在给定时间停止闹钟,例如,我在早上7:45开始闹钟并且每5分钟重复一次然后,我想在时间已经是上午8点时停止闹钟?
我如何使用此算法,因为警报管理器的cancel()方法只接受一个动作(PendingIntent)
其次,关于服务,我有一个想法是在服务上放置检查器或if语句来检查它是否已经是8:00a,但我不确定服务是否总是在后台运行,如果是,那是否意味着要说它总是检查时间是否是早上8点?鉴于服务的含义一旦开始我将不会停止,除非明确告知这样做。
你们中的任何人都知道如何做到这一点请分享,我现在有点困惑
答案 0 :(得分:0)
首次启动闹钟时,您必须启动该服务,此服务将在5分钟响铃并获取设备时间并将其与停止时间的时间进行比较 在那(意味着在上午8点)停止你的服务
答案 1 :(得分:0)
为什么不在上午7:45使用AlarmManager#setRepeating启动您需要做的任何操作,并使用AlarmManager#set设置另一个警报以停止之前的操作?
AlarmManager #set只会被触发一次,因此您可以使用它取消重复闹钟
编辑:
在AlarmManager#set
的实施中,您将检索重复警报(AlarmManager#setRepeating
)和cancel()