Android Alarmmanager:前60秒每5秒重复一次警报

时间:2014-02-01 14:32:54

标签: android android-alarms

以下代码将每5秒重复一次警报。但我希望这个闹钟在60秒后被取消。

 AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
 Intent i = new Intent(context, CrawlAlarm.class);
 PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
 am.setRepeating(AlarmManager.RTC, System.currentTimeMillis(), 1000 * 5, pi); // Millisec * Second * Minute

1 个答案:

答案 0 :(得分:3)

AlarmManager am=(AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, CrawlAlarm.class);
final PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
am.setRepeating(AlarmManager.RTC, System.currentTimeMillis(), 1000 * 5, pi); // Millisec * Second * Minute  

Handler mHandler = new Handler();
mHandler.postDelayed(new Runnable() {

    @Override
    public void run() {
        am.cancel(pi);
    }

}, 60 * 1000);

这将在60秒后取消。

相关问题