create method :
public void setAlarm(Context context, int interva) {
alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, NotificationAlarm.class);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), interva, pi);
}
then create class NotificationAlarm
public class NotificationAlarm extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
loop();
}
private void loop() {
//work
}
}
add the class in AndroidManifest
<receiver android:name=".NotificationAlarm" />
call the method in activity or service
setAlarm(this,5000);
for cancelAlarm try this:
public void cancelAlarm(Context context) {
Intent intent = new Intent(context, NotificationAlarm.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
alarmManager = (AlarmManager) G.context.getSystemService(G.context.ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
}