Wdmprojekt
- Forum-Beiträge: 33
05.02.2011, 12:27:10 via Website
05.02.2011 12:27:10 via Website
Hallo,
ich versuche gerade den Alarm in Android zu programmieren, allerdings bekmme ich
als Differenzwert (Alarm Datum - Heutiges Datum) einen sehr hohen negativen Wert.
Als Ergebnis erwarte ich für einen Tag Differenz exakt 86400000; Das Ergebnis ist aber zur Zeit: -63096192000000.
Kann mir das jemand hier im Forum erklären, warum das so ist?
ich versuche gerade den Alarm in Android zu programmieren, allerdings bekmme ich
als Differenzwert (Alarm Datum - Heutiges Datum) einen sehr hohen negativen Wert.
Als Ergebnis erwarte ich für einen Tag Differenz exakt 86400000; Das Ergebnis ist aber zur Zeit: -63096192000000.
Kann mir das jemand hier im Forum erklären, warum das so ist?
1try {
2 // Get datetime event, Quellformat "0000-00-00" und "00:00"
3 String[] possibleterminationdatesplitted = possibleterminationdate.trim().split("-");
4 String[] possibleterminationtimesplitted = possibleterminationtime.trim().split(":");
5
6 // Format datetimes
7 Calendar eventdatetime = new GregorianCalendar(
8Integer.parseInt(possibleterminationdatesplitted[2]),
9Integer.parseInt(possibleterminationdatesplitted[1]),
10Integer.parseInt(possibleterminationdatesplitted[0]),
11Integer.parseInt(possibleterminationtimesplitted[0]),
12Integer.parseInt(possibleterminationtimesplitted[1]));
13
14mCalendar = Calendar.getInstance();
15
16mYear = mCalendar.get(Calendar.YEAR);
17 mMonth = mCalendar.get(Calendar.MONTH);
18 mDay = mCalendar.get(Calendar.DAY_OF_MONTH);
19 mHour = mCalendar.get(Calendar.HOUR_OF_DAY);
20 mMinute = mCalendar.get(Calendar.MINUTE);
21 Calendar now = new GregorianCalendar(mYear, mMonth, mDay, mHour, mMinute);
22
23 // 86400000 milliseconds = 1 day
24 // 30000 milliseconds = 30 seconds
25 long triggerAtTime = (eventdatetime.getTimeInMillis() - now.getTimeInMillis());
26
27 Log.d("TRIGGER DATE TIME", String.valueOf(triggerAtTime));
28
29 // Parameters setRepeating(int type, long triggerAtTime, long interval, PendingIntent operation)
30 alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, triggerAtTime, 10 * 1000, pendingIntent);
31
32 Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show();
33 } catch(NumberFormatException e) {
34 System.out.println("Could not parse " + e);
35 }
2 // Get datetime event, Quellformat "0000-00-00" und "00:00"
3 String[] possibleterminationdatesplitted = possibleterminationdate.trim().split("-");
4 String[] possibleterminationtimesplitted = possibleterminationtime.trim().split(":");
5
6 // Format datetimes
7 Calendar eventdatetime = new GregorianCalendar(
8Integer.parseInt(possibleterminationdatesplitted[2]),
9Integer.parseInt(possibleterminationdatesplitted[1]),
10Integer.parseInt(possibleterminationdatesplitted[0]),
11Integer.parseInt(possibleterminationtimesplitted[0]),
12Integer.parseInt(possibleterminationtimesplitted[1]));
13
14mCalendar = Calendar.getInstance();
15
16mYear = mCalendar.get(Calendar.YEAR);
17 mMonth = mCalendar.get(Calendar.MONTH);
18 mDay = mCalendar.get(Calendar.DAY_OF_MONTH);
19 mHour = mCalendar.get(Calendar.HOUR_OF_DAY);
20 mMinute = mCalendar.get(Calendar.MINUTE);
21 Calendar now = new GregorianCalendar(mYear, mMonth, mDay, mHour, mMinute);
22
23 // 86400000 milliseconds = 1 day
24 // 30000 milliseconds = 30 seconds
25 long triggerAtTime = (eventdatetime.getTimeInMillis() - now.getTimeInMillis());
26
27 Log.d("TRIGGER DATE TIME", String.valueOf(triggerAtTime));
28
29 // Parameters setRepeating(int type, long triggerAtTime, long interval, PendingIntent operation)
30 alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, triggerAtTime, 10 * 1000, pendingIntent);
31
32 Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show();
33 } catch(NumberFormatException e) {
34 System.out.println("Could not parse " + e);
35 }
— geändert am 05.02.2011, 12:34:01
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.