Yeniden başlatmanın ardından beklemem gereken bir dizi alarm var. Bir önyükleme alıcısını kullanmayı denedim ama yine başlamayacaklar. Önyükleme alıcısını ve tüm alarmların nasıl yeniden başlatılacağını anladığımdan emin değilim. Bildirimlerim için zaten bir tane alıcım var, fakat aynı alıcıyı kullanıp kullanamayacağımı mı yoksa yeni birime mi ihtiyacım olduğunu bilmiyor muyum?Android Alarm Yöneticisi yeniden başlatıldıktan sonra
Bana herhangi bir iyi öğreticiyi yönlendirebilir veya bana yardım edebilir misiniz?
Alkış
Kodu: NotificationMenu bildirimleri olmak
DatabaseHandler db = new DatabaseHandler(this);
List<UAlarm> alarms = db.getAllAlarms();
AlarmManager am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
for (UAlarm ua : alarms) {
String programme = ua.getTitle();
String startTime = ua.getStart();
String endTime = ua.getEnd();
String nowPlaying = ua.getChannel();
db.addAlarm(new UAlarm(programme, startTime, endTime, nowPlaying, ""));
final UAlarm ut = new UAlarm();
ut.setTitle(programme);
ut.setStart(startTime);
ut.setEnd(endTime);
ut.setChannel(nowPlaying);
ut.setId(db.getLastEntered());
String [] bla = startTime.split(":");
int hour = Integer.parseInt(bla[0].trim());
int minute = Integer.parseInt(bla[1].trim());
minute -= 2;
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, hour);
cal.set(Calendar.MINUTE, minute);
Intent intenta = new Intent(this, NotificationMenu.class);
String name = programme;
intenta.putExtra("name", name);
intenta.putExtra("id", db.getLastEntered());
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, ua.getId(),
intenta, PendingIntent.FLAG_CANCEL_CURRENT);
am.set(AlarmManager.RTC_WAKEUP,
cal.getTimeInMillis(), pendingIntent);
}
}
, ben AlarmManager
Teşekkür ama neden kodunuzu @CommonsWare içinde 'BOOT_COMPLETED' görmüyorum? – ericn
@fuzzybee: Açıkça görüldüğü gibi, projenin tamamını incelemek için cevaptaki köprüyü tıklamayı başarmışsınız. – CommonsWare
Benim hatam, @CommonsWare – ericn