25 Android/Kotlin library, that you should know about it

library, that makes developer life easier

In this article we will discuss the top 25 Android(kotlin) library, that is so much user-friendly for all the Android native developers,

Every mobile developer wants to develop a smart application, that is useful for users, also as well as this application contains so much functionality that really helped users.

In this process, we need to write a lot of code that contains a lot of logic, that works all around android phones.

There is a bundle of code that contains in a form of a library, there is lots of code as well as professional logic write there,

That we all want,

So let’s come to the main point.in this article, we will discuss the top 25 android libraries, that are so much famous in Android development. Also as well as so much library Android developers community prefer,

you all agree with me, that this is the most relatable topic for all over the android developers at this time because it's the most useful library if you do asynchronous programming. These include RxJava, AsyncTasks, Jobs, Threads.
some of Kotlin Coroutines Features are Lightweight, Built-in cancellation support, Fewer memory leaks, Jetpack integration.
for more detail, you learn here,

source link:-

Dagger is a fully static, compile-time dependency injection framework for both Java and Android.

Dagger is a compile-time framework for dependency injection. It uses no reflection or runtime bytecode generation, does all its analysis at compile-time, and generates plain Java source code.

Dagger is one of the most-used dependency injection (DI) libraries in Android. It helps you generate code to provide the dependencies for your app. By using it correctly and combining it with your architecture setup, you make your dependency injection clear and distinct.

for more detail, you learn here,

source link:-

It's a database library, Room is an ORM (object-relational mapper) for SQLite database in Android. It is part of the Architecture Components released by Google.

The Room persistence library provides an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite. In particular, Room provides the following benefits:

  • Compile-time verification of SQL queries.
  • Convenience annotations that minimize repetitive and error-prone boilerplate code.
  • Streamlined database migration paths.

for more detail, check out the sample code here

Source Link:-

In Android, Parcelables are a great way to serialize Java Objects between Contexts. Compared with traditional Serialization, Parcelables take on the order of 10x less time to both serialize and deserialize.

source link:-

Retrofit is a sort of safe REST Android client created by Square. The library gives a potential framework for confirming and interfacing with APIs and sending parsing system requests in alignment with OkHttp. … This library makes downloading JSON or XML data from a web API relatively straightforward.

source link:-

In simple words, Glide is a library that load network image URL in your application. also its befit that its stored image in cache storage, means you need to load only ones, after that they manage its self. and load this in the right place.

source link:-

Espresso is an Android testing framework, that makes a reliable user interface for the test. It automatically synchronizes your test action with your action. It ensures that your activity will start before the test run.

source link:-

Icepick - Android library that eliminates the boilerplate of saving and restoring instance state. It uses annotation processing to generate code that does bundle manipulation and key generation so that you don’t have to write it yourself.

source link:-

EventBus is an open-source library for Android and Java using the publisher/subscriber pattern for loose coupling. EventBus enables central communication to decoupled classes with just a few lines of code, simplifying the code, removing dependencies, and speeding up app development.


  • simplifies the communication between components
  • decouples event senders and receivers
  • performs well with Activities, Fragments, and background threads
  • avoids complex and error-prone dependencies and life cycle issues
  • makes your code simpler
  • is fast
  • is tiny (~60k jar)
  • is proven in practice by apps with 1,000,000,000+ installs
  • has advanced features like delivery threads, subscriber priorities, etc.

source link:-

The logger is a Simple, pretty, and powerful logger for android

A Logger object is used to log messages for a specific system or application component. Loggers are normally named, using a hierarchical dot-separated namespace.

source link:-

MPAndroidChart is a powerful & easy use chart library for Android. this support

  1. LineChart
  2. LineChart (with legend, simple design)
  3. BarChart
  4. Horizontal-BarChart
  5. Combined-Chart (bar- and line chart in this case)
  6. PieChart (with selection, …)
  7. ScatterChart (with squares, triangles, circles, … and more)
  8. CandleStickChart (for financial data)
  9. BubbleChart (area covered by bubbles indicates the yValue)
  10. RadarChart (spider web chart)

