Voor een schoolproject, waar wij de schoolagenda uitlezen en importeren in een rooster applicatie ben ik bezig met het tonen van notificaties bijvoorbeeld 10 min. voor een afspraak.
Bijvoorbeeld: Over 10 min. les in Lokaal 233
De notificatie kan ik prima laten zien, maar het lukt mij niet om de notificatie op een bepaald tijdstip te starten.
Ik dacht dat dat gewoon meegegeven moet worden met het aanmaken van een notification maar dat lijkt niet te werken.
Zoals ik al zei, de notificatie wordt wel getoond op het scherm, maar direct bij het opstarten van het programma, en niet op het moment dat de notificatie ingesteld staat.
Hierbij de code die ik geschreven heb:
Bijvoorbeeld: Over 10 min. les in Lokaal 233
De notificatie kan ik prima laten zien, maar het lukt mij niet om de notificatie op een bepaald tijdstip te starten.
Ik dacht dat dat gewoon meegegeven moet worden met het aanmaken van een notification maar dat lijkt niet te werken.
Zoals ik al zei, de notificatie wordt wel getoond op het scherm, maar direct bij het opstarten van het programma, en niet op het moment dat de notificatie ingesteld staat.
Hierbij de code die ik geschreven heb:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| NotificationManager mManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); Intent intent = new Intent(this, SelectAppointment.class); // SyncRooster sync = new SyncRooster(); // sync.createSync(this.getApplicationContext()); //testje om de datum te pakken. java.util.Date date = new java.util.Date(2011, 06, 14, 10, 32, 00); // create notification event //Aangezien date.GetTime de tijd vanaf 1970-01-01 00:00 pakt tel ik die datum/tijd er nog bij op Notification notification = new Notification(R.drawable.icon, "Hello!!!", date.getTime() + new java.util.Date().getTime()); notification.setLatestEventInfo(getApplicationContext(), "Notification", "Woohoo!" + date.getHours() + " " + date.getMinutes() + " " + date.getSeconds(), PendingIntent.getActivity(this.getBaseContext(), 0, intent, PendingIntent.FLAG_CANCEL_CURRENT)); mManager.notify(0, notification); |