This is a personal blog. The opinions expressed here represent my own and not those of my employer.

11 Libraries for Android to consider before starting a new project

Sun 16 October 2011

Plenty of good libraries, services, APIs are available for helping you to speed up Android application development. But still you need to know they exist. Here a list of some of them I consider important to know. If you think one is missing, please let me know by posting a comment.

Monitor how your application is used

Flurry Analytics helps you to understand how the users interact with your applications. Flurry collects technical information like: phone, android version and firmware the application is running on, how many time your application has been launched during a period. And the ability to send your own "event". For instance, you can easily count how many time an specific action is used and with which options. And a lot of other metrics, maybe too much.

Challenge your users

Scoreloop is a service dedicated to video games. It provides leader board, achievements, challenges, in app purchase (still relevant since Google also offers this feature?), and much more. The frosting on the cake: the support is just awesome! They really take care of its developer community! A concurrent of Scoreloop exists, openfeint but for my point of view is not as good as Scoreloop (I had bad experience with OpenFeint. Game using it crashed most of the time on my phone)

Be social, listen your users!

Disclaimer: I'm the developer of this one. The goal of LetThemVote is simple: helps you to better know your users, and focus on what really matter for them. To achieve that, LTV can collect suggestions, sort them by user preferences, make in-app surveys. All of this through a fully customizable UI, and of course for free.

Logs collectors and analyzers

ACRA allows you to collect logs when your application crashes and provides UI when this happens. ACRA relies on Google Docs for storing the logs.

Logentries offers to analyze and store your logs in the cloud. While ACRA focus on collecting data, Logentries focus on logs processing and analysis. So combining the 2 makes sense. Logentries really shows its potential if you need to correlate different log sources (i.e mobile application logs and server logs). Another good point is the very small footprint of their library (in fact it's only 3 classes). Currently you can open a free account and deal with 1GB of logs per month.

Make it nice

GreenDroid The main features are: Action Bar (but compatible from Android 1.6) and Quick Action Bar. If you'd like to have a better overview of the abilities of GreenDroid, I suggest you to download its demo on the AndroidMarket

ActionBarSherlock provides an API for using an ActionBar in Android 1.6 like GreenDroid but ActionBarSherlock is based on the compatibility library (which allows you to use some features released in Android 3.0 on previous version).

By the same author (Jake Wharton), ViewPagerIndicator. Better than a long explanation an application sample is on the market.

Code readability

AndroidAnnotations provides a bunch of annotations to remove boilerplate code. The annotations are replace at compile time. If you'd like to do some injection at runtime take a look on RoboGuice.

Code samples

An excellent reference is the Google I/O app. It's full of best practices.

You know an other good library for Android? Please let me know by posting a comment.


Last Articles

Involved in

Guillaume Vaudaux-Ruth