Android Must Have Libraries That You Should Use in Every Project

Public on April 29, 2017
Library Name & URLDescription
Android Debug DatabaseAndroid Debug Database is a powerful library for debugging databases and shared preferences in Android applications. It’s a very simple tool for viewing databases and shared preferences directly in your browser.
Android GPU ImageIt provides Android filters based on OpenGL in an efficient way.
ButterKnifeButterknife is a view binding tool that uses annotations to generate boilerplate code for us. This tool is essentially used to save typing repetitive lines of code like findViewById( when dealing with views thus making our code look a lot cleaner.
DaggerA fast dependency injector for Android and Java. It simplifies access to shared instances, makes easy configuration of complex dependencies, makes unit and integration testing easier and much more.
Device Year ClassDevice Year Class is an Android library that implements a simple algorithm that maps a device’s RAM, CPU cores, and clock speed to the year where those combination of specs were considered high end. This allows a developer to easily modify application behavior based on the capabilities of the phone’s hardware.
EventBusAndroid optimized event bus that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality.
ExoPlayerExoPlayer is an application level media player for Android. It provides an alternative to Android’s MediaPlayer API for playing audio and video both locally and over the Internet. ExoPlayer supports features not currently supported by Android’s MediaPlayer API, including DASH and Smooth Streaming adaptive playbacks.
Fast Android NetworkingFast Android Networking is built on top of OkHttp engine to make networking very simple (No boilerplate Code). When it comes to networking, this library makes every developer’s life a whole lot easier. It is a light-weight and fast networking library. Use it, you will love it.
FrescoFresco is a powerful system for displaying images in Android applications. It takes care of image loading and display, so you don’t have to. It will load images from the network, local storage, or local resources, and display a placeholder until the image has arrived. It has two levels of cache, one in memory and another in internal storage.
GlideGlide is a fast and efficient open source media management and image loading framework for Android that wraps media decoding, memory and disk caching, and resource pooling into a simple and easy to use interface. It is focused on smooth scrolling.
GreenDaoGreenDAO is an open source Android ORM making development for SQLite databases fun again. It relieves developers from dealing with low-level database requirements while saving development time
GSONA Java serialization/deserialization library that can convert Java Objects into JSON and back.
HugoAnnotation-triggered method call logging for your debug builds. As a programmer, you often add log statements to print method calls, their arguments, their return values, and the time it took to execute. This is not a question. Every one of you does this. Shouldn’t it be easier? Simply add @DebugLog to your methods and you will automatically get all of the things listed above logged for free.
LeakCanaryLeakCanary is a memory leak detection library for Android and Java.
MPAndroidChartA powerful Android chart view, graph view library, supporting line- bar- pie- radar- bubble- and candlestick charts as well as scaling, dragging and animations.
Network Connection ClassNetwork Connection Class is an Android library that allows you to figure out the quality of the current user’s internet connection. The connection gets classified into several “Connection Classes” that make it easy to develop against. The library does this by listening to the existing internet traffic done by your app and notifying you when the user’s connection quality changes. Developers can then use this Connection Class information and adjust the application’s behaviour (request lower quality images or video, throttle type-ahead, etc).
OkHttpOkHttp is an HTTP+HTTP/2 client for Android and Java applications. When it comes to networking in Android, nothing beats this Http engine.
RealmSimple saving. Fast queries. Save weeks of development time. Realm Mobile Database is an alternative to SQLite.
RxJavaRxJava — Reactive Extensions for the JVM — a library for composing asynchronous and event-based programs using observable sequences for the Java VM. Learn RxJava By Examples from here.
TimberA logger with a small, extensible API which provides utility on top of Android’s normal Log class.

[Advertising]Faster Thinking - Speed up your brain

Faster Thinking Game

sentiment_satisfied Emoticon