652 Commits

Author SHA1 Message Date
Christian Rowlands
148b609e37 fix: Sets the correct color for the SouthPAN Legend diamond and dashes (#681)
Adds the diamond and dashes to the list of shapes and lines so that the colors get updated appropriately when dark mode is turned on
2025-09-06 12:36:43 -04:00
Florian Stosse
25902ed60f build: fix linting (#728)
* Update android.yml

* Update android.yml

* Update AndroidManifest.xml

* Update android.yml

* Update AndroidManifest.xml

* Separate steps

* Avoid linting

* List packages

* Build debug

* Add stacktrace

* Upload artifacts

* Checkout

* Wait for build

* Fix ADB path

* Fix paths

* Update targets

* Test and check

* Fix path

* Improve pipeline

* Fix CI

* Fix action

* Upload on failure

* Removel inting

* Fix lint report path

* Fix path

* Print paths content

* Add params

* Fix path

* Remove lint

* Check

* Test only

* Format

* Re add linting

* Remove format

* Fix paths

* Uneeded

* Disable telemetry

* Fix library use

* Revert lib change

* Use Gradle to deploy

* Run instrumentation tests after install

* Save artifacts directories

* Run instrumented tests on main app only

* Manual SDK install

* connectedCheck

* Use runner action

* No manual install

* Temporary comment

* No artifact download

* Add Checkstyle

* Pin actions and remove comments

* Needs build

* Add Dependabot

* Harden runners

* Add checkstyle configuration

* Consistency

* actions-update: Bump actions/checkout in the actions-dependencies group

Bumps the actions-dependencies group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 2 to 4
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* Hardening in block mode

* build(deps): Bump the gradle group across 1 directory with 3 updates

Bumps the gradle group with 3 updates in the / directory: commons-io:commons-io, [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) and [com.fasterxml.jackson.core:jackson-databind](https://github.com/FasterXML/jackson).


Updates `commons-io:commons-io` from 2.8.0 to 2.14.0

Updates `com.fasterxml.jackson.core:jackson-core` from 2.14.2 to 2.15.0
- [Changelog](https://github.com/FasterXML/jackson-core/blob/jackson-core-2.15.0/release.properties)
- [Commits](https://github.com/FasterXML/jackson-core/compare/jackson-core-2.14.2...jackson-core-2.15.0)

Updates `com.fasterxml.jackson.core:jackson-databind` from 2.12.4 to 2.12.7.1
- [Commits](https://github.com/FasterXML/jackson/commits)

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-version: 2.14.0
  dependency-type: direct:production
  dependency-group: gradle
- dependency-name: com.fasterxml.jackson.core:jackson-core
  dependency-version: 2.15.0
  dependency-type: direct:production
  dependency-group: gradle
- dependency-name: com.fasterxml.jackson.core:jackson-databind
  dependency-version: 2.12.7.1
  dependency-type: direct:production
  dependency-group: gradle
...

Signed-off-by: dependabot[bot] <support@github.com>

* Gradle 8.14

* Fix egress

* Fix egress

* Audit

* Revert

* Run checkstyle

* Add task

* Remove checkstyle

* Remove checkstyle

* Fix name

* Add name

* Correct reports path

* Print paths

* Print

* Upload build logs

* Remove logs upload

* Misc

* Cache readonly (#4)

* Implement read only cache

* Build OsmDroid

* Parallelize jobs (#6)

* actions-update: Bump step-security/harden-runner (#5)

Bumps the actions-dependencies group with 1 update: [step-security/harden-runner](https://github.com/step-security/harden-runner).


Updates `step-security/harden-runner` from 2.12.2 to 2.13.0
- [Release notes](https://github.com/step-security/harden-runner/releases)
- [Commits](6c439dc8bd...ec9f2d5744)

---
updated-dependencies:
- dependency-name: step-security/harden-runner
  dependency-version: 2.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Upgrade to Gradle 8.13

* Upgrade Kotlin version

* Add buildConfig

* Optimize imports

* Dependabot: only upgrade at patch version level

* Revert Gradle update action

* Dependabot: add Gradle support for patch versions

* gradle-update: bump org.osmdroid:osmdroid-android (#7)

Bumps the actions-dependencies group with 1 update: [org.osmdroid:osmdroid-android](https://github.com/osmdroid/osmdroid).


Updates `org.osmdroid:osmdroid-android` from 6.1.11 to 6.1.20
- [Release notes](https://github.com/osmdroid/osmdroid/releases)
- [Changelog](https://github.com/osmdroid/osmdroid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/osmdroid/osmdroid/compare/osmdroid-parent-6.1.11...osmdroid-parent-6.1.20)

---
updated-dependencies:
- dependency-name: org.osmdroid:osmdroid-android
  dependency-version: 6.1.20
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* gradle-update: bump com.fasterxml.jackson.core:jackson-databind (#8)

Bumps [com.fasterxml.jackson.core:jackson-databind](https://github.com/FasterXML/jackson) from 2.12.4 to 2.19.2.
- [Commits](https://github.com/FasterXML/jackson/commits)

---
updated-dependencies:
- dependency-name: com.fasterxml.jackson.core:jackson-databind
  dependency-version: 2.19.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix typo in Dependabot conf

* Bump SDK version

* Upgrade SDK version

* Revert targetSdk

* Bump SDK

* Fix type

* Fix build

* Security updates for Gradle

* Ignore major and minor updates

* Lint

* Lint: ignore string format

* Lint: ignore string format for library

* Lint: disable translation checks

* Migrate activity!!

* Migrate context!!

* Add SARIF report generation and upload

* Lint: do not check dependencies

* Fix path again

* Lint: re-enable for all tasks

* Add gitignore

* Bump targetSdk

* Remove Dependabot Gradle config

* Remove crashpad handler fix

* Bump SARIF action to latest version

* Revert SDK upgrade

* Revert SDK upgrade related fixes

* Revert non-lint fixes

* Revert sensor fix

* Restore gitignore

* Delete build/reports/problems/problems-report.html

* Fix pipeline run

* Add required fixes from linting pass

* Fix conflict

* Revert targetSdk upgrade and ignore ExpiredTargetSdkVersion for linting

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-27 09:58:10 -04:00
Florian Stosse
8a700e987e fix: Fix XML closing element (#731) 2025-07-25 14:03:45 -04:00
Florian Stosse
91378d5f79 chore: Upgrade Gradle, Kotlin and optimize imports (#726)
* Update android.yml

* Update android.yml

* Update AndroidManifest.xml

* Update android.yml

* Update AndroidManifest.xml

* Separate steps

* Avoid linting

* List packages

* Build debug

* Add stacktrace

* Upload artifacts

* Checkout

* Wait for build

* Fix ADB path

* Fix paths

* Update targets

* Test and check

* Fix path

* Improve pipeline

* Fix CI

* Fix action

* Upload on failure

* Removel inting

* Fix lint report path

* Fix path

* Print paths content

* Add params

* Fix path

* Remove lint

* Check

* Test only

* Format

* Re add linting

* Remove format

* Fix paths

* Uneeded

* Disable telemetry

* Fix library use

* Revert lib change

* Use Gradle to deploy

* Run instrumentation tests after install

* Save artifacts directories

* Run instrumented tests on main app only

* Manual SDK install

* connectedCheck

* Use runner action

* No manual install

* Temporary comment

* No artifact download

* Add Checkstyle

* Pin actions and remove comments

* Needs build

* Add Dependabot

* Harden runners

* Add checkstyle configuration

* Consistency

* actions-update: Bump actions/checkout in the actions-dependencies group

Bumps the actions-dependencies group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 2 to 4
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* Hardening in block mode

* build(deps): Bump the gradle group across 1 directory with 3 updates

Bumps the gradle group with 3 updates in the / directory: commons-io:commons-io, [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) and [com.fasterxml.jackson.core:jackson-databind](https://github.com/FasterXML/jackson).


Updates `commons-io:commons-io` from 2.8.0 to 2.14.0

Updates `com.fasterxml.jackson.core:jackson-core` from 2.14.2 to 2.15.0
- [Changelog](https://github.com/FasterXML/jackson-core/blob/jackson-core-2.15.0/release.properties)
- [Commits](https://github.com/FasterXML/jackson-core/compare/jackson-core-2.14.2...jackson-core-2.15.0)

Updates `com.fasterxml.jackson.core:jackson-databind` from 2.12.4 to 2.12.7.1
- [Commits](https://github.com/FasterXML/jackson/commits)

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-version: 2.14.0
  dependency-type: direct:production
  dependency-group: gradle
- dependency-name: com.fasterxml.jackson.core:jackson-core
  dependency-version: 2.15.0
  dependency-type: direct:production
  dependency-group: gradle
- dependency-name: com.fasterxml.jackson.core:jackson-databind
  dependency-version: 2.12.7.1
  dependency-type: direct:production
  dependency-group: gradle
...

Signed-off-by: dependabot[bot] <support@github.com>

* Gradle 8.14

* Fix egress

* Fix egress

* Audit

* Revert

* Run checkstyle

* Add task

* Remove checkstyle

* Remove checkstyle

* Fix name

* Add name

* Correct reports path

* Print paths

* Print

* Upload build logs

* Remove logs upload

* Misc

* Cache readonly (#4)

* Implement read only cache

* Build OsmDroid

* Parallelize jobs (#6)

* actions-update: Bump step-security/harden-runner (#5)

Bumps the actions-dependencies group with 1 update: [step-security/harden-runner](https://github.com/step-security/harden-runner).


Updates `step-security/harden-runner` from 2.12.2 to 2.13.0
- [Release notes](https://github.com/step-security/harden-runner/releases)
- [Commits](6c439dc8bd...ec9f2d5744)

---
updated-dependencies:
- dependency-name: step-security/harden-runner
  dependency-version: 2.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Upgrade to Gradle 8.13

* Upgrade Kotlin version

* Add buildConfig

* Optimize imports

* Dependabot: only upgrade at patch version level

* Revert Gradle update action

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-20 12:56:11 -04:00
Florian Stosse
5d4a0f9a60 ci: Fix CI pipeline (#725)
* Update android.yml

* Update android.yml

* Update AndroidManifest.xml

* Update android.yml

* Update AndroidManifest.xml

* Separate steps

* Avoid linting

* List packages

* Build debug

* Add stacktrace

* Upload artifacts

* Checkout

* Wait for build

* Fix ADB path

* Fix paths

* Update targets

* Test and check

* Fix path

* Improve pipeline

* Fix CI

* Fix action

* Upload on failure

* Removel inting

* Fix lint report path

* Fix path

* Print paths content

* Add params

* Fix path

* Remove lint

* Check

* Test only

* Format

* Re add linting

* Remove format

* Fix paths

* Uneeded

* Disable telemetry

* Fix library use

* Revert lib change

* Use Gradle to deploy

* Run instrumentation tests after install

* Save artifacts directories

* Run instrumented tests on main app only

* Manual SDK install

* connectedCheck

* Use runner action

* No manual install

* Temporary comment

* No artifact download

* Add Checkstyle

* Pin actions and remove comments

* Needs build

* Add Dependabot

* Harden runners

* Add checkstyle configuration

* Consistency

* actions-update: Bump actions/checkout in the actions-dependencies group

Bumps the actions-dependencies group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 2 to 4
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* Hardening in block mode

* build(deps): Bump the gradle group across 1 directory with 3 updates

Bumps the gradle group with 3 updates in the / directory: commons-io:commons-io, [com.fasterxml.jackson.core:jackson-core](https://github.com/FasterXML/jackson-core) and [com.fasterxml.jackson.core:jackson-databind](https://github.com/FasterXML/jackson).


Updates `commons-io:commons-io` from 2.8.0 to 2.14.0

Updates `com.fasterxml.jackson.core:jackson-core` from 2.14.2 to 2.15.0
- [Changelog](https://github.com/FasterXML/jackson-core/blob/jackson-core-2.15.0/release.properties)
- [Commits](https://github.com/FasterXML/jackson-core/compare/jackson-core-2.14.2...jackson-core-2.15.0)

Updates `com.fasterxml.jackson.core:jackson-databind` from 2.12.4 to 2.12.7.1
- [Commits](https://github.com/FasterXML/jackson/commits)

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-version: 2.14.0
  dependency-type: direct:production
  dependency-group: gradle
- dependency-name: com.fasterxml.jackson.core:jackson-core
  dependency-version: 2.15.0
  dependency-type: direct:production
  dependency-group: gradle
- dependency-name: com.fasterxml.jackson.core:jackson-databind
  dependency-version: 2.12.7.1
  dependency-type: direct:production
  dependency-group: gradle
...

Signed-off-by: dependabot[bot] <support@github.com>

* Gradle 8.14

* Fix egress

* Fix egress

* Audit

* Revert

* Run checkstyle

* Add task

* Remove checkstyle

* Remove checkstyle

* Fix name

* Add name

* Correct reports path

* Print paths

* Print

* Upload build logs

* Remove logs upload

* Misc

* Cache readonly (#4)

* Implement read only cache

* Build OsmDroid

* Parallelize jobs (#6)

* actions-update: Bump step-security/harden-runner (#5)

Bumps the actions-dependencies group with 1 update: [step-security/harden-runner](https://github.com/step-security/harden-runner).


Updates `step-security/harden-runner` from 2.12.2 to 2.13.0
- [Release notes](https://github.com/step-security/harden-runner/releases)
- [Commits](6c439dc8bd...ec9f2d5744)

---
updated-dependencies:
- dependency-name: step-security/harden-runner
  dependency-version: 2.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-17 14:53:53 -04:00
Sean Barbeau
8f07afeb83 chore: Bump version for release 2024-12-28 17:58:52 -05:00
Sean Barbeau
2196e66428 fix: Update to targetSdkVersion 34
Fixes https://github.com/barbeau/gpstest/issues/694
2024-12-28 17:57:28 -05:00
Sean Barbeau
b7b3fbc66e chore: Bump version for release 2024-12-28 16:50:42 -05:00
Sean Barbeau
4292ea40da feat: Implementation runtime permissions for notification (#705)
Fixes https://github.com/barbeau/gpstest/issues/694 and fixes https://github.com/barbeau/gpstest/issues/622
2024-12-28 16:33:42 -05:00
barbeau
a057fe448f fix: Fix Status log signal count and signal index values
Fixes https://github.com/barbeau/gpstest/issues/696
2024-12-10 13:44:51 -05:00
barbeau
aa8a6ff4fe chore: Update Gradle and wrapper versions 2024-12-10 13:35:59 -05:00
Narugakuruga
221e46cb30 Add support for BDS B2b and IRNSS L1. And update signal detection to match the actual BDS (#657)
* Update full_description.txt

* Update CarrierFreqUtilsTest.kt

* Update CarrierFreqUtils.java
2023-10-27 11:28:48 -04:00
Sean Barbeau
680b5fde9d chore: Bump version for release 2023-08-15 11:02:08 -04:00
barbeau
fd26076608 fix: Only inject assist data once per logging session
Fixes #648
2023-08-11 10:45:17 -04:00
barbeau
822888dcfe fix: Write sensor data using Dispatchers.IO
Related to #648
2023-08-09 09:19:39 -04:00
barbeau
4c3d3865fe chore: Bump version for release 2023-04-27 15:15:08 -04:00
barbeau
74645d72dd chore: Remove unneeded Application references 2023-04-24 09:51:52 -04:00
barbeau
3dd022876b chore: Bump version for release 2023-04-21 13:06:11 -04:00
barbeau
23f0de3d7b feat: Copy the log file to "Downloads/GPSTest" after logging (Android 11 and up)
Closes https://github.com/barbeau/gpstest/issues/633
2023-04-21 13:03:28 -04:00
barbeau
3b17dff8b8 fix: Make binding nullable and handle cases where it could be null (i.e., callbacks)
Fixes https://github.com/barbeau/gpstest/issues/634
2023-04-20 16:41:21 -04:00
barbeau
592c69d18d fix: Check for geo URIs with empty lat or lon
Fixes https://github.com/barbeau/gpstest/issues/635
2023-04-20 16:05:23 -04:00
barbeau
bd4fead10f fix: Handle case where onCreateView() is called early for ShareDialogFragment
Fixes #636
2023-04-20 15:52:02 -04:00
Dave Collett
1e71bb9896 feat: Add SouthPAN support (#601)
Closes https://github.com/barbeau/gpstest/issues/271.
2023-04-20 15:06:32 -04:00
barbeau
2a64a40fd9 fix: Limit Google Maps KTX library to only google flavor (not osmdroid)
See https://github.com/barbeau/gpstest/pull/631
2023-04-19 09:34:54 -04:00
barbeau
c93d05b252 chore: Update Jackson dependency and proguard config 2023-04-12 16:28:49 -04:00
barbeau
51050de1f9 chore: Bump version for release 2023-04-12 14:54:05 -04:00
barbeau
613a2648e5 fix: Fix incorrect applicationId used when sharing files
Fixes #624
2023-04-12 14:52:37 -04:00
barbeau
d91808b081 fix: Add OSM attribution notices to F-Droid flavor maps
Fixes #620
2023-04-12 12:34:13 -04:00
barbeau
7f6d6305eb fix: Remove default sound and vibration for < API 26
Fixes #623
2023-04-12 11:57:15 -04:00
Sean Barbeau
a6b0acc432 chore: Target SDK version 31 (#621)
* Bump dependencies
 * COARSE location permissions
 * Pending intent mutability
 * Intent filters declaring exported
 * Scoped storage

Fixes #619, #447
2023-04-11 17:19:32 -04:00
barbeau
08cb7b5cf8 fix: Update SBAS PRN assignments to June 2021 doc
See https://www.gps.gov/technical/prn-codes/L1-CA-PRN-code-assignments-2021-Jun.pdf

This seems to be the most recent reference from https://www.gps.gov/technical/prn-codes/.
2023-04-04 13:45:49 -04:00
Ada
14ad3558af chore: Share the data formatting code between WearOS and phone (#616)
Closes #613
2023-02-22 12:11:46 -05:00
Ada
7f56a0e849 feat: Add Wear OS Interface for GPSTest (#605)
* Add Wear OS Interface GPSTest

* Change the module and package name to wear

* Refactor packages to gpstest

* Change Time format

* Implement library in gpstest

* Move common data from app to library with cross-module dependency injections failures

* Solve the cross-module dependency injections problem about context

* Watch face with flashed problem

* Implement progress bar

* Add permissions request

* Resolve column overlap

* Add progress bar for Wear OS

* Update data from location on Wear OS

* Update "# Sats", "PDOP" and "H/V Dop" on Wear OS.

* Update timestamp from location.

* fix: OSMDroid build flavor

* Fix test bugs.

Co-authored-by: barbeau <barbeaus@google.com>
2023-01-10 09:55:22 -05:00
Sean Barbeau
b4f18fc345 fix: Location logging tests again 2022-07-18 18:09:09 -04:00
Sean Barbeau
c240fefcc4 fix: Location logging tests on older API levels 2022-07-18 14:32:59 -04:00
Sean Barbeau
f672d0e4c4 feat: Add isMock to location logging
Closes https://github.com/barbeau/gpstest/issues/589
2022-07-18 14:14:41 -04:00
Sean Barbeau
cd43cd688f fix: Check for fullBiasNanos before logging 2022-07-18 13:51:27 -04:00
Sean Barbeau
881dafc588 fix: GnssClock log formatting error
Closes https://github.com/barbeau/gpstest/issues/590
2022-07-18 13:48:07 -04:00
Sean Barbeau
d859f10fa0 fix: Ensure logged decimal values aren't in scientific notation
Closes https://github.com/barbeau/gpstest/issues/593
2022-07-18 13:40:44 -04:00
Sean Barbeau
2840a0f00b fix: Set the first fix flag with location in addition to GnssStatus
This should fix the "no fix" issue on devices that don't report "on first fix" via the GnssStatus API, because we'll use the Location API callback as well

Closes #495
2021-11-18 18:35:06 -05:00
Sean Barbeau
c1ffd27b53 feat: Enhance logging capabilities (#568)
Enhance logging in GPSTest

TODO:
- [x] Remove precision cap on decimal values (don't use `String.format()` - https://github.com/barbeau/gpstest/issues/553)
    - [x] Location
    - [x] Raw measurements
    - [x] NMEA
    - [x] Nav messages
    - [x] AntennaInfo
- [x] Add new GnssLogger info (described at https://www.kaggle.com/c/google-smartphone-decimeter-challenge/data# and https://github.com/barbeau/gpstest/issues/556)
    - [x] Location
    - [x] Raw measurements
    - [x] NMEA
    - [x] Nav messages
    - [x] GnssStatus
    - [x] Orientation
    - [x] GnssStatus - Settings UI
    - [x] Orientation - Settings UI
    - [x] Inject time on log - Settings UI
    - [x] Inject PSDS on log - Settings UI
- [x] Add location vertical accuracy (#557)
- [x] Archive logging README for v3 and older format
- [x] Update logging README with new v4 format
- [x] Update log header with new fields
    - [x] Location
    - [x] Raw measurements
    - [x] NMEA
    - [x] Nav messages
    - [x] GnssStatus
    - [x] Orientation

Closes https://github.com/barbeau/gpstest/issues/557
Closes https://github.com/barbeau/gpstest/issues/556
Closes https://github.com/barbeau/gpstest/issues/553
2021-11-18 18:30:01 -05:00
Sean Barbeau
ab4a4ac9ce fix: Only indicate fix is lost if gap is > 1.5 seconds
Closes #544
2021-11-15 18:14:49 -05:00
Sean Barbeau
a7ad3743a4 feat: Use viewModel for Sky fragment, including filter
Closes #563

Also bumps a number of libraries.

I hit a strange issue where the filter composable didn't seem to re-compose in Sky the same way it does in Status, presumably because it's mixed into an XML layout, when checking if the filter was active. It would only evaluate the IF statement once and then no longer recompose.

I got around this by putting a State observable first in the IF statement, which presumably avoids some type of optimization that's killing it the other way around:

 if (allStatuses.isNotEmpty() && gnssFilter().isNotEmpty()) {
2021-11-12 18:51:35 -05:00
Sean Barbeau
23b482d505 feat: Add background execution, convert Status to Composable (#550)
This is a major overhaul of the app internals to support a foreground service (i.e., a notification that shows current GNSS status even when the main Activity UI is not showing).

This involves moving all the API listeners for GNSS events into their own "manager" classes based on Kotlin callbackFlow that exist the entire lifecycle of the app, so the various app components (Fragments, ViewModels, Activity, Service) can all receive updates from this single source.

This bumps minSdkVersion to Android N (24) so we we don't need to deal with the legacy GPS* APIs anymore, which greatly simplifies the data processing within the app.

*  Convert Activity and Fragments to Kotlin
*  Add service with notification
*  Remove legacy GPS* APIs (pre-Android N)
*  Convert all location / GNSS API registrations to data managers based on Kotlin callbackFlow as detailed in https://barbeau.medium.com/kotlin-callbackflow-a-lightweight-architecture-for-location-aware-android-apps-f97b5e66aaa2.
    *  NMEA
    *  Location
    *  GNSS measurement
    *  Antenna
    *  Nav message
    *  Sensor (orientation)
* Add view binding to fragments
* Fix filter bug - it currently shows # signals being filtered, not number satellites (doesn't match # Sats field)
* Move aggregation of signals to satellites into Flow/ViewModel.
* Change Status to Composable - Use LiveData in ViewModel instead - see https://bladecoder.medium.com/kotlins-flow-in-viewmodels-it-s-complicated-556b472e281a that says don't use Flows in ViewModels.

Closes #299
Closes #492
2021-11-10 19:04:50 -05:00
Sean Barbeau
69415661dd chore: Bump version for release 2021-10-04 11:55:49 -04:00
Sean Barbeau
baed7e3dd7 chore: Update translations 2021-10-04 10:14:42 -04:00
Sean Barbeau
0f9237860f chore: Bump version for release 2021-09-23 14:05:51 -04:00
Sean Barbeau
d76112fe61 docs: Update Help definitions for "Alt" values
Closes #502
2021-09-23 12:11:45 -04:00
Sean Barbeau
9bdba93d5b feat: Clarify expected input value for accuracy "altitude"
Closes #529
2021-09-22 18:33:34 -04:00
Sean Barbeau
9689ee9ba9 fix: Use SwitchMaterial instead of Switch for better styling
Closes #325
2021-09-10 14:36:20 -04:00