location history only shows one location per day
Hello, thank you for making and maintaining this app. Without it, I couldn't continue using my smarttags after switching phones. I noticed one thing though that doesn't seem to be working for me. When opening the location history, it only shows one location per day (without any address), even though I know that it has been scanned by my own and other galaxy devices at different locations. The things that might be special about my setup are that
- I am using GrapheneOS
- the encryption setting is activated.
Sounds like your device doesn't have a geocoder on it. Are you running without Play Services?
I am running it with Sandboxed Google Play with the geocoder set to GrapheneOS proxy. I just tested with my own app that also uses reverse geocoding and I am also getting null there, so this seems to be a GrapheneOS issue. But maybe there's a better way to catch the geocoding error that doesn't lead to only one location being shown?
I found the error. It seems to be in the GrapheneOS geocoder: https://github.com/GrapheneOS/os-issue-tracker/issues/23
Also I noticed that it actually shows the same location (I think it's the latest one) for every day it got at least one location, not one location per day. I think this issue can be closed if you don't want it to work without a properly functioning geocoder.
It's functioning properly but it wasn't providing an already assembled address line which is a feature required for some applications. That has been implemented and will be in the next GrapheneOS release. Not having a built-in geocoder or not having all of the functionality it can provide wasn't a bug. AOSP doesn't have a built-in geocoder and it's not required by the Android Compatibility Test Suite.
It's a bug in uTag as well then yeah, it should be handling the case without a Geocoder better. The address is used for clustering the tag not moving (same as how Samsung Find does it), but there should probably be a fallback to handle the case where this can't happen.
Many developers use it because it is in the documentation (https://developer.android.com/reference/android/location/Geocoder). I honestly didn't know that it's not part of all android devices. I would also be happy to (try to) contribute to other geocoders for GrapheneOS. For example, instead of Nominatim, Komoot Photon could also be used for (reverse) geocoding and could easily be hosted by GrapheneOS.
It's provided by all Google Mobile Services devices but not AOSP so we had to implement our own and we didn't provide this field with the already assembled address initially since applications we tested didn't use it.
1.0.12 includes a robust fallback setup (merging the fields of an address, or if none are provided at all, displaying the raw LatLng) so this can no longer happen.
We also added support for this field:
https://grapheneos.org/releases#2025090200
I saw - otherwise this would've been much higher priority on my end! Thanks for your work :)