jeu android de l'alarme à une heure précise
j'ai réglé l'alarme à une heure précise, mais chaque fois que j'ouvre l'application, il s'allume
c'est le code que j'ai utilisé :
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this,0010000,intent,0);
Calendar time = Calendar.getInstance();
time.set(Calendar.HOUR, 5);
time.set(Calendar.MINUTE, 59);
time.set(Calendar.SECOND, 0);
alarmManager.set(AlarmManager.RTC,time.getTimeInMillis(),pendingIntent);
l'alarme est réglée sur 5:59:00 mais quand je quitte l'application et l'ouvrir à nouveau l'alarme sonne de nouveau ,, comment je peux éviter ce problème et de faire le réglage de l'alarme seulement à 5:59:00 !
OriginalL'auteur israa | 2011-11-15
Vous devez vous connecter pour publier un commentaire.
Bien, vous avez besoin de régler le réveil à sonner la prochaine fois, il est 5:59:00.
Vous faites cela en obtenant l'heure actuelle, si son avant 5:59:00, régler l'alarme, si son bout de 5:59:00 puis ajouter un jour et régler l'alarme. Faire comme si:
Je voulais vous donner une constructible exemple, mais je ne comprends pas tout alarmmanager pourtant, c'est ce que vous avez. Construit sur eclipse 3.5.2 avec ADK 15
Obtenir l'heure actuelle, puis de trouver combien de millis doivent s'écouler jusqu'à 5:59:00 le jour suivant. Je vais voir si je peux obtenir quelque chose de codé ici dans un peu.
je reçois à l'heure actuelle à l'aide du Système.currentTimeMillis() et le temps dans la calandre-je obtenir de l'aide de temps.getTimeInMillis() u ne veux faire qqch comme ceci : alarmManager.set(AlarmManager.RTC,Système.getTimeInMillis()+ (Systrm.getTimeInMillis - temps.getTimeInMillis()),pendingIntent);
cd.add(Calendar.DATE,1); ce wt va ajouter ?
si je devais deviner, je dirais que vous êtes à l'aide de java.sql.Date au lieu de java.util.Date
OriginalL'auteur Chris
Au lieu de placer ce code dans la fonction onCreate, le placer à l'intérieur de n'importe quel bouton de l'événement ou de tout autre événement qui va être appelée uniquement sur l'interaction de l'utilisateur.
Je pense, que vais le faire.
ajouter cette 'annuler' méthode de votre code. ceci annulera la précédente alarme avant d'installer la nouvelle.
Je suis d'accord de le mettre dans un bouton à l'écoute, mais je doute que ce soit le problème.
quelle est la fréquence u vérifier la base de données pour la mise à jour de ce temps (5:59:00)? si u vérifier, cette alarme est définie dans la méthode.
cette heure sera fixée prises de serveur web qu'une seule fois , je veux dire tous les jours à 5:59:00 je veux de l'alarme pour être ensemble , pour être plus clair, mon application est utilisé pour les patients et il y a un site pour le médecin , je veux le médecin pour rappeler au patient qu'il doit prendre son médicament . je ne veux pas utiliser l'action de l'écouteur ou un bouton , wt ai besoin de régler l'alarme seulement à ce moment
même dans ce cas, u serait d'avoir une méthode de vérification de la DB. si le médecin 5:59 au site web, u serait en utilisant un morceau de code pour l'amener à l'application. êtes-vous de la lecture à partir de la DB à chaque fois que l'application démarre?
OriginalL'auteur BobbyGoks