我想打一个时间或日期监听器,比如上午9点,每天激活的活动。我不知道什么是做到这一点的最好方法是什么?我知道我可以使用报警管理器,但我不知道如何使它重复?
有谁知道?非常感谢你提前。
欢呼:)
解决方案我知道我可以使用报警管理器,但我不知道如何使它重复?
使用 setRepeating()
和指定的 INTERVAL_DAY
:
静态无效scheduleAlarms(上下文ctxt){
AlarmManager经理=(AlarmManager)ctxt.getSystemService(Context.ALARM_SERVICE);
意图I =新的意图(ctxt,ScheduledService.class);
PendingIntent圆周率= PendingIntent.getService(ctxt,0,I,0);
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME,
SystemClock.elapsedRealtime()+ AlarmManager.INTERVAL_DAY,
AlarmManager.INTERVAL_DAY,PI);
}
以上code将成立一个报警,分别从现在24小时,每24小时熄灭之后。有它开始在上午9点,替换 ELAPSED_REALTIME
与 RTC
并替换 SystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAY
与上午9时(今天或明天),如通过日历
对象。
I want to make a time or date listener which for example invoke an activity every day at 9 AM. I am not sure what is the best way to do that? I know I can use Alarm Manager, but I don't know how to make it repetitive?
Does anyone know? Thank you very much in advance.
Cheer :)
解决方案I know I can use Alarm Manager, but I don't know how to make it repetitive?
Use setRepeating()
and specify a repeat interval of INTERVAL_DAY
:
static void scheduleAlarms(Context ctxt) {
AlarmManager mgr=(AlarmManager)ctxt.getSystemService(Context.ALARM_SERVICE);
Intent i=new Intent(ctxt, ScheduledService.class);
PendingIntent pi=PendingIntent.getService(ctxt, 0, i, 0);
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME,
SystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAY,
AlarmManager.INTERVAL_DAY, pi);
}
The above code will set up an alarm that will go off 24 hours from right now and every 24 hours thereafter. To have it start at 9am, replace ELAPSED_REALTIME
with RTC
and replace SystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAY
with 9am (today or tomorrow), such as via a Calendar
object.
上一篇:如何在 Windows 8 上的 web 视图中捕获导航事件?视图、事件、如何在、web
下一篇:简单的Android摄像头应用程序 - 旋转导致NullPointerException异常应用程序、摄像头、异常、简单