Your first time on this page? Allow me to give some explanations.
Awesome Android
A curated list of awesome Android packages and resources.
Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.
Thank you JStumpp & contributors
View Topic on GitHub:
JStumpp/awesome-android
Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.
Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.
Emulators
Charts
Charting library for Android applications. Automatically exported from code.google.com/p/achartengine
An Android chart and graph library
Android Library to rapidly develop attractive and insightful charts in android applications.
Charts/graphs library for Android compatible with API 8+, several chart types with support for scaling, scrolling and animations
A powerful 🚀 Android chart view / graph view library, supporting line- bar- pie- radar- bubble- and candlestick charts as well as scaling, panning and animations.
Arc Chart View (Draw Creative Statistic Arc Charts)
AnyChart Android Chart is an amazing data visualization library for easily creating interactive charts in Android apps. It runs on API 19+ (Android 4.4) and features dozens of built-in chart types.
Cloud Services
Unified API Library for: Cloud Storage, Social Profiles, Payment, Email, SMS & POIs.
Data binding
Minimal UI library for Android inspired by React
Official Android Data Binding Library to write declarative layouts and minimize the glue code necessary to bind application logic and layouts.
Dependency Injection
A fast dependency injector for Android and Java.
Simple Android Library, that provides easy way to start the Activities with arguments.
Fast Android Development. Easy maintainance.
A scope tree based Dependency Injection (DI) library for Java / Kotlin / Android.
Android Services
Remoter - An alternative to Android AIDL for Android Remote IPC services using plain java interfaces
Bind Android services and callbacks to fields and methods.
Game Development
Android OpenGL ES 2.0/3.0 Engine
An easy open source Android Native Game FrameWork.
Security
Signal Protocol library for Java/Android
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
GUI
Android Library to build a UI Card
An Android staggered grid view which supports multiple columns with rows of varying sizes.
Name UI states, navigate between them, remember where you've been.
An Android library containing a simple TableView and an advanced SortableTableView providing a lot of customisation possibilities to fit all needs.
Material Design ProgressBar with consistent appearance
Android fillable progress view working with SVG paths. This is a nice option too if you want to create an interesting branding logo for your app. Based on the iOS project: https://github.com/poolqf/FillableLoaders
Library that allows you to easily and quickly create forms in Android with little code
No need to implement an Adapter for every RecyclerView. Snap Adapters initializes in a single line and comes with endless loader and multiple layout.
Android library for multiple snapping of RecyclerView
A simple implementation of swipe card like StreetView
Elastic Progress Bar Renew!
Entry Screens for Android
The flexible, easy to use, all in one app intro library for your Android project.
📅 Material Design Calendar compatible with API 11+
A beautiful material calendar with endless scroll, range selection and a lot more!
Small custom view with smooth overscroll. You can add header with scale background
An Adapter that allows a RecyclerView to be split into Sections with headers and/or footers. Each Section can have its state controlled individually.
Drag and drop to reorder items in a list, grid or board for Android. Based on RecyclerView. Also supports swiping items in a list.
Animated Expanding ListView provides a fancy animation on expanding or collapsing the content of a listview item.
Make your native android Toasts Tasty
A cool customizable loading animation with Dots
A UI slider widget for android
An implementation of tap targets from the Material Design guidelines for feature discovery
The ShowcaseView library is designed to highlight and showcase specific parts of apps to the user with an attractive and flat overlay.
Inspired by Heinrich Reimer Material Intro and developed with love from scratch
FloatingView can make the target view floating above the anchor view with cool animation
Easy-to-use animated clock icon for Android
Lightweight audiowave progressbar for Android
Bubbles for Android is an Android library to provide chat heads capabilities on your apps. With a fast way to integrate with your development.
A declarative framework for building efficient UIs on Android.
Easily create complex recyclerview adapters in android
An easy to use and customisable wrapper of the native Android Snackbar which stays visible across multiple activities.
DEPRECATED - Memory efficient shimmering effect for Android applications by Supercharge.
A simple library for creating circular progressbars for Android
Android library which provides a signature view.
⚡️A highly customizable, powerful and easy-to-use alerting library for Android.
Customizable Item Setting View Android
A curated collection of splendid gradients made in Kotlin
A Viewholderless Adapter for RecyclerView, who supports builtin diffing, states (paging, empty...), events (clicking, swiping...), and more.
A swipe refresh layout is available in the v4 support library.
Paginate
Android pagination library (updated 01.05.2018)
ActionBar
Android library implementing a fading effect for the action bar, similar to the one found in the Play Music app
Navigation
An Android library that allows you to easily create applications with slide-in menus. You may use it in your Android apps provided that you cite this project and include the license in your app. Thanks!
Android Library for making animated tutorials inside your app
An interactive indicator to navigate between the different pages of a ViewPager
Paging indicator widgets compatible with the ViewPager from the Android Support Library and ActionBarSherlock.
An efficient TabLayout library implemented with RecyclerView.
The flexible, easy to use, all in one drawer library for your Android project. Now brand new with material 2 design.
Debug menu for happy android dev
A simple Floating Action Button that shows an anchored Navigation View
Animations
A Java library that models spring dynamics and adds real world physics to your app.
Cute view animation collection.
Allows the easy creation of animated transition effects when the state of Android UI has changed
Actions for android animations. Inspired by libgdx scene2d actions.
Android library for swipable gestures
Android Library that lights items for tutorials or walk-throughs etc...
Images
Add curve at bottom of image views and relative layouts.
Android library project for cropping images
Custom view for circular images in Android while maintaining the best draw performance
some android image filters
An android image compression library.
Custom shaped android imageview components
Inputs
Android Floating Label
EditText in Material Design
Migrated:
Material Design Search Bar for Android
User input masking library repo.
🔑A customizable EditText for Android with a switchable eye which shows or hides the password
🗣 An overlay that gets your user’s voice permission and input as text in a customizable UI
View Pagers
Three material Dots Indicators for view pagers in Android !
Loading Images
A powerful image downloading and caching library for Android
Powerful and flexible library for loading, caching and displaying images on Android.
An image loading and caching library for Android focused on smooth scrolling
An Android library for managing images and the memory they use.
Glide Bitmap Pool is a memory management library for reusing the bitmap memory
Image loading for Android backed by Kotlin Coroutines.
Media Picker
Media Picker is an Android Libary that lets you to select multiple images or video
Image Picker for Android 🤖
Video
Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support.
An extensible media player for Android
Custom Android view with video player, loader and placeholder image
Camera
A library to take picture easy, transform your data in different format and save photos in your device
📸 Use Android camera to take pictures and videos, based on camera2
api.
Field Validation
A simple, lightweight and powerful field validation library for Android.
JSON
A Java serialization/deserialization library to convert Java Objects into JSON and back
Main Portal page for the Jackson project
A modern JSON library for Kotlin and Java.
Crash monitoring
No Force close messages anymore!
Cross platform error monitoring. Free tier. Support for SDK & NDK. Error reports include data on device, release, user, and allows arbitrary data.
Cross platform crash reporting/analytics solution. Supports NDK log.
Networking
Android Asynchronous Networking and Image Loading
Square’s meticulous HTTP client for the JVM, Android, and GraalVM.
Repo of the Open Source Android library : RoboSpice. RoboSpice is a modular android library that makes writing asynchronous long running tasks easy. It is specialized in network requests, supports caching and offers REST requests out-of-the box using extension modules.
Easy, asynchronous, annotation-based SOAP for Android
Run Node.js on Android by rewrite Node.js in Java
dns library for android
HTTP Server for Android Instrumentation tests
🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀
Official Android HTTP library that makes networking for easier and faster.
Logger
✔️ Simple, pretty and powerful logger for android
A logger with a small, extensible API which provides utility on top of Android's normal Log class.
An OkHttp interceptor which has pretty logger for request and response. +Mock support
Example application using Bugfender SDK in Android
Simple Logger for Android
📄The reliable, generic, fast and flexible logging framework for Android
Notifications
Pulls notifications from a remote JSON file and shows them in your app.
Way to set heartbeat interval and the User receive PushNotifications from GCM. Based on related post in Google Forums about HeartBeat problem.
Database
Android library for viewing and sharing in app databases.
An Android helper class to manage database creation and version management using an application's raw asset files
Realm is a mobile database: a replacement for SQLite & ORMs
A small library to help with Realm.IO integration in Android apps
A wrapper around Android's SQLiteDatabase with restoring capability
Java embedded nosql document store
Access the sqlite easily via direct database access or through the ContentProvider framework.
ORM
requery - modern SQL based query & persistence for Java / Kotlin / Android
A blazing fast, powerful, and very simple ORM android database library that writes database code for you.
Core Data for Android
A simple NoSQL client for Android. Meant as a document store using key/value pairs and some rudimentary querying. Useful for avoiding the hassle of SQL code.
Reactive extensions for SimpleNoSQL
Lightweight ORM Java package for JDBC and Android.
REST
Support for Spring's RestTemplate within native Android applications
Testing
Android UI Testing
A set of AssertJ helpers geared toward testing Android.
Android library that allows you to run your acceptance tests written in Gherkin in your Android instrumentation tests.
Unit test framework to run tests inside the JVM on your workstation, not in the emulator.
Tracking
Tracking your marketing campaigns across multiple ad networks.
Open source, mobile & web analytics, crash reports and push notifications platform for iOS & Android.
Analytics platform and user-engagement platform with 1 million free events
Maps
This project allows you to calculate the route between two locations and displays it on a map.
Android Maps Extensions is a library extending capabilities of Google Maps Android API v2.
Scale bar for Android Maps (Google Maps, OSM, MapBox, Yandex)
Crossplatform offline vector map with MapCSS styling. Offline search and offline navigation are included.
Utility
Android Secure SharedPreferences Using Facebook Conceal Encryption
An enhanced Guava-based event bus with emphasis on Android support.
Memory safer implementation of android.os.Handler
Secure Preference Manager for android. It uses various Encryption to protect your application's Shared Preferences.
A memory leak detection library for Android.
An Android event bus for WebView and JS.
A Virtual Machine For Assessing Android applications, Reverse Engineering and Malware Analysis
Small Android library to help you incorporate MVP, Passive View and Presentation Model patterns in your app
[Android Library] Get device information in a super easy way.
It's finally easy to take photos/videos via camera or get photos/videos from gallery on Android.
A tool to validate text inside TextInputLayout
A DSL to handle soft keyboard visibility change event written in Kotlin.
A simple and easy to use stopwatch and timer library for android
Reactor is key value database and is a great alternative to Shared Preferences.
EventBus is a library that simplifies communication between different parts of your application.
Debugging Tools
Lynx is an Android library created to show a custom view with all the information Android logcat is printing, different traces of different levels will be rendererd to show from log messages to your application exceptions. You can filter this traces, share your logcat to other apps, configure the max number of traces to show or the sampling rate used by the library.
A surgical debugging tool to uncover the layers under your app.
Stetho is a debug bridge for Android applications, enabling the powerful Chrome Developer Tools and much more.
A library for debugging android databases and shared preferences - Make Debugging Great Again
ADB Usage Complete / ADB 用法大全
🔪Swiss-army knife for Android testing and development 🔪 ⛺
Colored logcat script which only shows log entries for a specific application package.
Remote iOS and Android debugging and data collection service. You can debug networking, logs, CoreData, SQLite, NSNotificationCenter and mock device's geo location.
Wireless
SmartGattLib is a Java library that simplifies the work with Bluetooth SMART devices
Chat & Messaging
Android Real Time Chat & Messaging SDK
Qiscus provide everything you need to power up your app with chats. And it's now made simple.
Kommunicate.io Android Chat SDK for Customer Support
CometChat Demo App for Android
Build a one-one-one Android chat app in Kotlin within few minutes using CometChat Pro. This tutorial discusses the features such as login, getting list of contacts, user presence indicators, sending/receiving messages etc.
Comprehensive SDK & Components for real-time chat, powered by Stream.
Add push notifications in your Android chat apps in Kotlin with the help of CometChat Pro and Firebase Cloud Messaging (FCM).
Custom Dialog
Android has a built in microphone through which you can capture audio and store it , or play it in your phone. There are many ways to do that but with this dialog you can do all thats with only one dialog.
Material (Gregorian - Hijri) Date & Time Picker
A simple library for creating animated warnings/dialogs/alerts for Android.
Version Checking
A library that checks for your apps' updates on Google Play, GitHub, Amazon, F-Droid or your own server. API 9+ required.
Easily notify a user with a simple alert, inform them of an optional update, and in dire situations block the user from accessing older versions of the application completely.
Notify users when a new version of your Android app is available, and prompt them with the Play Store link. A port of the iOS library of the same name.
Framework for dispatching various procedure on update application.
Date & Time
An adaptation of the JSR-310 backport for Android.
Joda-Time library with Android specialization
Android NTP time library. Get the true current time impervious to device clock time changes
Runtime Permissions
A declarative API to handle Android runtime permissions.
Android runtime permissions powered by RxJava2
Android library for permissions request (updated 27.11.2017)
Ask Permission - Simple RunTime permission manager
Simplifying Android Permissions
Simplify Android M system permissions
Payments
Integrate Square payments into your mobile app with Digital wallet and stored card support for quick checkout.
Other
A lightning fast, transactional, file-based FIFO for Android and Java.
Google core libraries for Java
SL4A brings scripting languages to Android by allowing you to edit and execute scripts and interactive interpreters directly on the Android device.
A Job Queue specifically written for Android to easily schedule jobs (tasks) that run in the background, improving UX and application stability.
A plug and play ;) android library for displaying a "rate this app" dialog
ZXing ("Zebra Crossing") barcode scanning library for Java, Android
A gradle plugin for getting java lambda support in java 6, 7 and android
RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
RxJava bindings for Android
RxJava binding APIs for Android's UI widgets.
Speed up your Android development
AboutLibraries is a library to offer some information of libraries.
AudioPlayerView is an Android view that loads audio from an url and have basic playback tools.
andle is an Android tool help you sync dependencies, sdk or build tool version.
DEPRECATED. Use the native and support library variants instead - https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html. An android library that makes it easy to add custom fonts to edittexts and textviews
Custom fonts in Android the easy way...
transai is a localization tool on Android and iOS.
It makes a preview from an url, grabbing all the information such as title, relevant texts and images. This a version for Android of my web link preview https://github.com/LeonardoCardoso/Link-Preview
[Android Library] Play with sensor events & detect gestures in a breeze.
A customized video view that will automatically pause video is user is not looking at device screen!!!!!
Flexbox for Android
A boiler plate that can be re-used to start android apps
Life is too short to google for dependencies and versions
Android library that manages your app's cached data with ease.
The Android Support Library package is a set of code libraries that provide backward-compatible versions of Android framework API.
Library to access Google services, such as account syncing, Google+ (sharing, single sign-on), Google Maps, Location APIs, Google Play Games, Cloud Messaging, Android Device Manager, and others.
Resources
Blogs about Android
[Cheatsheet] Tips and tricks for Android Development
All the info and materials about the certification that I've collected so far
Android Tutorials & Courses submitted and voted by the programming community.
The video series by Android Design Team of Google.
It is the technical counterpart of Android Design in Action series.
A series of articles from Googler Chet Hasae and others, answering most commonly asked question: "What are some of the important rules to keep in mind when developing Android applications?".
Generator for icons and other assets.
Wraps app screenshots in real device artwork.
Gives you wide variety of design resources form a Google Developer Expert in UI/UX.
Video tutorials by Derek Banas.
Extensive Android tutorials on Retrofit, Picasso, Glide & Gson.
Google Developers Official Training page has list of various useful learning resources for beginner as well seasoned developer.
Become a better Android Engineer. A website dedicated to Android Development covering advanced topics such as RxJava, Android Zygote and much more.
Code examples
A collection of samples to discuss and showcase different architectural tools and patterns for Android apps.
MVVM(Model View ViewModel) sample in Kotlin using the components ViewModel, LiveData and Retrofit library
Android Viper template with Kotlin, Dagger 2, Retrofit & RxJava
Learn How to use Google Map API for Android from Basic to Advance with complete examples.
📚 Sample Android Components Architecture on a modular word focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.
Podcasts
Podcast about Android Development with Hannes Dorfmann, Artem Zinnatullin, Artur Dryomov and wonderful guests!
is the Android developer podcast where Donn Felker and Kaushik Gopal talk about building good software and becoming better Android developers.
is a podcast by and for Android developers. Hosted by developers from the Android engineering team, this show covers topics of interest to Android programmers, with in-depth discussions and interviews with engineers on the Android team at Google.
is a video based podcast, where they have bite-sized conversations with people from the Android community.
is a weekly Android podcast hosted by Adam Doud, Joe Hindy, and Jonathan Feist from the Android Authority team.
is a weekly Android podcast hosted by the Android Central team.
More lists of libraries
C#
Framework to create native iOS, Android, Mac and Windows apps in C#.
HTML, CSS and Javascript
A framework for building native apps with React.
Apache Cordova Android
Build cross-platform Native Progressive Web Apps for iOS, Android, and the Web ⚡️
Open source framework by Adobe to create cross platform mobile apps using HTML, CSS, and JavaScript.
Open-source framework to create 'native' cross platform apps using JavaScript.
An open-source framework to build native iOS and Android apps with JavaScript from a single code base.
A framework to build hybrid apps with mobile-optimized HTML, CSS and JS with AngularJS.
Lua
Framework to create native iOS and Android Apps (especially Games).
Scala
Scaloid makes your Android code easy to understand and maintain.
A modular functional UI language for Android
Groovy
A Gradle plugin to support the Groovy language for building Android apps
A multi-purpose library containing view injection and threading for Android using annotations
Kotlin
Pleasant Android application development
View "injection" library for Android.
Some basic samples of Kotlin for Android
🧩 Kotlin coding puzzle and solutions
Kotlin library for Android
This is a first kotlin project
Using Uncle Bob's clean architecture with Kotlin language and the latest Android technologies(Rx, Dagger2 etc.).
Flutter
Google's mobile app SDK for high-quality native interfaces for Android and iOS in very quick time.
Performance
Android performance optimization tutorials, videos and tools list(Android性能优化视频,文档以及工具)
🚀Optimizer for mobile applications