Android Alarm Manager avec récepteur de radiodiffusion inscrits dans le code plutôt que de manifester

Je veux utiliser une alarme d'exécuter du code à un certain moment. J'ai mis en œuvre avec succès une alarme avec le récepteur de radiodiffusion inscrit dans le manifeste, mais la façon dont je le comprends, cette méthode utilise une catégorie distincte pour le récepteur de radiodiffusion.

Je peux utiliser cette méthode pour démarrer une autre activité, mais je ne peux pas l'utiliser pour exécuter une méthode dans mon activité principale?

(comment puis-je aviser une activité en cours à partir d'un récepteur de radiodiffusion?)

Donc, j'ai essayé d'inscrire mon récepteur de radiodiffusion dans mon activité principale, comme expliqué dans la réponse ci-dessus.

private BroadcastReceiver receiver = new BroadcastReceiver(){
    @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context, "hello", Toast.LENGTH_SHORT).show();
        uploadDB();         
    }
};    

public void onResume() {
    super.onResume();

    IntentFilter filter = new IntentFilter();
    filter.addAction(null);

    this.registerReceiver(this.receiver, filter);
}

public void onPause() {
    super.onPause();

    this.unregisterReceiver(this.receiver);
}

Cependant je n'ai pu obtenir que cela fonctionne avec l'alarme de manager, je ne sais pas comment je dois le lien de l'alarme à l'intention récepteur de radiodiffusion. Quelqu'un pourrait-il m'indiquer un exemple de l'enregistrement d'une alarme gestionnaire de récepteur de radiodiffusion de façon dynamique à l'activité? Ou d'expliquer comment je pourrais faire cela?

OriginalL'auteur Shane | 2010-08-10