I finished my Route Finder Android app. It now finds the best driving route through a set of cities using Google Directions API data (I used this instead of the Google Distance Matrix API because it was easier to work with) and Google Maps API as well as an algorithm I wrote. The first city that is entered when the app starts is the city that the route starts and ends at. When a city is entered a marker is added to the map and the optimal route is recalculated to include that city.
The app still lags at times (the button sometimes has to be pressed multiple times to add a city to the map and find the optimal route). So there is still room for improvement, but at least it is in somewhat usable shape.
Here is a video demonstrating the app:
To run the app make sure you have an android device, go to the following link on the device and download the APK file. You will be prompted to install it.