Android Libraries

If your favourite library is not listed please add it here.

Title Description

Charting library


ActionBarSherlock is an extension of the compatibility library designed to facilitate the use of the action bar design pattern across all versions of Android with a single API.

ActiveRecord for Android

ORM to simplify use of SQLite with Java Objects


AdWhirl is a free, open source tool that helps you make more money from your iPhone or Android app. It enables you to serve ads in your app from any number of ad networks as well as your own house ads. By using multiple networks, you can determine which perform best for you and optimize accordingly to maximize your revenue and fill all your inventory.


Charting library
GNU lesser GPL

aiCharts (commercial)

Android Chart Engine, requires developer license.

Allyjoyn - P2P SDK

Qualcomm's solution for P2P communication across platforms including Android:

Android Billing Helper Library

Robotmedia created a helper library to simplify the in-app billing process

Android Chart (commercial)

Library with Chart API, requires developer license.

Android Chart Library - kiChart

kiChart is a chart solutions on android platform, you can use it to create your android chart applications. It’s easy to use, effectively and powerfully. It will save your valuable time in developing.
Features: kiChart provides set of the basic used chart types, (1) Line Chart (2) Bar Chart (3) Pie Chart
Other functions: (1) Support multiple series. (2) Export chart as image file. (3) Define the parameters: margin, size, font color, font size and etc. (4) More controls on y-axis values, you can set float type of value, start-value and end-value.

Android Easy Library

Android is an amazing platform, with great SDK for the developers to make rich application, though still for the absolute begineer the API are still hard to use, so I have made an extremely easy to use set of API for the Android SDK, with this the one who are extremely new to the development environment can still develop great applicataions.

Note: The library is compatible with Android 2.3.3 only right now.

For the documentation and the library go to:

Android Form Edit Text

Android form edit text is an extension of EditText that brings data validation facilities to the edittext.

Sample available on Google Play Store :

Android Image Cache

Project page: Android Image Cache

An image download-and-cacher that also knows how to efficiently generate and retrieve thumbnails of various sizes.


  • easily integrates into content-provider backed applications, providing an adapter that can read local and web URLs from a cursor
  • automatic generation and caching of multiple sizes of images based on one downloaded asset
  • provides a disk cache as well as a memory cache
  • designed to work with your existing setup: no extending a custom application or activity needed
  • cursor adapter supports multiple image fields for each ImageView; skips fields that are null or empty
  • cursor adapter has an automatic progress bar when loading the cursor
Android MapView Ballons

Allows to annotate map overlay items with a simple information balloon when using Google Maps

Android PDF Viewer library

