Sunday, December 15, 2013

First Android app

This week I released GetBack GPS, my first Android app, day to day one year after the first commit that started the development.

During this year, I put my newly acquired Java skills to use, explored the huge possibilities of the Android framework, and experimented with Test Driven Development and Continuous Integration.

GetBack GPS logo
The result so far is a simple navigation app, called GetBack GPS, that helps you find your way back to a previously visited location, using the GPS functionality of your Android device.
You can get it at F-Droid, a website that distributes Open Source software.

The app is Open Source, freely available and it does it what it is supposed to do. If it doesn't, please report an issue. ;)

So what's next? First some small improvements to the interface, some refactoring and creating a class to make rotating of the arrow easier.
Increasing the test coverage is on my list as well, but I have to figure out a way to automatically test the app, with my current setup (maven, cobertura, junit3, Jenkins, Travis CI, coveralls). I might have to make some changes to the setup to get coverage from instrumentation tests.
Unit testing classes that extend (or use) Android classes, is not possible, because the Android API is an just an interface, the implementation of the classes is only present in the System Images of Android devices. So to test the actual implementation, you need to test on an actual or emulated Android device.

Some future ideas for the app:
  • store multiple locations, from which you can choose when you set a destination
  • support both the metric and imperial system
  • share your location with others and use the current location of a friend as a destination
More ideas can be found in the milestones.

I also plan to work on some other Android projects that will use Bluetooth communication and barcode or QR code scanning.