Android Alarm Create rescheduleRepeatingAlarm(Context context, Class clazz, int newIntervalInMs, int flags)

Here you can find the source of rescheduleRepeatingAlarm(Context context, Class clazz, int newIntervalInMs, int flags)

Description

reschedule Repeating Alarm

License

Open Source License

Declaration

public static void rescheduleRepeatingAlarm(Context context,
            Class<?> clazz, int newIntervalInMs, int flags) 

Method Source Code

//package com.java2s;
/*//  w w  w  . j  a v a 2  s. c o  m
 Copyright (C) 2013 Prasanna Thirumalai
    
 This file is part of StackX.

 StackX is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 StackX is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with StackX.  If not, see <http://www.gnu.org/licenses/>.
 */

import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;

public class Main {
    public static void rescheduleRepeatingAlarm(Context context,
            Class<?> clazz, int newIntervalInMs, int flags) {
        cancelAlarm(context, clazz, flags);
        createRepeatingAlarm(context, clazz, newIntervalInMs, flags);
    }

    public static void cancelAlarm(Context context, Class<?> clazz,
            int flags) {
        AlarmManager alarmManager = (AlarmManager) context
                .getSystemService(Context.ALARM_SERVICE);
        Intent intent = new Intent(context, clazz);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(context,
                0, intent, flags);
        alarmManager.cancel(pendingIntent);
        pendingIntent.cancel();
    }

    public static void createRepeatingAlarm(Context context,
            Class<?> clazz, int intervalInMs, int flags) {
        AlarmManager alarmManager = (AlarmManager) context
                .getSystemService(Context.ALARM_SERVICE);
        Intent intent = new Intent(context, clazz);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(context,
                0, intent, flags);
        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
                System.currentTimeMillis(), intervalInMs, pendingIntent);
    }
}

Related

  1. setRepeatingAlarm(Context context, PendingIntent pendingIntent, long time, long interval)
  2. setAlarm(Context context, Intent intentBroadcast, long timeInMillis)
  3. setAlarm(Context context, PendingIntent pendingIntent, long timeInMillis)
  4. registAlarm(Context context, Class target, int code, long time, HashMap data)
  5. createAlarm(Context context)
  6. createRepeatingAlarm(Context context, Class clazz, int intervalInMs, int flags)
  7. buildAlertMessageNoGps(final Context context)