I'm the developer behind GPSTest, the #1 open-source Global Navigation Satellite Systems (GNSS) testing app on Google Play, also available on F-Droid.
I must really enjoy it, because it's a side-project for me 😃 - I work on it on my lunch breaks 🥪.
I have over 15 years of experience developing apps using location services, spanning Java Micro Edition and Android, which I do as part of my day job.
In my spare time, I spend time with the family. When I'm not doing that, I enjoy producing my own music.
What are you working on at the moment? 🛰️
Over the last few years I've been putting in a lot of effort to make sure that GPSTest accurately reflects the capabilities of dual-frequency GNSS devices (see "Dual-frequency GNSS on Android devices"
Users often ask how accurate their device location is - the "Accuracy" feature in GPSTest can help answer that question (see "Measuring GNSS accuracy on Android devices").
Recently, to help users understand what GNSS features an Android device supports, I've launched the crowd-sourced GPSTest Database (see "Crowdsourcing GNSS features of Android devices").
Check out the GitHub issues list to see the latest things I'm focused on, and recent releases for the latest features.
Why buy me a coffee? ☕
It's important to me to keep GPSTest free on the app store and open-source for several reasons:
• Privacy - I believe that users have a right to know how apps are using their data. Apps with location permissions can be particularly dangerous. The best way to know that an app isn't tracking you without your permission is to be entirely transparent, which means keeping the source code open. That's why GPSTest is open-source on GitHub
• Open-access - When you pay a lot of money for a shiny new device based on manufacturer advertising, I believe that every user has the right to know if the manufacturer is following through on those promises. There shouldn't be financial barriers to trying an app like GPSTest that allows users to evaluate device GNSS capabilities, which are often under-tested by reviewers and OEMs (see examples here
...). OEMs are more likely to fix problems if they get a large number of user reports from an app like GPSTest. This means faster fixes to bugs, and fewer problems in future devices.
• Ad-free - Another possible model to support GPSTest is to show ads in the app using an ad-engine library. However, this would be violating the privacy principle - the ad-engine is closed-source and ultimately I, and you, would have no idea what the ad engine and it's partners are doing with your data. In my opinion, ads are currently a big problem in the mobile app industry, and I really don't want ads in my own app.
I've considered other models that would create free and paid tiers for the app, but they end up compromising one of the above principles.
Users have asked how they can support GPSTest, and this seems like the best option - allow users to experience the app for free, and if they see value in it they can support it!
What are contributions used for?
GPSTest is a side-project for me - I don't get paid to work on it. I'm passionate about location and mobile apps, and GPSTest is one of the best ways to understand the state-of-the-art in mobile devices.
Contributions will be used to support my own time working on the app, including adding new features and replying to users on GitHub
and the Google Group
. I would also like to expand my access to hardware to help implement new features, including devices that support carrier phase measurements and peripherals like Bluetooth GNSS receivers. Emulators don't emulate GNSS well, so often it's difficult to know if a new feature will work correctly unless it's tested on real hardware.