Android 如何在每天早上8:00设置火灾警报

Android 如何在每天早上8:00设置火灾警报,android,calendar,Android,Calendar,我试着在每天早上8点设置闹钟 我知道如何创建警报,但如何将其设置为每天早上8:00启动 am.setRepeating() 您可以使用日历并将其设置为所需的适当时间。然后执行cal.getTimeInMillis(),并将其用于触发器的时间间隔,时间间隔为24*60*60*1000=86400000 您还必须确保已完成引导的BroadcastReceiver,因此,如果手机已关机,然后重新开机,您可以重新安排闹钟: 当设备处于休眠状态时(并且可以 如果设备在这段时间内关闭,可以选择唤醒设备),

我试着在每天早上8点设置闹钟

我知道如何创建警报,但如何将其设置为每天早上8:00启动

am.setRepeating()

您可以使用日历并将其设置为所需的适当时间。然后执行
cal.getTimeInMillis()
,并将其用于触发器的时间间隔,时间间隔为24*60*60*1000=86400000

您还必须确保已完成引导的BroadcastReceiver,因此,如果手机已关机,然后重新开机,您可以重新安排闹钟:

当设备处于休眠状态时(并且可以 如果设备在这段时间内关闭,可以选择唤醒设备),但是 如果关闭并重新启动,将被清除

对于引导,您使用intent filter
“android.intent.action.boot\u COMPLETED”
,并且您必须持有权限
“android.permission.RECEIVE\u boot\u COMPLETED”
,以防您需要该信息

为方便起见,这里有几个链接。 日历上的页面:

以及AlarmManager上的页面:

方法如下:

setRepeating(int type, long triggerAtTime, long interval, PendingIntent operation)
我猜对于类型,你会想使用经过的实时,然后得到triggerAtTime,你会得到一个日历(称为cal),匹配明天早上8:00,然后这样做

triggerAtTime = cal.getTimeInMillis()-Calendar.getInstance().getTimeInMillis()
那就是

alarmMan.setRepeating(AlarmManager.ELAPSED_REALTIME, triggerAtTime, 86400000, pendingIntent);
我不知道如何使用Calendar在明天早上8:00准确到达,但我想你应该做
cal.getInstance()
,然后
cal.add(Calendar.DAY,1)
then
cal.set(Calendar.HOUR OF the_DAY,8)


我几乎没用过日历,所以我可能会有一些错误,你们可能需要稍微处理一下,但这基本上是需要做的。将来,如果您只需阅读文档并进行一些操作,您通常就能够理解它。

那么,在AlarmManager.setRepeating()中这会是什么样子呢?
alarmMan.setRepeating(AlarmManager.ELAPSED_REALTIME, triggerAtTime, 86400000, pendingIntent);