Wie stelle ich einen Alarm so ein, dass er zur festgelegten Zeit ordnungsgemäß ausgelöst wird?
Ich habe diesen Code
Calendar c = new GregorianCalendar();
c.add(Calendar.DAY_OF_YEAR, 1);
c.set(Calendar.HOUR_OF_DAY, 23);
c.set(Calendar.MINUTE, 22);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
// We want the alarm to go off 30 seconds from now.
long firstTime = SystemClock.elapsedRealtime();
firstTime += 30*1000;
long a=c.getTimeInMillis();
// Schedule the alarm!
AlarmManager am = (AlarmManager)ctx.getSystemService(Context.ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,
c.getTimeInMillis(), 1*60*60*1000, sender);
Es wird nicht bei @ ausgefüh 23: 22h
Was mache ich falsch? Ich bemerkte firstTime und c.getTimeInMillis () unterscheidet sich sehr in Größe und Länge. Wenn ich firstTime verwende, also auf 30 Sekunden eingestellt, wird der Alarm gut ausgeführt.