我有一个扩展Application的类。在类中,我调用AlarmManager并传入一个intent。按计划,扩展BroadcastReceiver的EventReceiver类处理onReceive方法中的调用。如何从onReceive方法再次调用intent来安排另一个事件?
答案 0 :(得分:0)
您可以使用setRepeating()
代替set()
,让它自动重复出现。或者,只需在等效PendingIntent
上创建另一个Intent
(相同的操作,相同的Uri
,相同的组件等)。您每次都不需要原始的PendingIntent
对象。
答案 1 :(得分:0)
final Intent intent = new Intent(context, YourService.class);
final PendingIntent pending = PendingIntent.getService(context, 0, intent, 0);
final AlarmManager alarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarm.cancel(pending);
long interval = 30000;//milliseconds
alarm.setRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(),interval, pending);
可以在Photostream示例应用程序http://code.google.com/p/apps-for-android/中找到更完整的示例。