Making an alarm program - not working
I am attempting to make alarm program. So far I have written an activity in which the user can select the time he wishes the alarm to go off. This is working fine. Now I need to use the alarm manger to tell the OS to call some of my code at a certain point in the future. Just to test this in a crude way I added the following code that gets executed when I press a test button in my main activity:

    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);

This should mean that some code called to_call_when_alarm_goes_off will get executed one second after I press the button.... Now this is where I'm a little confused. I'm not sure quite how/where to set up "to_call_when_alarm_goes_off". What I did was simply add a new class to my project as follows:

    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!!!");
    
    	}
    
    }

All the code compiles, and when I press the button all the code in the first code snippet gets executed without crashing - but one second later the broadcast receiver code is not executed. Clearly I am misunderstanding something.


Making an alarm program - not working
===

I am attempting to make alarm program. So far I have written an activity in which the user can select the time he wishes the alarm to go off. This is working fine. Now I need to use the alarm manger to tell the OS to call some of my code at a certain point in the future. Just to test this in a crude way I added the following code that gets executed when I press a test button in my main activity:

    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);

This should mean that some code called to_call_when_alarm_goes_off will get executed one second after I press the button.... Now this is where I'm a little confused. I'm not sure quite how/where to set up "to_call_when_alarm_goes_off". What I did was simply add a new class to my project as follows:

    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!!!");
    
    	}
    
    }

All the code compiles, and when I press the button all the code in the first code snippet gets executed without crashing - but one second later the broadcast receiver code is not executed. Clearly I am misunderstanding something.

