From 52a10fe626036ea1cb9c40c2dd46db42f4ccf2b7 Mon Sep 17 00:00:00 2001 From: jens Date: Sun, 8 May 2022 20:04:45 +0200 Subject: [PATCH] bug when importing config while service is not running --- .../java/com/jens/automation2/ActivityMainRules.java | 10 ---------- .../java/com/jens/automation2/AutomationService.java | 9 +++++++-- .../jens/automation2/receivers/DateTimeListener.java | 2 +- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/jens/automation2/ActivityMainRules.java b/app/src/main/java/com/jens/automation2/ActivityMainRules.java index 20b02b7..eba0a96 100644 --- a/app/src/main/java/com/jens/automation2/ActivityMainRules.java +++ b/app/src/main/java/com/jens/automation2/ActivityMainRules.java @@ -252,15 +252,5 @@ public class ActivityMainRules extends ActivityGeneric } catch(NullPointerException e) {} - - try - { - if(AutomationService.isMyServiceRunning(this)) - DateTimeListener.reloadAlarms(); - } - catch(NullPointerException e) - { - // AlarmManager instance not prepared, yet. - } } } \ No newline at end of file diff --git a/app/src/main/java/com/jens/automation2/AutomationService.java b/app/src/main/java/com/jens/automation2/AutomationService.java index b156e0a..5f5111c 100644 --- a/app/src/main/java/com/jens/automation2/AutomationService.java +++ b/app/src/main/java/com/jens/automation2/AutomationService.java @@ -28,6 +28,7 @@ import androidx.core.app.NotificationManagerCompat; import com.jens.automation2.Trigger.Trigger_Enum; import com.jens.automation2.location.LocationProvider; +import com.jens.automation2.receivers.DateTimeListener; import com.jens.automation2.receivers.PackageReplacedReceiver; import com.jens.automation2.receivers.PhoneStatusListener; @@ -57,6 +58,8 @@ public class AutomationService extends Service implements OnInitListener protected Calendar lockSoundChangesEnd = null; protected boolean isRunning; + protected static AutomationService centralInstance = null; + public void nullLockSoundChangesEnd() { lockSoundChangesEnd = null; @@ -94,8 +97,6 @@ public class AutomationService extends Service implements OnInitListener return myLocationProvider; } - protected static AutomationService centralInstance = null; - public static AutomationService getInstance() { return centralInstance; @@ -287,6 +288,8 @@ public class AutomationService extends Service implements OnInitListener myLocationProvider.applySettingsAndRules(); ReceiverCoordinator.applySettingsAndRules(); + + DateTimeListener.reloadAlarms(); } @Override @@ -460,6 +463,8 @@ public class AutomationService extends Service implements OnInitListener ttsEngine.shutdown(); PackageReplacedReceiver.setHasServiceBeenRunning(false, this); + + centralInstance = null; } protected static Builder createDefaultNotificationBuilderOld() diff --git a/app/src/main/java/com/jens/automation2/receivers/DateTimeListener.java b/app/src/main/java/com/jens/automation2/receivers/DateTimeListener.java index 8a70863..2f72a7b 100644 --- a/app/src/main/java/com/jens/automation2/receivers/DateTimeListener.java +++ b/app/src/main/java/com/jens/automation2/receivers/DateTimeListener.java @@ -245,7 +245,7 @@ public class DateTimeListener extends BroadcastReceiver implements AutomationLis alarmPendingIntent = PendingIntent.getBroadcast(automationServiceRef, 0, alarmIntent, PendingIntent.FLAG_UPDATE_CURRENT); centralAlarmManagerInstance.set(AlarmManager.RTC_WAKEUP, scheduleCandidate.time.getTimeInMillis(), alarmPendingIntent); - SimpleDateFormat sdf = new SimpleDateFormat("E dd.MM.yyyy HH:mm"); + SimpleDateFormat sdf = new SimpleDateFormat("E dd.MM.yyyy HH:mm:ss"); Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(scheduleCandidate.time.getTimeInMillis()); Miscellaneous.logEvent("i", "AlarmManager", "Chose " + sdf.format(calendar.getTime()) + " as next scheduled alarm.", 4);