From 6f01dd65148d55822030ccc78f33a03b1b1a8f42 Mon Sep 17 00:00:00 2001 From: vanous Date: Thu, 13 Oct 2022 20:51:08 +0200 Subject: [PATCH] Add MY_PACKAGE_REPLACED receiver to manifest, to re-connect after update, especially for users of Nightly releases. Fix #2855 --- app/src/main/AndroidManifest.xml | 2 +- .../gadgetbridge/externalevents/AutoStartReceiver.java | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2c3702355..6f295a40f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -393,8 +393,8 @@ android:permission="android.permission.RECEIVE_BOOT_COMPLETED"> - + diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/AutoStartReceiver.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/AutoStartReceiver.java index f5e916486..f445c23da 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/AutoStartReceiver.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/externalevents/AutoStartReceiver.java @@ -30,8 +30,12 @@ public class AutoStartReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { - if (GBApplication.getGBPrefs().getAutoStart() && Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) { - Log.i(TAG, "Boot completed, starting Gadgetbridge"); + + if (GBApplication.getGBPrefs().getAutoStart() && + (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction()) || + Intent.ACTION_MY_PACKAGE_REPLACED.equals(intent.getAction()) + )) { + Log.i(TAG, "Boot or reinstall completed, starting Gadgetbridge"); if (GBApplication.getPrefs().getBoolean("general_autoconnectonbluetooth", false)) { Log.i(TAG, "Autoconnect is enabled, attempting to connect"); GBApplication.deviceService().connect();