Comment Arrêter de Répéter les Services d'Alarme sur Android?
J'ai tempstotal = 1 h et et intervalTime = 5min, les deux sont dans l'ordre de la milliseconde,
Je tiens à réitérer mes GPSSetting services de chaque intervalle et après l'achèvement de tempstotal de répéter devraient être de s'arrêter.
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
Intent intent1 = new Intent(C2DMReceiver.this, GPSSetting.class);
PendingIntent pendingIntent = PendingIntent.getService(
C2DMReceiver.this, 0, intent1, 0);
am.setRepeating(AlarmManager.RTC, System.currentTimeMillis(), intervalTime,
pendingIntent);
Alors comment je peux arrêter de répéter l'alarme ?
Ce qui concerne,
Girish
OriginalL'auteur | 2011-11-18
Vous devez vous connecter pour publier un commentaire.
Créer le même
PendingIntent
que lors de l'enregistrement de l'alarme et de l'utilisationAlaramManager.cancel()
de l'annuler.Magasin la première fois que l'alarme fonctionne quelque part et de calculer le temps écoulé à chaque fois qu'il s'exécute. Si elle est supérieure à 1 heure, annuler l'alarme.
merci de u peut m'envoyer le code source
Non, mais voici un indice: vous pouvez obtenir l'heure actuelle à l'aide de
System.currentTimeMillis()
. Une heure est60 * 60 * 1000
millisecondes. Faire le calcul.comment calculer le temps écoulé ?
OriginalL'auteur Nikolay Elenkov
Si vous avez réglé l'alarme de service pour la répétition de l'intervalle de temps et que vous souhaitez annuler vos services, alors cette solution va vous aider, voici tout d'abord je suis la création de répéter les services après toutes les 30 sec, mais quand je vais appuyer sur le bouton d'arrêt alors qu'il va annuler tous les services que j'ai généré.
Maintenant, je vais arrêter/annuler ces services à l'aide de la même "pendingintent" et "alarmManager", pour annuler ce le code sera
OriginalL'auteur Pir Fahim Shah
Vous pouvez passer une intention supplémentaire de la valeur que 1 heures (ou toutes les) de l'heure système actuelle. Ensuite, vous pouvez vérifier que la valeur de l'intérieur de la onBind() en cas de service et de la comparer. Voici un exemple:
À l'intérieur de l'onBind() methode:
Ne sais pas si cela fonctionne pour les services, mais il a travaillé pour BroadcastReceiver.
OriginalL'auteur Nafis
Vous pouvez annuler l'alarme en passant par la même dans l'attente de l'intention que vous avez utilisé lors de la configuration de la méthode d'annulation de l'alarme manager:
vous devez définir une autre alarme loi sur la droite après une heure et responsable de la juste seulement l'annulation de l'alarme spécifique
OriginalL'auteur Maneesh