Android réglage de l'alarme, avec date spécifique
Je wan pour régler l'alarme avec la notification à la date spécifique.
Ensuite, je suis en utilisant AmarmManager avec NotificationManager actuellement.
Quand j'ai sélectionné la date de dateDialog, l'alarme fonctionne.
Comment puis-je mettre de calendrier valeur de réglage de l'alarme à heure fixe?
Je tiens à répéter l'alarme tous les jours à heure fixe tels que les à 9:00 le matin.
Actuellement, l'alarme est ignorant le moment sur la date précise.
Pourriez-vous m'aider? Merci beaucoup.
confirmButton.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v) {
//set alarm with expiration date
am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
setOneTimeAlarm();
Toast.makeText(fridgeDetails.this, "Alarm automatic set", Toast.LENGTH_SHORT).show();
setResult(RESULT_OK);
finish();
}
public void setOneTimeAlarm() {
c.set(Calendar.HOUR_OF_DAY, 10);
c.set(Calendar.MINUTE, 0);
c.set(expiredYear, expiredMonth, expiredDay);
Intent myIntent = new Intent(fridgeDetails.this, AlarmService.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(fridgeDetails.this,
0, myIntent, PendingIntent.FLAG_ONE_SHOT);
am.set(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), pendingIntent);
}
});
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener()
{
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
expiredYear = year;
expiredMonth = monthOfYear;
expiredDay = dayOfMonth;
displayDate();
}
};
public class AlarmService extends BroadcastReceiver{
NotificationManager nm;
@Override
public void onReceive(Context context, Intent intent) {
nm = (NotificationManager) context
.getSystemService(Context.NOTIFICATION_SERVICE);
CharSequence from = "Check your fridge";
CharSequence message = "It's time to eat!";
PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
new Intent(), 0);
Notification notif = new Notification(R.drawable.ic_launcher,
"Keep Fridge", System.currentTimeMillis());
notif.setLatestEventInfo(context, from, message, contentIntent);
nm.notify(1, notif);
}
}
OriginalL'auteur wholee1 | 2011-12-01
Vous devez vous connecter pour publier un commentaire.
Vous devriez appeler
public void setRepeating (int type, long triggerAtTime, long interval, PendingIntent operation)
(voir ici) pour répéter l'alarme. Par exemple, vous souhaitez déclencher l'alarme de 9:00 tous les jours, vous pouvez faire :Aussi,réglez le dernier paramètre à 0 lorsque initilazing le PendingIntent.
Le 2e argument est le premier moment où l'alarme doit être déclenchée. Si vous voulez répéter l'alarme après une date spécifique, vous pouvez définir le calendrier à cette date, et de définir le calendrier temps que le 2e paramètre. Le 3ème argument est l'intervalle de temps entre deux alarmes, donc, il faut toujours AlarmManager.INTERVAL_DAY dans votre cas.
OriginalL'auteur Huang
Si vous voulez jouer à d'alarme pour particulier date de mois supposons que vous voulez jouer à d'alarme sur le 11-juin-2012, alors vous devez spécifier comme ça, mais le mois de juin est de 6 mois, alors vous devez spécifier 5 dans l'Agenda.Mois.
cal.set(Calendar.MONTH,Calendar.JUNE);
OriginalL'auteur Jai
Hey c'est la façon de régler l'alarme sur android AlarmManager à spesific date
(android alarmmanager régler l'alarme sur la date)
J'ai été la recherche de tous les plus de pour cette.
faites attention à la valeur du mois!!
OriginalL'auteur Zeev G
Cela peut vous aider à
OriginalL'auteur Trapti Gupta