diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index f15ef907..bfcd0c5f 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -102,6 +102,13 @@
+
+
+
+
+
+
diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GB.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GB.java
index 8d83a4fd..6ee4387b 100644
--- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GB.java
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GB.java
@@ -16,6 +16,7 @@ import nodomain.freeyourgadget.gadgetbridge.externalevents.MusicPlaybackReceiver
import nodomain.freeyourgadget.gadgetbridge.externalevents.PebbleReceiver;
import nodomain.freeyourgadget.gadgetbridge.externalevents.PhoneCallReceiver;
import nodomain.freeyourgadget.gadgetbridge.externalevents.SMSReceiver;
+import nodomain.freeyourgadget.gadgetbridge.externalevents.TimeChangeReceiver;
public class GB {
public static final int NOTIFICATION_ID = 1;
@@ -54,6 +55,7 @@ public class GB {
K9Receiver.class,
PebbleReceiver.class,
MusicPlaybackReceiver.class,
+ TimeChangeReceiver.class,
//NotificationListener.class, // disabling this leads to loss of permission to read notifications
};
diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/TimeChangeReceiver.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/TimeChangeReceiver.java
new file mode 100644
index 00000000..197e3286
--- /dev/null
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/TimeChangeReceiver.java
@@ -0,0 +1,26 @@
+package nodomain.freeyourgadget.gadgetbridge.externalevents;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.util.Log;
+
+import nodomain.freeyourgadget.gadgetbridge.BluetoothCommunicationService;
+
+
+public class TimeChangeReceiver extends BroadcastReceiver {
+
+ private final String TAG = this.getClass().getSimpleName();
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ final String action = intent.getAction();
+
+ if (action.equals(Intent.ACTION_TIME_CHANGED) || action.equals(Intent.ACTION_TIMEZONE_CHANGED)) {
+ Log.i(TAG, "Time or Timezone changed, syncing with device");
+ Intent startIntent = new Intent(context, BluetoothCommunicationService.class);
+ startIntent.setAction(BluetoothCommunicationService.ACTION_SETTIME);
+ context.startService(startIntent);
+ }
+ }
+}
\ No newline at end of file