From a0943649bd98d67729619ff1dae7515385595ac9 Mon Sep 17 00:00:00 2001 From: lorddavidiii Date: Sun, 12 May 2024 20:40:05 +0200 Subject: [PATCH] Initial support for Garmin Vivoactive 4 --- .../GarminVivoActive4Coordinator.java | 28 +++++++++++++++++++ .../gadgetbridge/model/DeviceType.java | 2 ++ app/src/main/res/values/strings.xml | 1 + 3 files changed, 31 insertions(+) create mode 100644 app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/vivoactive4/GarminVivoActive4Coordinator.java diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/vivoactive4/GarminVivoActive4Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/vivoactive4/GarminVivoActive4Coordinator.java new file mode 100644 index 000000000..607badc93 --- /dev/null +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/vivoactive4/GarminVivoActive4Coordinator.java @@ -0,0 +1,28 @@ +package nodomain.freeyourgadget.gadgetbridge.devices.garmin.vivoactive4; + +import java.util.regex.Pattern; + +import nodomain.freeyourgadget.gadgetbridge.R; +import nodomain.freeyourgadget.gadgetbridge.devices.garmin.GarminCoordinator; + +public class GarminVivoActive4Coordinator extends GarminCoordinator { + @Override + protected Pattern getSupportedDeviceName() { + return Pattern.compile("vívoactive 4"); + } + + @Override + public int getDeviceNameResource() { + return R.string.devicetype_garmin_vivoactive_4; + } + + @Override + public boolean supportsFlashing() { + return true; + } + + @Override + public boolean supportsAgpsUpdates() { + return true; + } +} diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java index f38f66fc3..f646471bd 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java @@ -58,6 +58,7 @@ import nodomain.freeyourgadget.gadgetbridge.devices.garmin.instinct2solar.Garmin import nodomain.freeyourgadget.gadgetbridge.devices.garmin.instinct2soltac.GarminInstinct2SolTacCoordinator; import nodomain.freeyourgadget.gadgetbridge.devices.garmin.instinctcrossover.GarminInstinctCrossoverCoordinator; import nodomain.freeyourgadget.gadgetbridge.devices.garmin.venu3.GarminVenu3Coordinator; +import nodomain.freeyourgadget.gadgetbridge.devices.garmin.vivoactive4.GarminVivoActive4Coordinator; import nodomain.freeyourgadget.gadgetbridge.devices.garmin.vivoactive4s.GarminVivoActive4SCoordinator; import nodomain.freeyourgadget.gadgetbridge.devices.garmin.vivoactive5.GarminVivoActive5Coordinator; import nodomain.freeyourgadget.gadgetbridge.devices.garmin.vivomove.GarminVivomoveStyleCoordinator; @@ -349,6 +350,7 @@ public enum DeviceType { GARMIN_INSTINCT_CROSSOVER(GarminInstinctCrossoverCoordinator.class), GARMIN_VIVOMOVE_STYLE(GarminVivomoveStyleCoordinator.class), GARMIN_VENU_3(GarminVenu3Coordinator.class), + GARMIN_VIVOACTIVE_4(GarminVivoActive4Coordinator.class), GARMIN_VIVOACTIVE_4S(GarminVivoActive4SCoordinator.class), GARMIN_VIVOACTIVE_5(GarminVivoActive5Coordinator.class), VIBRATISSIMO(VibratissimoCoordinator.class), diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 738dc7390..e6f414e0b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1501,6 +1501,7 @@ Garmin Instinct Crossover Garmin Forerunner 245 Garmin Swim 2 + Garmin Vívoactive 4 Garmin Vívoactive 4S Garmin Vívoactive 5 Vibratissimo