Android:如何使用AlarmManager [英] Android: How to use AlarmManager
问题描述
我需要在设置 AlarmManager
20分钟后触发一段代码。
I need to trigger a block of code after 20 minutes from the AlarmManager
being set.
有人可以给我看一下如何在Android中使用 AlarmManager
的示例代码?
Can someone show me sample code on how to use an AlarmManager
in ِAndroid?
我一直在玩一些代码几天,它将无法正常工作。
I have been playing around with some code for a few days and it just won't work.
推荐答案
一些示例代码并非如此简单code> AlarmManager 。
"Some sample code" is not that easy when it comes to AlarmManager
.
这是一个显示 AlarmManager
:
AlarmManager mgr=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent i=new Intent(context, OnAlarmReceiver.class);
PendingIntent pi=PendingIntent.getBroadcast(context, 0, i, 0);
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime(), PERIOD, pi);
在这个例子中,我使用 setRepeating()
。如果你想要一次性警报,你只需要使用 set()
。请确保在与 set()
的初始参数中使用的时间相同的时间内启动警报的时间。在上面的例子中,我使用 AlarmManager.ELAPSED_REALTIME_WAKEUP
,所以我的时基是 SystemClock.elapsedRealtime()
。
In this example, I am using setRepeating()
. If you want a one-shot alarm, you would just use set()
. Be sure to give the time for the alarm to start in the same time base as you use in the initial parameter to set()
. In my example above, I am using AlarmManager.ELAPSED_REALTIME_WAKEUP
, so my time base is SystemClock.elapsedRealtime()
.
这是一个更大的样本项目展示了这种技术。
这篇关于Android:如何使用AlarmManager的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!