android – 如何设置闹钟每天上午8:00开火

android – 如何设置闹钟每天上午8:00开火,第1张

概述我试图在每天早上8点开火. 我知道如何创建闹钟,但我将如何将其设置为每天上午8:00启动. am.setRepeating() 您可以使用日历并将其设置为您想要的适当时间.然后你会做cal.getTimeInMillis(),并将其用于triggerAtTime,间隔为24 * 60 * 60 * 1000 = 86,400,000 您还必须确保已完成启动的BroadcastReceiver,因此 我试图在每天早上8点开火.

我知道如何创建闹钟,但我将如何将其设置为每天上午8:00启动.

am.setRepeating()
解决方法 您可以使用日历并将其设置为您想要的适当时间.然后你会做cal.getTimeInMillis(),并将其用于triggerAtTime,间隔为24 * 60 * 60 * 1000 = 86,400,000

您还必须确保已完成启动的broadcastReceiver,因此如果手机已关闭然后再打开,您可以重新安排警报:

Registered alarms are retained while the device is asleep (and can
optionally wake the device up if they go off during that time),but
will be cleared if it is turned off and rebooted.

对于启动,您使用intent-filter“androID.intent.action.BOOT_COMPLETED”,并且您必须持有权限“androID.permission.RECEIVE_BOOT_COMPLETED”,以防您需要该信息.

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

http://developer.android.com/reference/java/util/Calendar.html

和AlarmManager上的页面:

http://developer.android.com/reference/android/app/AlarmManager.html

So how would that look insIDe AlarmManager.setRepeating()?

这是方法:

setRepeating(int type,long triggerAtTime,long interval,PendingIntent operation)

我想对于类型,你会想要使用ELAPSED_REALTIME,然后获得triggerAtTime,你会得到一个明天上午8:00匹配的日历(称之为cal),然后做

triggerAtTime = cal.getTimeInMillis()-Calendar.getInstance().getTimeInMillis()

那就是

alarmMan.setRepeating(AlarmManager.ELAPSED_REALTIME,triggerAtTime,86400000,pendingIntent);

而且我不知道如何使用Calendar在明天早上8点到达,但我想你会做cal.getInstance(),然后是cal.add(Calendar.DAY,1)然后是cal.set(Calendar) .HOUR_OF_DAY,8)

http://developer.android.com/reference/java/util/Calendar.html

我几乎没有使用过Calendar,所以我可能会遇到一些错误,你可能需要稍微玩一下,但这基本上是需要做的.将来,如果您只是阅读DOC并使用它,您通常可以解决它.

总结

以上是内存溢出为你收集整理的android – 如何设置闹钟每天上午8:00开火全部内容,希望文章能够帮你解决android – 如何设置闹钟每天上午8:00开火所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1121846.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存