I had a solution that involved using scanning nearby WiFi APs as a kind of hash for your location (since GPS doesn't work for most of the PATH).
But Android has been locking down the WiFi scanning APIs, so that idea is a no-go. Plus the additional rules for developing Android apps in recent years isn't dev friendly.