Develop an Android application is like a war. You must make battles after battles. Best way to win a battle ? Have good weapons with you ! For a developer, a good weapon is a tool that makes his life easier and increase his productivity.

Thanks to large Android’s community, there are a lot of tools dedicated to developers. The following list is not exhaustive and you can use comment to send me your own best tools for your Android developments.

List is here :

1. Genymotion

Android SDK provides a free emulator based on QEMU that lets you to create virtual device with some specific specifications like screen size, screen resolution, … This is a great tool but major concern is it’s a very slow tool ! Deployment time and launch time are very bad.

A best solution is to use Android Emulator provided by Genymotion. It solves problems of default Android Emulator by providing a free (for personal uses) hardware accelerated Android emulator which is screaming fast.

It supports Android 2.3 to Android 5.0. Download an try it, your life will be better after that : https://www.genymotion.com/ .

 

2. Pencil

When you have ideas for a new application, it can be useful to prototype the screens of this future application to choose best way to create it. Several tools exist but Pencil is definitely a great choice: http://pencil.evolus.vn/ .

Pencil is free and comes with a template systems that lets you to extend its usage to iOS prototypage.

 

prototype pencil

 

3. Android Asset Studio

Provided by Roman Nurik, Android Developer Advocate at Google, Android Asset Studio is a studio offering you a lot of useful tools when you develop Android applications like generators for : Launcher icons, Action bar and tab icons, Notification icons, Generic icons and Simple nine-patch. Studio is available here : http://romannurik.github.io/AndroidAssetStudio/

android asset studio

A nice fork dedicated to Material Design is also interesting to use : http://shreyasachar.com/AndroidAssetStudio/index.html

 

4. DB Browser for SQLite

SQLite is an embedded relational database that is present in standard in Android SDK. So, this is the best solution to store data in your applications. If you choose to join an SQLite existing database in your application before to load it on the device where your application is installed, you will need a good tool to manage the database.

The best tool to achieve that is DB Browser for SQLite : http://sqlitebrowser.org/ .

 

5. JSON to POJO Creator

While working on applications that consume REST Web Services with JSON format, it’s very often painful to write boilerplate code to manipulate data. A good way to increase your productivity is to use a tool that generates model classes by using only sample of your JSON format data.

JSON Schema 2 Pojo is an online tool that lets your to achieve that easily. It’s available here : http://www.jsonschema2pojo.org/ .

JSON Schema to Pojo
Besides, tool can generate annotations for libraries such GSON or Jackson.

 

6/ Tiny PNG

APK size is a big concern for all developers because it’s known that users tend to prefer application with small sizes. So, if you application uses a lot of images it can be a good idea to optimize and to shrink them to decrease file size.

A good tool to achieve that is Tiny PNG available here and usable on your browser : https://tinypng.com/ . It preserves full alpha transparency and uses smart and advanced lossy compression technique.

 

Don’t hesitate to post your best tools for Android developers in comments :).