Oi gente, inseri na minha classe o código abaixo que agenda um alarme para ser executado em 3 horas e depois ficar se repetindo a cada 24 horas,
mas não funcionou no celular real, só funciona quando vc programa ele para ser lançado imediatamente.
//Intent referente ao service "ServicoAniversario"
Intent it = new Intent("SERVICO_ANIVERSARIO");
PendingIntent p = PendingIntent.getService(this, 0, it, 0);
int tempoRepetir = 86400 * 1000; //Corresponde a 24 horas
int delay = 10800; //10800 segundos correspondem a 3 horas
AlarmManager alarme = (AlarmManager) getSystemService(ALARM_SERVICE);
Calendar c = Calendar.getInstance();
c.setTimeInMillis(System.currentTimeMillis());
c.add(Calendar.SECOND, delay);
long time = c.getTimeInMillis();
//O primeiro alarme será lançado em 3 horas e depois se repetirá a cada 24 horas
alarme.setRepeating(AlarmManager.RTC_WAKEUP, time, tempoRepetir, p);