With its intuitive and open-source platform and support from the huge mobile phone manufacturers HTC, Samsung and Sony Ericsson, Androids year-on-year smart-phone marketshare has shown a massive growth of 886%! Just to put this into perspective, the iPhone has shown only 61% growth. These figures may give you an insight into the popularity of both platforms, but in actual fact, it shows that it is mobile app developers who are the real winners. With smartphones becoming ever more popular, there has never been a better time to jump on the mobile app development bandwagon, and especially on the rapidly growing open Android platform.

Compared to other platforms, Android does not rely on a proprietary OS that restricts the use of third-party applications (off-topic: US regulators have recently announced it was lawful to hack or jailbreak an iPhone), it is an open-source and level alternative. And this reflects in its now huge development community, were everything, from samples, tutorials, GUI downloads… all seem to be freely offered. It is on that theme in which this article focuses. We have selected our favorite 20 free to use, some open-source, tools, resources, guides and downloads that will hopefully help you with your next Android app.

Free Android Developer Ebook: andbook!

If you are just stepping into Android Development for the first time this free ebook is perfect for you. It is a 62 page PDF ebook choc-full of easy to follow tutorials that shows you how to start coding an Android app without having any Android-dev knowledge whatsoever.

Free Android Developer Ebook: Professional Android Application Development

The Professional Android Application Development PDF ebook is a hands-on guide to building mobile applications, this book features concise and compelling examples that show you how to quickly construct real-world mobile applications for Android phones. It covers all the essential features, and explores the advanced capabilities of Android.

Free & Open-Source Sample Applications

apps-for-android (Open Source Applications) →

This is a popular collection of useful, open source applications that demonstrate the features of the Android.

List of Sample Android Apps →

The list on this page offers a summary of the sample applications that are available with the Android SDK. Using the links on this page, you can view the source files of the sample applications in your browser. You can also download the source of these samples into your SDK, then modify and reuse it as you need.

Android Cookbook (Examples in Cookbook Form) →

This is a collection of several useful Android examples in cookbook form that you can re-use and play with.

OpenIntents →

OpenIntents design and implement open intents and interfaces to make Android mobile applications work more closely together. They freely offer prefessional and complex sample applications to demonstrate their usage.

Android Snippets (Share Useful Snippets of Source Code) →

Android Snippets is a repository of useful code-snippets for android, to share good and reusable code; thus not having to reinvent the wheel if not necessary.

For those of you who want to test drive Android you can use this emulator, which is patched to run on a Windows PC as a standalone app, without having to download and install the complete and complex Android SDK. You can even install and test Android compatible apps on it.

Android Emulator from The Developer’s Guide

The Android SDK includes a mobile device emulator which mimics all of the hardware and software features of a typical mobile device (although, without the calls). It provides a variety of navigation and control keys, which you can "press" using your mouse or keyboard to generate events for your application. It also provides a screen in which your application is displayed, together with any other Android applications running.

SensorSimulator

Sensor simulator is a java standalone application that simulates sensor data and transmits them to the Android emulator. It will allow you to simulate sensor data from accerelometer, compass, and orientation sensors and the data can then be used in an Android application, to steer them live through the sensors.

DroidEx: Projecting Android on the Big(ger) Screen

DroidEx displays a copy of your attached Android device's screen on your own development machine's screen. Mostly, this is useful for presentations, as you can attach an Android device to a notebook attached to a projector, and your audience can see what is on the device. In particular, this is good for demonstrations of things that cannot readily be demonstrated via the emulator, such as GPS access or the accelerometer.

App Inventor for Android

App Inventor for Android is a new tool from Google that allows non-developers to create there own app very, very easily. You can have a look at this video for an overview of all of its features:

This is a collection of some of the most common tasks you will come across with Android development, and offers quick and to the point — how-to's to help you on your way.

Fastboot Cheat Sheet

The Fastboot Cheat Sheet is a very useful and quick list of some common tasks in fastboot.

Here you will find links to the official articles, from the The Developer's Guide, that describe the Android UI developing guidelines for the interaction and visual design of Android applications.

Icon Design Guidelines →

The Icon Guidelines describe each kind of icon in detail, with specifications for the size, color, shading, and other details for making all your icons fit in the Android system. You can download the Icon Templates Pack, which is an archive of Photoshop and Illustrator templates and filters that make it much simpler to create conforming icons.

The Icon Guidelines describe each kind of icon in detail, with specifications for the size, color, shading, and other details for making all your icons fit in the Android system. You can download the Icon Templates Pack, which is an archive of Photoshop and Illustrator templates and filters that make it much simpler to create conforming icons. Widget Design Guidelines →

These design guidelines describe how to design widgets that fit with others on the Home screen. They include links to graphics files and templates that will make your designer's life easier.

These design guidelines describe how to design widgets that fit with others on the Home screen. They include links to graphics files and templates that will make your designer's life easier. Activity and Task Design Guidelines →

These guidelines describe how activities work, illustrates them with examples, and describes important underlying principles and mechanisms, such as multitasking, activity reuse, intents, the activity stack, and tasks. It covers this all from a high-level design perspective.

These guidelines describe how activities work, illustrates them with examples, and describes important underlying principles and mechanisms, such as multitasking, activity reuse, intents, the activity stack, and tasks. It covers this all from a high-level design perspective. Menu Design Guidelines →

These guidelines describe the difference between Options and Context menus, how to arrange menu items, when to put commands on-screen, and other details about menu design.

In this four part article you are walked through the various elements that make up the UI of an Android application. In the first part of the article, it discusses the various layouts available in Android to position the various widgets on your screen.

Android UI Patterns

DroidDraw : Graphical User Interface Editor for Android

DroidDraw is a User Interface (UI) designer/editor that can be used to build GUIs for Android. It is standalone executable, and its available for Mac OS X, Windows and Linux.

The Android GUI Starter Kit comes with several button elements as well as different interface options for Android GUI. is based on elements of Android 1.5 GUI and has been made to help the open-source community with Android applications mock-ups. Most of the elements and phone illustration are made in vector path so they are easily resizable. For text Android Sans was used.

In this Fireworks template the Android user interface elements have been redrawn as vector images. In the folders the elements have been mostly labeled according to the Android vocabulary.

Android Wireframe Templates