Wykonywanie programu alarmowego - nie działa

Próbuję wykonać program alarmowy. Do tej pory napisałem działanie, w którym użytkownik może wybrać czas, w którym chce wyłączyć alarm. To działa dobrze. Teraz muszę użyć menedżera alarmów, aby powiedzieć systemowi operacyjnemu, aby w przyszłości w pewnym momencie zadzwonił do mojego kodu. Aby przetestować to w surowy sposób, dodałem następujący kod, który zostanie wykonany po naciśnięciu przycisku testu w mojej głównej działalności:

Intent intent = new Intent(getApplicationContext(), to_call_when_alarm_goes_off.class);
PendingIntent pIntent = PendingIntent.getBroadcast(getApplicationContext(),0, intent, 0);
AlarmManager alarms = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarms.cancel(pIntent);

alarms.setRepeating(
        AlarmManager.RTC_WAKEUP,
        System.currentTimeMillis()+1000, 
        AlarmManager.INTERVAL_DAY, 
        pIntent);

Powinno to oznaczać, że jakiś kod o nazwie to_call_when_alarm_goes_off zostanie wykonany sekundę po naciśnięciu przycisku .... Teraz jest to miejsce, w którym jestem trochę zdezorientowany. Nie jestem pewien, w jaki sposób / gdzie skonfigurować „to_call_when_alarm_goes_off”. Po prostu dodałem nową klasę do mojego projektu w następujący sposób:

package com.mycompany.alarmprogram;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;

public class to_call_when_alarm_goes_off extends BroadcastReceiver
{

    @Override
    public void onReceive(Context arg0, Intent arg1) 
    {
        // TODO Auto-generated method stub
        Log.i("ALARM","TIME TO WAKE UP!!!");

    }

}

Cały kod się kompiluje, a po naciśnięciu przycisku cały kod w pierwszym fragmencie kodu zostaje wykonany bez awarii - ale sekundę później kod odbiornika nie jest wykonywany. Najwyraźniej coś źle rozumiem.

questionAnswers(2)

yourAnswerToTheQuestion