From 1a5acc8f2d103a7731f1731961b0b6b597b5665c Mon Sep 17 00:00:00 2001 From: Dennis Guse Date: Wed, 21 Jun 2023 23:14:38 +0200 Subject: [PATCH] Cleanup using AndroidStudio analyze. --- .../EspressoEditTrackRecordingTest.java | 2 - .../dennisguse/opentracks/EspressoUITest.java | 2 - .../de/dennisguse/opentracks/TestUtil.java | 2 - .../TrackRecordingServiceTestUtils.java | 4 +- .../stats/TrackStatisticsUpdaterTest.java | 20 --------- .../data/models/AtmosphericPressure.java | 2 - .../opentracks/data/models/Cadence.java | 3 -- .../opentracks/data/models/HeartRate.java | 4 -- .../opentracks/data/models/Power.java | 4 -- .../io/file/exporter/KMLTrackExporter.java | 2 +- .../io/file/importer/GpxTrackImporter.java | 4 +- .../io/file/importer/TrackImporter.java | 2 +- .../sensors/BluetoothRemoteSensorManager.java | 45 +++++++++---------- .../opentracks/sensors/BluetoothUtils.java | 2 - .../sensors/ServiceMeasurementUUID.java | 3 -- .../opentracks/services/RecordingStatus.java | 3 -- .../AggregatedStatistics.java | 3 +- .../customRecordingLayout/CsvLayoutUtils.java | 1 - .../opentracks/util/EGM2008Utils.java | 2 +- .../dennisguse/opentracks/util/FileUtils.java | 2 +- .../opentracks/util/StringUtils.java | 2 +- ...c_help_black_24dp.xml => ic_help_24dp.xml} | 3 +- src/main/res/layout/help.xml | 2 +- src/main/res/menu/track_list.xml | 2 +- 24 files changed, 34 insertions(+), 87 deletions(-) rename src/main/res/drawable/{ic_help_black_24dp.xml => ic_help_24dp.xml} (87%) diff --git a/src/androidTest/java/de/dennisguse/opentracks/EspressoEditTrackRecordingTest.java b/src/androidTest/java/de/dennisguse/opentracks/EspressoEditTrackRecordingTest.java index ef18249b5..f8b3dcaf8 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/EspressoEditTrackRecordingTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/EspressoEditTrackRecordingTest.java @@ -15,8 +15,6 @@ import static androidx.test.espresso.matcher.ViewMatchers.withText; import static org.hamcrest.Matchers.allOf; import static de.dennisguse.opentracks.util.EspressoUtils.waitFor; -import android.Manifest; - import androidx.test.espresso.ViewInteraction; import androidx.test.ext.junit.rules.ActivityScenarioRule; import androidx.test.ext.junit.runners.AndroidJUnit4; diff --git a/src/androidTest/java/de/dennisguse/opentracks/EspressoUITest.java b/src/androidTest/java/de/dennisguse/opentracks/EspressoUITest.java index 8a684b23e..a81cbecc5 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/EspressoUITest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/EspressoUITest.java @@ -13,8 +13,6 @@ import static org.hamcrest.Matchers.anything; import static de.dennisguse.opentracks.util.EspressoUtils.selectTabAtIndex; import static de.dennisguse.opentracks.util.EspressoUtils.waitFor; -import android.Manifest; - import androidx.test.espresso.ViewInteraction; import androidx.test.ext.junit.rules.ActivityScenarioRule; import androidx.test.ext.junit.runners.AndroidJUnit4; diff --git a/src/androidTest/java/de/dennisguse/opentracks/TestUtil.java b/src/androidTest/java/de/dennisguse/opentracks/TestUtil.java index d2bf9bdfc..947c6084a 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/TestUtil.java +++ b/src/androidTest/java/de/dennisguse/opentracks/TestUtil.java @@ -5,8 +5,6 @@ import android.os.Build; import androidx.test.rule.GrantPermissionRule; -import de.dennisguse.opentracks.test.BuildConfig; - public class TestUtil { public static GrantPermissionRule createGrantPermissionRule() { diff --git a/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTestUtils.java b/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTestUtils.java index 07441fd9d..996d08763 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTestUtils.java +++ b/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTestUtils.java @@ -5,8 +5,6 @@ import android.location.Location; import androidx.test.rule.ServiceTestRule; -import java.util.concurrent.TimeoutException; - import de.dennisguse.opentracks.services.handlers.TrackPointCreator; import de.dennisguse.opentracks.settings.PreferencesUtils; @@ -16,7 +14,7 @@ public class TrackRecordingServiceTestUtils { //TODO Workaround as service is not stopped on API23; thus sharedpreferences are not reset between tests. //TODO Anyhow, the service should re-create all it's resources if a recording starts and makes sure that there is no leftovers from previous recordings. @Deprecated - public static void resetService(ServiceTestRule mServiceRule, Context context) throws TimeoutException { + public static void resetService(ServiceTestRule mServiceRule, Context context) { // Let's use default values. PreferencesUtils.clear(); } diff --git a/src/androidTest/java/de/dennisguse/opentracks/stats/TrackStatisticsUpdaterTest.java b/src/androidTest/java/de/dennisguse/opentracks/stats/TrackStatisticsUpdaterTest.java index 0264356e9..84a65c55a 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/stats/TrackStatisticsUpdaterTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/stats/TrackStatisticsUpdaterTest.java @@ -5,7 +5,6 @@ import static org.junit.Assert.assertNull; import androidx.test.ext.junit.runners.AndroidJUnit4; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; @@ -226,25 +225,6 @@ public class TrackStatisticsUpdaterTest { assertEquals(59.18, subject.getTrackStatistics().getTotalDistance().toM(), 0.01); } - @Ignore("TODO: create a concept ont to compute speed from GPS and sensor") - @Test - public void addTrackPoint_speed_from_GPS_not_moving() { - } - - @Ignore("TODO: create a concept ont to compute speed from GPS and sensor") - @Test - public void addTrackPoint_speed_from_GPS_moving() { - } - - @Ignore("TODO: create a concept ont to compute speed from GPS and sensor") - @Test - public void addTrackPoint_speed_from_GPS_not_moving_and_sensor_speed() { - } - - @Ignore("TODO: create a concept ont to compute speed from GPS and sensor") - @Test - public void addTrackPoint_speed_from_GPS_moving_and_sensor_speed() { - } @Test public void addTrackPoint_maxSpeed_ignore_above_acceleration() { diff --git a/src/main/java/de/dennisguse/opentracks/data/models/AtmosphericPressure.java b/src/main/java/de/dennisguse/opentracks/data/models/AtmosphericPressure.java index c35018945..4a6279456 100644 --- a/src/main/java/de/dennisguse/opentracks/data/models/AtmosphericPressure.java +++ b/src/main/java/de/dennisguse/opentracks/data/models/AtmosphericPressure.java @@ -1,7 +1,5 @@ package de.dennisguse.opentracks.data.models; -import java.util.Objects; - public record AtmosphericPressure(float value) { public static AtmosphericPressure ofPA(float value_Pa) { diff --git a/src/main/java/de/dennisguse/opentracks/data/models/Cadence.java b/src/main/java/de/dennisguse/opentracks/data/models/Cadence.java index c649ae6b2..553ce2ede 100644 --- a/src/main/java/de/dennisguse/opentracks/data/models/Cadence.java +++ b/src/main/java/de/dennisguse/opentracks/data/models/Cadence.java @@ -1,9 +1,6 @@ package de.dennisguse.opentracks.data.models; -import androidx.annotation.NonNull; - import java.time.Duration; -import java.util.Objects; public record Cadence(float value_rpm) { diff --git a/src/main/java/de/dennisguse/opentracks/data/models/HeartRate.java b/src/main/java/de/dennisguse/opentracks/data/models/HeartRate.java index 58a9d87d8..622eda7c1 100644 --- a/src/main/java/de/dennisguse/opentracks/data/models/HeartRate.java +++ b/src/main/java/de/dennisguse/opentracks/data/models/HeartRate.java @@ -1,9 +1,5 @@ package de.dennisguse.opentracks.data.models; -import androidx.annotation.NonNull; - -import java.util.Objects; - public record HeartRate(float value) { public static HeartRate of(float value) { diff --git a/src/main/java/de/dennisguse/opentracks/data/models/Power.java b/src/main/java/de/dennisguse/opentracks/data/models/Power.java index f1b5f1842..57090b1ba 100644 --- a/src/main/java/de/dennisguse/opentracks/data/models/Power.java +++ b/src/main/java/de/dennisguse/opentracks/data/models/Power.java @@ -1,9 +1,5 @@ package de.dennisguse.opentracks.data.models; -import androidx.annotation.NonNull; - -import java.util.Objects; - public record Power(float value) { public static Power of(float value) { diff --git a/src/main/java/de/dennisguse/opentracks/io/file/exporter/KMLTrackExporter.java b/src/main/java/de/dennisguse/opentracks/io/file/exporter/KMLTrackExporter.java index 0380508a6..dc3938672 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/exporter/KMLTrackExporter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/exporter/KMLTrackExporter.java @@ -45,7 +45,7 @@ import de.dennisguse.opentracks.util.StringUtils; /** * Convert {@link Track} incl. {@link Marker} and {@link TrackPoint} to KML version 2.3. - * https://docs.opengeospatial.org/is/12-007r2/12-007r2.html + * ... * * @author Sandor Dornbush * @author Rodrigo Damazio diff --git a/src/main/java/de/dennisguse/opentracks/io/file/importer/GpxTrackImporter.java b/src/main/java/de/dennisguse/opentracks/io/file/importer/GpxTrackImporter.java index 71a190dad..7d7cc5cd3 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/importer/GpxTrackImporter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/importer/GpxTrackImporter.java @@ -41,8 +41,8 @@ import de.dennisguse.opentracks.util.StringUtils; /** * Imports a GPX file. * Uses: - * * https://www8.garmin.com/xmlschemas/TrackPointExtensionv2.xsd - * * https://www8.garmin.com/xmlschemas/PowerExtensionv1.xsd + * * ... + * * ... *

* {@link de.dennisguse.opentracks.io.file.exporter.GPXTrackExporter} does not export information if a segment was started automatic or manually. * Therefore, all segments starts are marked as SEGMENT_START_AUTOMATIC. diff --git a/src/main/java/de/dennisguse/opentracks/io/file/importer/TrackImporter.java b/src/main/java/de/dennisguse/opentracks/io/file/importer/TrackImporter.java index 39a575c2b..cee18aae6 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/importer/TrackImporter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/importer/TrackImporter.java @@ -135,7 +135,7 @@ public class TrackImporter { track.setUuid(UUID.randomUUID()); } - Collections.sort(trackPoints, (o1, o2) -> { + trackPoints.sort((o1, o2) -> { if (o1.getTime().isBefore(o2.getTime())) { return -1; } diff --git a/src/main/java/de/dennisguse/opentracks/sensors/BluetoothRemoteSensorManager.java b/src/main/java/de/dennisguse/opentracks/sensors/BluetoothRemoteSensorManager.java index 53036f066..40e5ab847 100644 --- a/src/main/java/de/dennisguse/opentracks/sensors/BluetoothRemoteSensorManager.java +++ b/src/main/java/de/dennisguse/opentracks/sensors/BluetoothRemoteSensorManager.java @@ -65,39 +65,36 @@ public class BluetoothRemoteSensorManager implements SensorConnector, AbstractBl private final BluetoothConnectionManagerCyclingPower cyclingPower = new BluetoothConnectionManagerCyclingPower(this); private final BluetoothConnectionRunningSpeedAndCadence runningSpeedAndCadence = new BluetoothConnectionRunningSpeedAndCadence(this); - private final SharedPreferences.OnSharedPreferenceChangeListener sharedPreferenceChangeListener = new SharedPreferences.OnSharedPreferenceChangeListener() { - @Override - public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { - if (!started) return; + private final SharedPreferences.OnSharedPreferenceChangeListener sharedPreferenceChangeListener = (sharedPreferences, key) -> { + if (!started) return; - if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_heart_rate_key, key)) { - String address = PreferencesUtils.getBluetoothHeartRateSensorAddress(); - connect(heartRate, address); - } + if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_heart_rate_key, key)) { + String address = PreferencesUtils.getBluetoothHeartRateSensorAddress(); + connect(heartRate, address); + } - if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_cycling_cadence_key, key)) { - String address = PreferencesUtils.getBluetoothCyclingCadenceSensorAddress(); - connect(cyclingCadence, address); - } + if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_cycling_cadence_key, key)) { + String address = PreferencesUtils.getBluetoothCyclingCadenceSensorAddress(); + connect(cyclingCadence, address); + } - if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_cycling_speed_key, key)) { - String address = PreferencesUtils.getBluetoothCyclingSpeedSensorAddress(); + if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_cycling_speed_key, key)) { + String address = PreferencesUtils.getBluetoothCyclingSpeedSensorAddress(); - connect(cyclingSpeed, address); - } + connect(cyclingSpeed, address); + } - if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_cycling_power_key, key)) { - String address = PreferencesUtils.getBluetoothCyclingPowerSensorAddress(); + if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_cycling_power_key, key)) { + String address = PreferencesUtils.getBluetoothCyclingPowerSensorAddress(); - connect(cyclingPower, address); - } + connect(cyclingPower, address); + } - if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_running_speed_and_cadence_key, key)) { - String address = PreferencesUtils.getBluetoothRunningSpeedAndCadenceAddress(); + if (PreferencesUtils.isKey(R.string.settings_sensor_bluetooth_running_speed_and_cadence_key, key)) { + String address = PreferencesUtils.getBluetoothRunningSpeedAndCadenceAddress(); - connect(runningSpeedAndCadence, address); - } + connect(runningSpeedAndCadence, address); } }; diff --git a/src/main/java/de/dennisguse/opentracks/sensors/BluetoothUtils.java b/src/main/java/de/dennisguse/opentracks/sensors/BluetoothUtils.java index 16d394710..48e0bb296 100644 --- a/src/main/java/de/dennisguse/opentracks/sensors/BluetoothUtils.java +++ b/src/main/java/de/dennisguse/opentracks/sensors/BluetoothUtils.java @@ -23,8 +23,6 @@ import android.util.Log; import androidx.annotation.NonNull; -import java.util.Arrays; -import java.util.Collections; import java.util.List; import java.util.UUID; diff --git a/src/main/java/de/dennisguse/opentracks/sensors/ServiceMeasurementUUID.java b/src/main/java/de/dennisguse/opentracks/sensors/ServiceMeasurementUUID.java index 60c1bca94..c9f172710 100644 --- a/src/main/java/de/dennisguse/opentracks/sensors/ServiceMeasurementUUID.java +++ b/src/main/java/de/dennisguse/opentracks/sensors/ServiceMeasurementUUID.java @@ -1,8 +1,5 @@ package de.dennisguse.opentracks.sensors; -import androidx.annotation.NonNull; - -import java.util.Objects; import java.util.UUID; public record ServiceMeasurementUUID(UUID serviceUUID, UUID measurementUUID) { diff --git a/src/main/java/de/dennisguse/opentracks/services/RecordingStatus.java b/src/main/java/de/dennisguse/opentracks/services/RecordingStatus.java index 060f8eea1..10b0d728a 100644 --- a/src/main/java/de/dennisguse/opentracks/services/RecordingStatus.java +++ b/src/main/java/de/dennisguse/opentracks/services/RecordingStatus.java @@ -1,9 +1,6 @@ package de.dennisguse.opentracks.services; import androidx.annotation.NonNull; -import androidx.annotation.VisibleForTesting; - -import java.util.Objects; import de.dennisguse.opentracks.data.models.Track; diff --git a/src/main/java/de/dennisguse/opentracks/ui/aggregatedStatistics/AggregatedStatistics.java b/src/main/java/de/dennisguse/opentracks/ui/aggregatedStatistics/AggregatedStatistics.java index 2878def59..897dc382e 100644 --- a/src/main/java/de/dennisguse/opentracks/ui/aggregatedStatistics/AggregatedStatistics.java +++ b/src/main/java/de/dennisguse/opentracks/ui/aggregatedStatistics/AggregatedStatistics.java @@ -4,7 +4,6 @@ import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import java.util.ArrayList; -import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -24,7 +23,7 @@ public class AggregatedStatistics { } dataList.addAll(dataMap.values()); - Collections.sort(dataList, (o1, o2) -> { + dataList.sort((o1, o2) -> { if (o1.getCountTracks() == o2.getCountTracks()) { return o1.getActivityType().compareTo(o2.getActivityType()); } diff --git a/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/CsvLayoutUtils.java b/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/CsvLayoutUtils.java index 68aec15ce..a47fb15dc 100644 --- a/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/CsvLayoutUtils.java +++ b/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/CsvLayoutUtils.java @@ -35,7 +35,6 @@ public final class CsvLayoutUtils { /** * @param csvField Layout's field in a CSV format. - * @return List of field parts or null if it's malformed. */ @Nullable public static String[] getCsvFieldParts(@Nullable String csvField) { diff --git a/src/main/java/de/dennisguse/opentracks/util/EGM2008Utils.java b/src/main/java/de/dennisguse/opentracks/util/EGM2008Utils.java index 4c72e70cd..00a337ed3 100644 --- a/src/main/java/de/dennisguse/opentracks/util/EGM2008Utils.java +++ b/src/main/java/de/dennisguse/opentracks/util/EGM2008Utils.java @@ -16,7 +16,7 @@ import de.dennisguse.opentracks.data.models.Altitude; * Converts WGS84 altitude to EGM2008 (should be close to height above sea level). *

* Uses GeographicLib] EGM2008 5minute undulation data. - * https://geographiclib.sourceforge.io/html/geoid.html + * ... *

* File starts at 90N, 0E (North pole) and is encoded in parallel bands as unsigned shorts. */ diff --git a/src/main/java/de/dennisguse/opentracks/util/FileUtils.java b/src/main/java/de/dennisguse/opentracks/util/FileUtils.java index 708c72092..f8751a14c 100644 --- a/src/main/java/de/dennisguse/opentracks/util/FileUtils.java +++ b/src/main/java/de/dennisguse/opentracks/util/FileUtils.java @@ -47,7 +47,7 @@ public class FileUtils { /** * The maximum FAT32 path length. See the FAT32 spec at - * http://msdn.microsoft.com/en-us/windows/hardware/gg463080 + * ... */ static final int MAX_FAT32_PATH_LENGTH = 260; diff --git a/src/main/java/de/dennisguse/opentracks/util/StringUtils.java b/src/main/java/de/dennisguse/opentracks/util/StringUtils.java index 5c5e0e33f..e9d974406 100644 --- a/src/main/java/de/dennisguse/opentracks/util/StringUtils.java +++ b/src/main/java/de/dennisguse/opentracks/util/StringUtils.java @@ -232,7 +232,7 @@ public class StringUtils { } /** - * Gets the time, in milliseconds, from an XML date time string (ISO8601) as defined at http://www.w3.org/TR/xmlschema-2/#dateTime + * Gets the time, in milliseconds, from an XML date time string (ISO8601) as defined at ... * Let's be lenient: if timezone information is not provided, UTC will be used. * * @param xmlDateTime the XML date time string diff --git a/src/main/res/drawable/ic_help_black_24dp.xml b/src/main/res/drawable/ic_help_24dp.xml similarity index 87% rename from src/main/res/drawable/ic_help_black_24dp.xml rename to src/main/res/drawable/ic_help_24dp.xml index 47c3ac2ea..e01cb9d46 100644 --- a/src/main/res/drawable/ic_help_black_24dp.xml +++ b/src/main/res/drawable/ic_help_24dp.xml @@ -2,7 +2,8 @@ android:width="24dp" android:height="24dp" android:viewportWidth="24" - android:viewportHeight="24"> + android:viewportHeight="24" + android:tint="?attr/colorControlNormal"> diff --git a/src/main/res/layout/help.xml b/src/main/res/layout/help.xml index a726ceb5f..65f6183f7 100644 --- a/src/main/res/layout/help.xml +++ b/src/main/res/layout/help.xml @@ -12,7 +12,7 @@ diff --git a/src/main/res/menu/track_list.xml b/src/main/res/menu/track_list.xml index f37c14293..2cdf3a53d 100644 --- a/src/main/res/menu/track_list.xml +++ b/src/main/res/menu/track_list.xml @@ -32,7 +32,7 @@ limitations under the License. android:title="@string/menu_settings" /> \ No newline at end of file