source link:-

RecyclerView Animators is an Android library that allows developers to easily create RecyclerView with animations.

source link:-

Picasso is an image library for Android. It’s created and maintained by Square and caters to image loading and processing. It simplifies the process of displaying images from external locations.

source link:-

LeakCanary is a memory leak detection library for Android.

LeakCanary’s knowledge of the internals of the Android Framework gives it a unique ability to narrow down the cause of each leak, helping developers dramatically reduce OutOfMemoryError crashes.

source link:-

Fresco is a powerful system for displaying images in Android applications.

Fresco 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.

source link:-

Chuck is a simple in-app HTTP inspector for Android OkHttp clients. What it does is intercepts and persists all HTTP requests and responses inside your application, and provides a UI for inspecting the content of each request/response.

source link:-

Stetho is a sophisticated debug bridge for Android applications. When enabled, developers have access to the Chrome Developer Tools feature natively part of the Chrome desktop browser. Developers can also choose to enable the optional dumpapp a tool that offers a powerful command-line interface to application internals.

source link:-

Android-Iconics allows you to include any icon font with all its vector icons in your project. No limits. Scale with no limit, use any color at any time, provide a contour, and many additional customizations.

source link:-

Barcode scanning library for Android, using ZXing for decoding.


  1. Can be used via Intents (little code required).
  2. Can be embedded in an Activity, for advanced customization of UI and logic.
  3. Scanning can be performed in landscape or portrait mode.
  4. The camera is managed in a background thread, for fast startup time.

source link:-

libstreaming is an API that allows you, with only a few lines of code, to stream the camera and/or microphone of an android powered device using RTP over UDP.

source link:-

Running tests on an Android emulator or device is slow! The building, deploying, and launching of the app often takes a minute or more. That’s no way to do TDD. There must be a better way.

Robolectric is a framework that brings fast and reliable unit tests to Android. Tests run inside the JVM on your workstation in seconds.

source link:-

Many times we need circular images,with some of customizations like border set and all.

Mostly we use this in profile pic.

CircleImageView is a component which displays circle image with customization options.

source link:-

The easiest HTTP networking library for Kotlin/Android.


  • HTTP GET/POST/PUT/DELETE/HEAD/PATCH requests in a fluent style interface
  • Asynchronous and blocking requests
  • Download as a file
  • Upload files, Blobs, DataParts as multipart/form-data
  • Cancel asynchronous request
  • Debug logging / convert to cUrl call
  • Deserialization into POJO / POKO
  • Requests as coroutines
  • API Routing

source link:-

An image loading library for Android backed by Kotlin Coroutines.

Coil is:

  • Fast: Coil performs a number of optimizations including memory and disk caching, downsampling the image in memory, re-using bitmaps, automatically pausing/cancelling requests, and more.
  • Lightweight: Coil adds ~2000 methods to your APK (for apps that already use OkHttp and Coroutines), which is comparable to Picasso and significantly less than Glide and Fresco.
  • Easy to use: Coil’s API leverages Kotlin’s language features for simplicity and minimal boilerplate.
  • Modern: Coil is Kotlin-first and uses modern libraries including Coroutines, OkHttp, Okio, and AndroidX Lifecycles.

source link:-

The compressor is a lightweight and powerful android image compression library. The compressor will allow you to compress large photos into smaller-sized photos with very less or negligible loss in the quality of the image.

source link:-

if you got something wrong? Mention it in the comments. I would love to improve.
I am Shirsh Shukla. A creative developer and a Technology lover. You can find me on Linkedin or maybe follow me on Twitter.

Have a nice day!🙂

Android Developer | Flutter Developer | Technical Blogger at medium | community member at stackoverflow | Organizer @FlutterIndore on Twitter

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store