0

Dans mon application, je souhaite démarrer une minuterie qui déclenche une action toutes les x minutes, que l'utilisateur soit ou non dans l'application. J'ai lu et je ne suis pas sûr de la combinaison de types de diffusion et de réception que je devrais utiliser - toute directive serait utile.Android: quel type de combinaison Broadcast/Receiver devrais-je utiliser?

Exemple d'actions de l'utilisateur:

  1. utilisateur frappe un bouton, fixe minuterie initiale (alarme)
  2. minuterie est atteinte, déclenche une action et régler la minuterie à nouveau
  3. Répétez jusqu'à ce qu'il ait une durée de x minutes

Répondre

1
  1. lorsque l'utilisateur touche bouton de réglage alarme

    AlarmManager am = (AlarmManager)getSystemService(Context.ALARM_SERVICE); 
    am.setRepeating (AlarmManager.Type, 
         long triggeringtime, 
         long interval, 
         PendingIntent operation); 
    

ici triggeringtime comment en temps il shud prendre pour prendre une action

et intervalle comment beaucoup de temps, il serait prendre pour faire de même.

ici opération est l'intention que vous devez exécuter comme il peut être une activité ou service que vous pouvez définir comme

operation = PendingIntent.getActivity(context, 0, intent or service, 0); 

2 et 3 étape sera fonctionner en continu c'est ce que le gestionnaire d'alarme fait.

Cette alarme continue de répéter jusqu'à leur suppression explicitement

cancel(AlarmManager.OnAlarmListener). 

Je suis un débutant Sry si je tort. J'espère que cela aide!

1

Android JobScheduler

Vous pouvez trouver beaucoup de tutoriel en ligne

+0

cela a nécessité un levier d'api> 21. pour les autres, vous pouvez avoir alarmManager. –

+0

Intéressant! Je ne savais pas à ce sujet - je vais y réfléchir, merci! – naspinski