Source Code for TwitterVoteReport Android App

I’ve posted the source for the TwitterVoteReport Android client on Google Code at: http://code.google.com/p/votereport-android/. This application was developed and released for use during the November 4th election monitoring effort at twittervotereport.com. Developed in one day, the application was downloaded nearly 3000 times through the Android Market and resulted in hundreds of report submissions on election day.

The code is released under the Apache 2.0 License.

The primary classes under the com.votereport.android package are:

  • VoteReportMain: the primary launch activity that kicks the application off
  • LocationFinderActivity: this activity is launched to find the users location via GPS or the current network connection (3G, EDGE or WIFI)
  • ReportFormActivity: the activity for handling the user interface and subsmission of the report form
  • Reporter: the class which wraps the VoteReport report submission API and related services

There are also a number of subpackages (xml, view, ui, net) with helper classes in various states for doing things like parsing RSS, rendering maps and making HTTP calls. Feel free to take what you need if you are just looking for some ideas and inspiration.

In summary, this is still a work in progress, a snapshot of code written in one day, that can provide Android developers a starting point for their own geo-located data collection applications. I would love to have more developers join the project in order to move this codebase forward, including help implementing the MapView renderer, the Atom GeoRSS parser and so on.