Como você inicia uma atividade com o AlarmManager no Android?

Eu passei por uma dúzia de tutoriais e respostas de fóruns sobre esse problema, mas ainda não consegui reunir algum código de trabalho. Vou tentar manter a pergunta direta:

Como você usa o AlarmManager (na API do Android) para iniciar uma atividade em um determinado momento? Qualquer solução para esse problema servirá.

Minha tentativa mais recente de conseguir isso está abaix

(Importações omitidas. Espero que o MyActivity inicie 3 segundos após a abertura do programa, o que não ocorre. Não há mensagens de erro para falar.)

public class AndroidTest2Activity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Context context = this;//.getApplicationContext();

        AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); // CORRECT
        Intent intent = new Intent(context, myReceiver.class); // CORRECT
        PendingIntent pending = PendingIntent.getBroadcast( context, 0, intent, 0 ); // CORRECT
        manager.set( AlarmManager.RTC, System.currentTimeMillis() + 3000, pending ); // CORRECT

        setContentView(R.layout.main);
    }
}

public class myReceiver extends BroadcastReceiver {
    public void onReceive(Context context, Intent intent) {
        Intent i=new Intent(context, myActivity.class);
        i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(i);
    }
}

public class myActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d("", "Elusive success");
        setContentView(R.layout.main);
    }
}

Qualquer conselho seria apreciado

Observe: eu já tenho o myReceiver no manifesto

questionAnswers(6)

yourAnswerToTheQuestion