This is a packaging of the project "Android PDF Viewer" ( into a reusable library to make PDF viewing easier from within your Android application. To remain consistent with the licensing of the original project, it is licensed under the LGPL.

Android RSS Library

android-rss is a lightweight open-source (Apache 2.0) library to read parts of RSS 2.0 feeds. The library uses (Level 1) APIs such as The design features stream parsing with SAX. As a result, the memory footprint tends to be smaller compared to an equivalent DOM-based solution.


This open source library aims to help the implementation of JSON-RPC clients in android applications. The library provides a simple API to perform JSON-RPC calls from an android device.

Project page on google code :


Android Picker widget like a wheel


Library to create and manage databases through xml resources.



Android-Query (AQuery) is a light-weight library for doing asynchronous tasks and manipulating UI elements in Android. Our goal is to make Android coding simpler, easier, and more fun.

Features include: Less Code, AJAX Callback, Image Loading, List Item Optimization, XML Parsing, Chaining, Non-intrusive, and more...


AndroidSideMenu lets you create side (slide\drawer, whatever you call it) menu without special effort.

Why this one is better than others? Because it works much faster (thanks to caching), so it's doesn't matter how complex your layouts are.

Note that this library doesn't provide tools for creating menu itself, you are free to put inside menu whatever you want (ListView? LinearLayout? RelativeLayout? ImageView? ...)


Angle is aimed to be a way to develop 2D games using OpenGL ES on Android providing as much speed as possible. The engine is entirely coded in java so you can overload every object for your convenience.

aSmack (XMMP)

Smack library (XMPP) with heavy patches for Android.

Barcode scanner SDK by Biggu (adware)

Barcode scanner SDK made for fixed focus cameras as well as autofocus. Made by Big in Japan (ShopSavvy)

Bluetooth (<2.0)

Bluetooth library for devices with Android < 2.0


Calculon is a testing DSL for Google Android. It allows you to write functional story based tests.


Circular layout for android. Also lets you arrange your view in a nice looking pie.


Open source 2D game framework for Android


2D game engine base on cocos2d-iphone.

Commonsware Library

Great collection of reusable code for various objectives.


A library for developers, wishing to work easily with Contacts,without knowing how a Content Provider operates.


Context sensitive notifications for Android

Deacon - A Push Notifications / C2DM library for Android and Java applications

Deacon is a free and open-source Java push notifications library for Android and Java applications. It acts as a client to the Meteor COMET web server. Deacon was created with the goal to bring a solid push notification platform to Android, and to enable developers to push-enable their apps without being dependent on anyone else's servers.


DeeLang is a lightweight, embeddable, dynamically-typed scripting language for Java that is intended for use in user-scriptable applications in limited resource environments, and especially for Android devices.

Currently DeeLang provides an ANTLR 3 based parser and two compiler back-ends: a DEX compiler that compiles to Dalvik bytecode for use in Android environments, and a custom-bytecode compiler (compiling to a format that is not dissimilar to, although far simpler than, that used by the Java(tm) Virtual Machine).

The DEX bytecode runs on any Android device against a very small runtime library, while the custom bytecode option is used with the (provided) stack-based virtual machine and runtime to execute compiled scripts on any Java-compatible device.

The current total deployment size of DeeLang is under 1MB (including ANTLR runtime). When used on Android, it adds ~300k to your APK size.

As well as being lightweight, DeeLang is designed for use in user-scripted applications by those with little programming experience, and as such has a natural syntax and aims to be as easy to use as possible.


Droid-Fu is an open-source effort aiming to collect and bundle solutions to common concerns in the development of applications.

Droid-Fu offers both support classes meant to be used alongside existing Android code, as well as self-contained, ready-to-be-used components like new adapters and widgets.


Droid-Fu offers both support classes meant to be used alongside existing Android code, as well as self-contained, ready-to-be-used components like new adapters and widgets.

The areas tackled by Droid-Fu include:

- application life-cycle helpers
- support classes for handling Intents and diagnostics
- better support for background tasks
- super-easy and robust HTTP messaging
- (remote) image handling and caching
- custom adapters and views

Droid fu repository


Library to access a CouchDB server


Library to communicate with Drupal services.

Exit Games SDK

Client SDK for real-time games framework by Exit Games


The TTS library for Android (Text-To-Speach)

Facebook SDK for Android

Library with activities to connect with Facebook


Flurry is a leading smartphone application analytics and monetization platform used by more than 30,000 applications across iOS, Android, Blackberry and J2ME. Each month, Flurry tracks over three billion end user application sessions per month.

Flurry Analytics helps developers make better applications, increase retention and grow revenue. Flurry AppCircle is an intelligent, analytics-powered cross-selling network that accelerates user acquisition for promoters and meaningfully monetizes applications for publishers.

GraphWidget (commercial)

Android library for visualizing real-time input data with horizontal scroll

greenDAO - Android ORM for SQLite

ORM that generates boiler plate code for persisting Java objects efficiently.

GreenDroid Library

This library is just here to help the Android application development. It have those objectives :
- Prevent loosing time at copying the same snippets of code over and over again.
- Try to make Android applications alike.
- Help developers to code highly functional applications.
- Leverage the power of the Android framework.
- Use as much XML as possible.

For more information :


Framework hiding lots of boilerplate code

Infinitum Framework

Infinitum is an extensible, modular framework enabling Android developers to quickly and efficiently create rich, domain-driven applications while facilitating the convention-over-configuration paradigm. Infinitum's core components include an ORM, DI, AOP and RESTful web service module.

iPrint (commercial)

Library to add printing functionality to apps. Network printer, Wifi printer, Bluetooth printer.


JSON marshaller/unmarshaller for Java that runs on Android

Jason Fry Android Tools

Library with SwipeView, PageControl and OverScrollDisabler

jMonkey Engine (JME3D, JME2D)

Leading java based 3D game engine that also supports Android.


A video game framework for rapid game prototyping, partly modeled after Britt Hannah's article Object-Oriented Game Design.


GDX is a simple Android game development framework that allows rapid prototyping on your desktop PC/Mac guaranteeing the same behaviour on your Android devices.

mAppWidget (commercial)

Add fully functional custom offline maps to your Android apps in minutes


metagloss is an annotation-centric Android library for reducing boilerplate code. Relying on run-time parsing and compile-time code generation, metagloss provides facilities for mapping XML and databases to data objects, dealing with preference screens and working with DB queries.

SF Project page:

Mobile Maps

Mobile Maps provides developers with a simple way of adding map functionality to your mobile phone applications. It also includes access to the map data itself, from either TeleAtlas or OpenStreetMap depending on which data suits your application needs.

Mobile Push (droidpush)

The Mobile Push API enables you to push content directly to one or more phones. SMS and HTTP technology are used for delivery, making it suitable for applications where it is important to ensure that the latest information always is available at the receiving end, without the need to frequently poll for updates.


MoVend is an in-app commerce platform which allows users to make payment within an application. Developers can integrate MoVend into their applications and start monetizing. This solution is provided for developers, publishers and operators who want to have a payment system inside their application, without the hassle of creating one. MoVend works as a payment aggregator, connecting the developers and their users. SDK is free for download once you signed up for a developer account at

Notification Compatibility 2 (Jelly Bean)

Compatibility library for the notification API added in Jelly Bean

OAK Android Kit

Pinned Header ListView


A one-liner to spin up a new Android app with placeholder tabs inside of ActionBar Sherlock

Encrypted SharedPreferences

And more...

Check out the demos in the play store:

Visit the website:


An OAuth Library/application for Android which uses Content Providers in order to store OAuth data

Note, that you can also use SignPost for Android when just making OAuth calls (see


Create Android GUI in more efficient way.

ObjectForms leverage Java class introspection to build user interface for your live objects, eliminating the need to write glue code. Relying on Java and Object Oriented principles means UI code can be reused and extended even if it grows complex, which is difficult if you do your layouts in XML.


Open NFC is an open source stack implementing the NFC functionnalities, it consists of documentation and SDK add-on to enable RFID communication on Android.


The OpenSocial Java Client Library enables you to work with OpenSocial data on your server, in the language of your choice. Includes description for android.


PV provides software to deliver media services people will love. PV's software gives users greater access and control over their media experience, increasing the value of your services and helping you differentiate your brand.

A rich application framework for networked media applications and helps you:
Accelerate time to market
Reduce operational costs and resources
Improve the user experience
Brand your applications with a consistent look and feel


Android version of the computer vision library OpenCV.


ORMDroid is a simple ORM persistence framework for your Android applications, providing an easy to use, almost-zero-config way to handle model persistence without ever having to deal with Android's built-in database interfaces.

ORM-Droid Project Page
Developer's blog (includes other code-related topics)

ORMDroid is:

  • Small - ~20k, target of no more than 30k.
  • Simple - No excessive features or support for platforms other than Android.
  • Flexible - Allowing you to configure what you need to, but at the same time...
  • Automatic - ... sensible defaults for everything.
  • ORMDroid works with Android API 8 and up.
OrmLite (Android support)

Lightweight Java ORM library that supports Android and SQLite


PeerDeviceNet is both app and middleware to connect android phones and tablets securely thru Wi-Fi network. As an app, it allows a group of devices share web pages, contact information, pictures, videos and other documentations. As middleware, it helps developing connected mobile apps. You can reuse PeerDeviceNet connection manager to connect mobile devices for connected mobile apps or multi-player games. Via PeerDeviceNet apps can send messages to peer devices using intents, messenger or idl interfaces.
Support Android version 2.2 and up.

Print Image

Action: org.androidprinting.intent.action.PRINT
URI of the image to be printed, mime type of the image (must be of type "image/*")
Any application can use HP iPrint Photo for Android for printing images on nearby printers from Android phones.

HP iPrint Photo for Android phones:
Wireless photo printing from your mobile device

Qualcomm Tools

Qualcomm has published some librairies that could be really interesting :
Looking to optimize your app’s performance? Want to expand your development capabilities? We’ve built these tools for developers who want more out of our chips, so use them to take your app to the next level. And we have more on the way, so watch this space.


AllJoyn SDK

AllJoyn technology allows developers to create viral and social apps with connectivity across devices via ad hoc, peer networks.


Ikivo IDE & Animator

The IKIVO IDE provides a complete tooling solution for developing, debugging and testing mobile applications based on the open standard Mobile SVG and JavaScript. Use the IKIVO Animator create animations, user interfaces, multimedia messages, and much more.

Adreno™ SDK

Download this first! The Adreno SDK is the first thing you’ll need when working with OpenGL ES. OpenGL ES desktop emulation libraries, sample code, tutorials, demos, documentation, and miscellaneous tools.

Adreno™ Profiler

Provides optimization, per-frame analysis and real-time performance counter visualization.



The Qualcomm Augmented Reality Platform provides developers the ability to create high-performance Android applications with C++ APIs.

You can find all those librairies here :

Reactive Android

UI library for enterprise development
- DataGrid
- Layout Manager
- Binding

Sources -
Example of using -

Resting Library

Resting, a lightweight REST framework in Java, can be used to invoke a RESTful web service and convert the response into custom Java objects from the client application. Because of it's simplicity, resting is suitable for Android and other handheld devices.

Goals of resting

Expose simple get(), post(), put() and delete() methods to consume REST services
Support for all the commonly used MIME types like JSON, XML and YAML
Enable both HTTP and HTTPS (SSL) invocation of RESTful web services
Provide request signing
Support for arbitrarily complex marshalling and unmarshalling of data during transformation
Support for custom representation of collections in REST request
Lightweight, simple and fast. Ideal for Android.



RESTProvider handles all the HTTP querying and caching. Users can seamlessly interface with any Web Service API which provides JSON or XML as a response. To query a RESTProvider in an activity a user need only specify an endpoint and then query an APIs RESTful functions.


Android client library for RESTful services


RoboDemo is a ShowCase library for Android to demonstrate to users how a given Activity works.

A sample is available in the download area of the repository :


RoboSpice is a modular android library that makes writing asynchronous network requests easy.
It supports REST requests out of the box using Spring Android (other implementations are possible as well).

Sample demo app available on the market :

RoboSpice uses a new approach : it executes network requests inside an Android Service.
To learn more about RoboSpice in 30 seconds, have a look at this infographics :

Activities (or other contexts) can bind very easily to the RoboSpice Service to add new requests, cancel requests, etc.
RoboSpice provides automatic caching of requests' results, various formats are supported.

Main features of RoboSpice:

  • executes asynchronously (in a background AndroidService) network requests (ex: REST requests using Spring Android)
  • is strongly typed ! You make your requests using POJOs and you get POJOs as request results.
  • enforce no constraints neither on POJOs used for requests nor on Activity classes you use in your projects
  • caches results (in Json with both Jackson and Gson, or Xml, or flat text files, or binary files, even using ORM Lite)
  • notifies your activities (or any other context) of the result of the network request if and only if they are still alive
  • no memory leak at all, like Android Loaders, unlike Android AsyncTasks
  • notifies your activities on their UI Thread
  • uses a simple but robust exception handling model
  • is open source ;)
  • and tested

RoboSpice's GitHub repo contains sources, javadoc, sample app, presentation slides, infographics, even a DIY T-shirt !

RoboSpice is maven-ready :


Rokon is an open source OpenGL 2D game engine for Android mobile devices.

Satellite Menu

The android app 'Path' has a very attractive action menu sitting on the left bottom corner of the screen. Satellite Menu is the open version of this menu. For the ones who didn't see path, the menu consists of a main button on the left bottom of the screen. When the user clicks on this button, a number of buttons are popped out of this button.


Library to highlight use of the app and give the user a guidance of new features.


Simple, unobstrusive, modular library to sign http requests with OAuth tokens.


Project Page: SimpleContentProvider

This library aims to make creation of private and public ContentProviders trivial.

If your app is backed by a database, chances are you took one look at the Content Provider API and decided that it wasn't worth the effort to use. This library aims to help that by removing the need to do all the legwork of writing all the basic CRUD operations that you'll encounter writing a basic content provider.

By using this library, you shouldn't need to write any SQL for most applications — table creation, query generation, etc. are all handled for you.

This library is loosely inspired by Django and follows some of its design principles. It also follows the RESTful design principles that underly Android's data-driven activity flow and encourages the use of URIs to represent all data objects.

One can think of this library a bit like a super stripped down ORM — similar to Hibernate or ORMlite.

Unlike ORMs, this library aims to have very little object creation in order to minimize garbage collection churn. This follows Android's existing Content Provider APIs closely, making it so that there should be very little difference between the use of the content providers created by this library and any other Content Provider Android already exposes (contacts, media, calendars, etc.).

SocialAuth Android

SocialAuth Android is an Android version of popular SocialAuth Java library.The API enables user authentication and sharing updates through different various social networks and hides all the intricacies of generating signatures & token, doing security handshakes and provide an easy mechanism to build cool social apps with minimal coding.

With this library, you can:

Quickly build share functionality for posting updates on facebook, twitter, linkedin and more
Easily create a Share button or a social bar containing various social networks
Access profile of logged in user for easy user registration
Import friend contacts of logged in user (Email, Profile URL and Name)
Do much more using our flexible API like extend it for more network


SocialLib aims to make the development of Social apps much more easier. Currently, Social Lib provides access to the following social networks : Facebook, Twitter, Google Buzz, LinkedIn.


Library to include advertisement delivered by Smaato.

Spring Android

Spring Android is an extension of the Spring Framework that aims to simplify the development of native Android applications.
Contains a Rest Client, a Commons Logging adapter

Swipe ListView

An Android List View implementation with support for drawable cells and many other swipe related features.



Demo sources:

Sybase Bluetooth SDK (commercial)

Bluetooth SDK by Sybase for proven Bluetooth connection and quality

TeeChart Charting

Charting library for Android, provides a CHART Intent to return a picture of your custom data.

final Intent intent = new Intent("");
intent.putExtra("Header", "Hello World !");
intent.putExtra("Style", "Bar");
intent.putExtra("Text", new String[] { "Apples", "Bananas", "Kiwis" });
intent.putExtra("Values", new double[] { 45, 23, 12 });

public void onActivityResult(int requestcode, int resultcode, Intent intent) {
if (resultcode == RESULT_OK)
final Bitmap bitmap = ChartIntent.getChart(requestcode, intent);

TeeChart provides complete, quick and easy to use charting .NET, Java, ActiveX / COM, PHP and Delphi VCL controls for business, Real-time, Financial and Scientific applications.
Full source code available, visit us at

TeeChart for Java v.2 Charting component Library ships with 100% sourcecode in Android, AWT/Swing and SWT formats. It supports major Java programming environments including IBM Eclipse, Sun NetBeans, IntelliJ IDEA and Oracle JDeveloper.

The charting library offers 50 Java Chart styles (in 2D and 3D plus multiple combinations), 38 mathematical functions and 20 Chart tools components for additional functionality including dragging of series marks, annotation objects, cursors and manual trend lines, coloring bands, etc.

Charting styles:

Line (Tape), Points (Scatter XY and XYZ 3D Scatter), Area (Stacked and negative), FastLine (real-time speed), Horizontal Line, Bar and Horizontal Bar (Stacked and negative), Pie (Exploded, partial angle), Shape (Cube, Pyramid, Cylinder, etc), Arrow (Callout), Bubble, Gantt, Candle (Finantial OHLC High-Low), Donut (Exploded Doughnut), Volume (Stock), Bar 3D, Points 3D, Polar, Radar, Clock, WindRose, Pyramid, Surface (XYZ Grid Mesh), LinePoint, BarJoin.class, ColorGrid, Waterfall, Histogram, Error, ErrorBar, Contour (Contouring Levels), Smith, Calendar, HighLow, TriSurface (Voronoi triangulation of arbitrary XYZ points), Funnel, Box (Box Whisker), Horizontal Box, Horizontal Area, Tower, Point and Figure, Gauges, Vector 3D, Map (Mapping GIS), Bezier, Bar with Image, IsoSurface (Auto Leveled XYZ Mesh), Circular Gauge, Linear Gauge, Vertical Linear Gauge, Horizontal Histogram.

Feature Summary:

50 Chart styles (in 2D and 3D plus multiple combinations) including Gauges
38 mathematical functions
100% sourcecode for Android, AWT/Swing and SWT
Run-time Editor, Gallery dialogs
20 Chart Tool components for additional functionality, like dragging series marks, annotation objects, cursors and manual trend lines, coloring bands, etc
Chart Grid component to manage data
Multiple-axis support both horizontal and vertical
Customisation of axis labels and legend items
Great cosmetic properties for all texts and drawings
Complete set of chart styles, both in 2D and 3D
Live and animated zoom and scroll. Multi-touch and mouse wheel supported
2D and 3D
Custom drawing canvas
Extensive demos
Design and runtime integrated Chart and Series editor
New improved Javadoc format help plus Tutorials
Many new visual features, transparency, colour gradients, gray-scale.

Mathematical and statistical functions:

Add, Subtract, Multiply, Divide, High, Low, Average, Count,
Momentum, Momentum Division, Cumulative, Exponential Average, Smoothing, Custom User Defined, Root Mean Square,
Standard Deviation (StdDeviation), Stochastic, Exponential Moving Average, Performance, CrossPoints, Compress OHLC,
CLV, OBV, CCI, Moving Average, PVO, DownSampling, Trend, Correlation, Variance, Perimeter, CurveFitting,
ADX, Bollinger, MACD, SAR, RSI, Histogram Function.

Tips Library

Small library to quickly add tips and tricks to your app


Library with activities to connect with Twitter and Demo Twitter Project


ViewFlow is an Android UI widget providing a horizontally scrollable ViewGroup with items populated from an Adapter.


A very thin yet complete xmlrpc client side library for Android platform.

Xtify (commercial) - Push notification service

Allows to include location based push notification into applications. Notificatzions are managed through the backend at



ZXing is an open-source, multi-format 1D/2D barcode image processing library implemented in Java. Our focus is on using the built-in camera on mobile phones to photograph and decode barcodes on the device, without communicating with a server.

Note also the project at