From 654534eb0495a9a73b167a5a4bc1b9be3f7360a2 Mon Sep 17 00:00:00 2001 From: Ronald Schaten Date: Fri, 10 Jun 2011 08:38:18 +0200 Subject: [PATCH] refactored getMidnightInMillis(), set milliseconds to 0 --- .../android/waldemar/WaldemarWidget.java | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/de/schatenseite/android/waldemar/WaldemarWidget.java b/src/de/schatenseite/android/waldemar/WaldemarWidget.java index ab245e8..4ccafbc 100644 --- a/src/de/schatenseite/android/waldemar/WaldemarWidget.java +++ b/src/de/schatenseite/android/waldemar/WaldemarWidget.java @@ -22,21 +22,26 @@ public class WaldemarWidget extends AppWidgetProvider { static AlarmManager myAlarmManager; static PendingIntent myPendingIntent; - @Override - public void onEnabled(Context context) { - Intent intent = new Intent( - WaldemarWidget.MIDNIGHTLY_WIDGET_UPDATE); - PendingIntent pendingIntent = PendingIntent.getBroadcast( - context, 0, intent, 0); - AlarmManager alarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); + static long getMidnightInMillis() { Calendar calendar = new GregorianCalendar(); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MILLISECOND, 0); + return calendar.getTimeInMillis(); + } + + @Override + public void onEnabled(Context context) { + Intent intent = new Intent(WaldemarWidget.MIDNIGHTLY_WIDGET_UPDATE); + PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, + intent, 0); + AlarmManager alarmManager = (AlarmManager) context + .getSystemService(Context.ALARM_SERVICE); + long midnightInMillis = getMidnightInMillis(); + alarmManager.setRepeating(AlarmManager.RTC, midnightInMillis, + AlarmManager.INTERVAL_DAY, pendingIntent); - alarmManager.setRepeating(AlarmManager.RTC, - calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent); - WaldemarWidget.saveAlarmManager(alarmManager, pendingIntent); } @@ -83,11 +88,7 @@ public class WaldemarWidget extends AppWidgetProvider { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); remoteViews.setTextViewText(R.id.name, prefs.getString("pref_name", context.getString(R.string.title))); - Calendar calNow = new GregorianCalendar(); - calNow.set(Calendar.HOUR_OF_DAY, 0); - calNow.set(Calendar.MINUTE, 0); - calNow.set(Calendar.SECOND, 0); - long timeNow = calNow.getTimeInMillis(); + long timeNow = getMidnightInMillis(); Integer mode = Integer.valueOf(prefs.getString("pref_mode", "1"));