Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-android
A curated list of awesome Android packages and resources.
https://github.com/eric-erki/awesome-android
Last synced: 4 days ago
JSON representation
-
Emulators
-
Libraries
-
Charts
- AChartEngine - Charting Engine.
- WilliamChart - Chart library with good motion capabilities.
- HelloCharts - Chart and graph library with support for scaling, scrolling and animations.
- MPAndroidChart - An Android chart and graph library supporting scaling and dragging by gesture.
- EazeGraph - Chart and graph library.
- ArcChartView - Draw Creative Statistic Arc Charts.
-
Dependency Injection
- Dagger 2 - A fast dependency injector for Android and Java.
- Butter Knife - View "injection" library for Android.
- ActivityStarter - Android Library that provide simpler way to start the Activities with multiple arguments.
- AndroidAnnotations - Java annotations with dependency injection at compile time.
- Toothpick - A scope tree based Dependency Injection (DI) library for Java.
-
Android Services
- Remoter - An alternative to Android AIDL for Android Remote IPC services using plain java interfaces.
- Service Connector - Bind Android services and callbacks to fields and methods.
-
Game Development
- Libgdx - Cross-platform game engine and SDK. [Open Source](https://github.com/libGDX/libGDX)
- Unity - Cross-platform game creation system.
- Rajawali - Android OpenGL ES 2.0/3.0 Engine
- JustWeEngine - An easy open source Android Native Game FrameWork.
-
Security
- libsignal-protocol-java - A ratcheting forward secrecy protocol that works in synchronous and asynchronous messaging environments.
- Themis - Multi-language framework for making typical encryption schemes easy to use: data at rest, authenticated data exchange, transport protection, authentication, and so on.
-
GUI
- Pull to refresh - A swipe refresh layout is available in the v4 support library.
- Cardslib - Android Library to build a UI Card.
- AndroidStaggeredGrid - Grid view which supports multiple columns with rows of varying sizes.
- Flow - Library that helps with describing an app as a collection of moderately independent screens.
- SortableTableView - An Android library containing a simple TableView and an advanced SortableTableView providing a lot of customisation possibilities to fit all needs.
- AndroidFillableLoaders - Fillable progress view working with SVG paths. Nice option too for creating interesting app logos.
- NexusDialog - Allows you to easily and quickly create forms in Android with little code.
- Snap RecyclerView Utils - Populate Single or multiple Layout RecyclerView without creating an Adapter.
- MultiSnapRecyclerView - Android library for multiple snapping of RecyclerView
- SwipeableCard - Implementation of swipe card like StreetView!!
- ElasticProgressBar - Beautiful loading bar.
- EntryScreenManager - Intro/Entry/Walkthrough/Starting Screens.
- EasyIntro - The flexible, easy to use, all in one app intro library for your Android project.
- Material-Calendar-View - Material Design Calendar compatible with API 8+
- CrunchyCalendar - A material calendar widget with infinite scrolling, date range selection and color customization.
- SectionedRecyclerViewAdapter - An Adapter that allows a RecyclerView to be split into Sections with headers and/or footers.
- DragListView - Drag and drop to reorder items in a list, grid or board.
- Animated Expanding ListView - Animated Expanding ListView provides a fancy animation on expanding or collapsing the content of a listview item.
- TastyToast - Toasts with icons and color.
- DotLoader - A customizable loading animation with Dots.
- PodSlider - A customizable slider widget adhering to material design specs.
- TapTargetView - An implementation of tap targets from the Material Design guidelines for feature discovery.
- ShowCaseView - The ShowcaseView library is designed to highlight and showcase specific parts of apps to the user with a attractive and flat overlay.
- MaterialIntroScreen - Material Intro Screen implementation with easily extensible API.
- FloatingView - FloatingView can make the target view floating above the anchor view with cool animation.
- Timecon - Easy-to-use animated clock icon
- Audiogram - Lightweight audiowave progressbar
- Bubbles for Android - Facebook like chat bubble library
- Litho (By Facebook) - A declarative framework for building efficient UIs on Android.
- MultiViewAdapter - Recyclerview Adapter library to create composable view holders.
- LGSnackbar - An easy to use and customisable wrapper of the native Android Snackbar which stays visible across multiple activities.
- ShimmerLayout - Memory efficient shimmering effect for Android applications.
- CircleProgressBar - A simple library for creating circular progressbars for Android.
- Easy-Signature-Android - An simple ui library that provides a plugable signature view.
- Flashbar - A highly customizable, powerful and easy-to-use alerting library for Android.
- NoPaginate - Simple Android pagination library
- FadingActionBar - Fading action bar effect that can be seen in the new Play Music app.
- SlidingMenu - Library to create applications with slide-in menus.
- SlidingTutorial - Simple library that helps to create awesome sliding android app tutorials.
- PagerSlidingTabStrip - An interactive indicator to navigate between the different pages of a ViewPager.
- Page View indicator - Support for horizontally scrolling ViewPager.
- RecyclerTabLayout - An efficient TabLayout library implemented with RecyclerView.
- MaterialDrawer - Simple take on a material design navigation drawer.
- Floating-Navigation-View - A simple Floating Action Button that shows an anchored Navigation View.
- Android View Animations - Cute view animation collection.
- Android-Transition - Allows the easy creation of view transitions that react to user inputs.
- Android-View-Actions - Makes creating complex animations for views easy.
- Spotlight - Android Library that lights items for tutorials or walk-throughs etc...
- Crescento - Explore new style in material design by adding curve below image view.
- android-crop - Library project for cropping images.
- CircularImageView - Custom view for circular images while maintaining the best draw performance.
- Android-Image-Filter - Library project for applying image filters easily.
- Compressor - Compressor is a lightweight and powerful android image compression library.
- ShapeImageView - Library to display images in different shapes.
- FloatingLabel - FloatingLabel Allows you to create a blow kind of EditText. *Doesn't have Gradle or Maven Support.*
- MaterialEditText - Supporting Floating Labels, Single Line Ellipsis, Max/Min Characters, Helper Text and Error Text with Custom Colors.
- MaterialSearchBar - Material Design Search Bar for Android
- InputMask - Pattern-based user input formatter, parser and validator.
- SweetPassword - Password EditText that allows to custom toggle button
- Material Dots Indicators - Three Material Dots Indicators styles for View Pagers.
- Picasso - A powerful image downloading and caching library for Android.
- Universal Image Loader - Asynchronous, out of the box loading and caching of images.
- Glide - An image loading and caching library for Android focused on smooth scrolling, Recommended by Google.
- Fresco - An Android library for managing images and the memory they use.
- Glide Bitmap Pool - Glide Bitmap Pool is a memory management library for reusing the bitmap memory.
- MediaPicker - Android Library that lets you to select multiple images, video or voice for Android
- ijkplayer - Android/iOS video player based on FFmpeg n3.2, with MediaCodec, VideoToolbox support.
- Exoplayer - ExoPlayer is an application level media player for Android, allow playing audio and video both locally and over the Internet.
- VideoPlayView - Custom Android view with video player, play/stop, loader and placeholder image.
- MagicalCamera - Simple way to take or select photos of your gallery, with other features for manage pictures.
- Camera - Use Android camera to take pictures and videos, based on camera2 api.
- Convalida - A simple and annotation-based way to validate your input fields.
-
JSON
- Gson - Gson is a Java library used for serializing and deserializing Java objects from and into JSON.
- Jackson JSON Processor - High-performance JSON processor.
- Moshi - A modern JSON library for Android and Java.
-
Crash monitoring
- HockeyApp - Distribution, Crash Reports, Feedback and Analytics
- Splunk MINT - Monitoring, Crash Reports, Real time data, Statistic.
- Bugsnag - Cross platform error monitoring. Free tier. Support for SDK & NDK. Error reports include data on device, release, user, and allows arbitrary data.
- Catcho - No Force Close any more.
-
Networking
- Ion - Good networking library for android.
- OkHttp - An HTTP+SPDY client for Android and Java applications.
- RoboSpice - Library that makes writing asynchronous network requests easy.
- IceNet - Fast, Simple and Easy Networking for Android
- IceSoap - Easy, asynchronous, annotation-based SOAP for Android.
- node-android - Run Node.js on Android.
- HappyDns - A Dns library, user can use custom dns server, dnspod httpdns. Only support A record.
- RESTMock - HTTP Web server for mocking API responses in Android Instrumentation tests.
- Packetzoom - SDK for optimizing HTTP requests and free analytics service for networking.
- Fast-Android-Networking - A Complete Fast Android Networking Library that also support HTTP/2.
-
Logger
- logger - Simple, pretty and powerful logger for android
- timber - A logger with a small, extensible API which provides utility on top of Android's normal Log class.
- LoggingInterceptor - An OkHttp interceptor which pretty logs request and response data.
- Bugfender - Upload your logs and check them online, specially made for mobile
- EzyLogger - Simple Lightweight logger
- Logback Android - Logback port to Android which provides a highly configurable logging framework for Android apps.
-
Notifications
- android-remote-notifications - Pulls notifications from a remote JSON file and shows them in your app.
- Android HeartBeat Fixer - Way to set heartbeat interval and users receive PushNotifications from GCM.
-
Database
- Cupboard - Access the sqlite easily via direct database access or through the ContentProvider framework.
- DbInspector - Provides a simple way to view the contents of the in-app database for debugging purposes.
- SQLite Asset Helper - manage database creation and version management using an application's raw asset files.
- Realm - The alternative to SQLite and ORMs: Simple, modern and fast! Object oriented API and multi platform support.
- Realm Asset Helper - Copies a realm database from the apk assets folder. Efficiently handles versioning of read-only realm databases.
- RestorableSQLiteDatabase - A wrapper to replicate android's SQLiteDatabase with restoring capability.
- requery - Compile time ORM and SQL query library for Java & Android.
- Sugar ORM - Insanely easy way to work with Android Databases.
- NexusData - Object graph and persistence framework for Android.
- SimpleNoSQL - 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.
- RxSimpleNoSQL - Reactive extensions for SimpleNoSQL. Manipulate entities using Observables.
-
Testing
- Robotium - Test automation framework for black-box UI tests.
- AssertJ Android - AssertJ assertions geared towards Android.
- Green Coffee - Run your Cucumber tests in your Android instrumentation tests.
-
Tracking
- MobileAppTracking - Tracking your marketing campaigns across multiple ad networks.
- Mixpanel - Analytics platform to analyze the users.
-
Maps
- Google-Directions-Android - Allows you to calculate the direction between two locations and display the route on a Google Map using the Google Directions API.
- Android Maps Extensions - Extending capabilities of Google Maps Android API v2, adding marker clustering among other things
- MapScaleView - Scale bar for Google Maps Android API
- GLMap - Crossplatform offline vector map with MapCSS styling. Offline search and offline navigation are included.
-
Utility
- Conceal SharedPreferences - Secured Preferences using Facebook Secure Encryption called Conceal.
- EventBus - EventBus is a library that simplifies communication between different parts of your application.
- Otto - Event Bus for Android.
- Weak handler - Memory safer implementation of android.os.Handler.
- Secure Preference Manager - Secure Preference Manager for android. It uses various Encryption to protect your application's Shared Preferences.
- LeakCanary - Catch memory leaks as they occur.
- Drekkar - An Android event bus for WebView and JS.
- Androl4b - A vm for assessing android applications.
- DroidMVP - Android library to help you incorporate MVP along with Passive View and Presentation Model patterns into your app.
- Gota - Simplifying Android Permissions.
- EasyDeviceInfo - Get device information in a super easy way.
- Ask-Permission - Simple RunTime permission manager.
- Shutter-Android - Capture photos/videos from device camera or get photos/video from gallery app with no runtime permissions needed.
- Validator - An utilities class to validate text inside TextInputLayout.
-
Debugging Tools
- Linx - Show logcat inside the device for debug builds
- Scalpel - View the entire hierarchy in 3d in the phone.
- Android Debug Database - Android Debug Database is a powerful library for debugging databases and shared preferences in Android applications.
- Android Debug Bridge - ADB - a command-line tool to assist in debugging Android-powered devices
- ADB Enhanced - a command-line wrapper around ADB for developers, so that, developers don't have to remember esoteric version-dependent commands
- Pidcat - a colored command-line ADB wrapper that only shows log entries for a specific application package
-
Wireless
- SmartGattLib - Simplifies the work with Bluetooth SMART devices (a.k.a. Bluetooth Low Energy in Bluetooth 4.0).
-
Chat & Messaging
- Applozic Android Chat SDK - Android Chat and Messaging SDK for adding real time chat and in-app messaging into your android application.
- Qiscus SDK - Qiscus SDK is a lightweight and powerful android chat library. Qiscus SDK will allow you to easily integrating Qiscus engine with your apps to make cool chatting application.
- Kommunicate Live Chat SDK - Kommunicate provides open source live chat sdk in android. Kommunicate lets you add real time live chat and in-app messaging in your mobile (android, iOS) applications and website for customer support.
- MediaRecorderDialog - Custom Dialog to record audio, store it and play it in your phone.
- HijriDatePicker - offers a hijri (Islamic Calendar) Date Picker designed on Google's Material Design Principals For Pickers.
- Noty - A simple library for creating animated alerts/dialogs/warnings.
-
Other
- Sensey - Detecting gestures in a snap.
- UserAwareVideoView - A customized video view that will automatically pause video is user is not looking at device screen!
- Google Play Services - 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.
- Tape - A lightning fast, transactional, file-based FIFO for Android and Java.
- Guava: Google Core Libraries for Java - Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.
- Android Scripting - Allows to run scripting languages on Android.
- Android Priority Job Queue - Implementation of a Job Queue to easily schedule jobs (tasks) that run in the background, improving UX and application stability.
- RateMeMaybe - Asks the user if (s)he wants to open the Play Store to rate your application.
- Easy Rating Dialog - Lib provides a simple way to display an alert dialog for rating app.
- ZXing Android-Integration - Integration with Barcode Scanner via Intent.
- Gradle Retrolambda Plugin - Java 8 Lambdas on Android!
- Caffeine - A collection of utility classes that help make Android development faster.
- AboutLibraries - Automatically generates an About this app section, with a list of used libraries.
- AudioPlayerView - A view that loads audio from an url and have basic playback tools.
- andle - command line tool help you sync dependencies, sdk or build tool version.
- Typography - An Android library that makes it easy to use custom fonts in views.
- Calligraphy - Custom fonts in Android an OK way.
- transai - command line tool help you manage localization string files.
- Android-Link-Preview - It makes a preview from an url, grabbing all the information such as title, relevant texts and images.
- Agile Boiler Plate - The boiler plate is based on MVP architecture and it is fully based on Dependency Injection design pattern using Dagger2.
- RxJava - RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
- RxBinding - RxBinding – RxJava binding APIs for Android UI widgets from the platform and support libraries.
- Flexbox Layout - FlexboxLayout is a library which brings the similar capabilities of CSS Flexible Box Layout Module to Android.
-
Version Checking
- AppUpdater - comprehensive and feature rich library, including support for checks at Amazon and FDroid.
- Gandalf - comprehensive features and a "companion" iOS solution.
- Siren - focused feature set that mimicks the popular iOS library of the same name. Supports Play and Amazon.
- Fit - version checking callback framework with no UI.
-
Date & Time
- ThreeTen Android Backport - An adaptation of the JSR-310 backport for Android.
- Joda-Time Android - Joda-Time library with Android specialization.
- True Time - Android NTP time library. Get the true current time impervious to device clock time changes.
-
Runtime Permissions
- Permission Dispatcher - Simple annotation-based API to handle runtime permissions.
- RxPermissions - Android runtime permissions powered by RxJava.
- NoPermission - Simple Android library for permissions request. Consists of only one class.
-
Data binding
- Anvil - A small library to create reactive UI components, inspired by React. Provides data binding and event listener binding, fits well for MVVM.
-
Cloud Services
- CloudRail - Unified API Library for: Cloud Storage, Social Profiles, Payment, Email, SMS & POIs.
-
-
Resources
-
Other
- Programming Community Curated Resources for Learning Android Development - Android Tutorials & Courses submitted and voted by the programming community.
- Developing for Android - 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?".
- Android Action Bar Style Generator
- Device Art Generator - Wraps app screenshots in real device artwork.
- Android UI design resources - Gives you wide variety of design resources form a Google Developer Expert in UI/UX.
- Pencil Project - An open source prototyping software.
- android-blogs - List with blogs about Android.
- Future Studio - Extensive Android tutorials on Retrofit, Picasso, Glide & Gson.
- Android Tips & Tricks - Cheatsheet about tips and tricks for Android Development.
- Droid Talks - Awesome Android talks and learning resources, categorised by topic.
- Associate Android Developer Certification Materials - A collection of materials for getting ready for the test.
- Mindorks - Become a complete and happy Android developer.
-
Podcast
- Android Developers Backstage - depth discussions and interviews with engineers on the Android team at Google.
- The Context
-
More lists of libraries
- The Android Arsenal - Large list of android libraries
- Android Store - Search Android Libraries, Projects, and Tools.
-
-
Development Alternatives
-
C#
- Xamarin - Framework to create native iOS, Android, Mac and Windows apps in C#.
-
HTML, CSS and Javascript
- Titanium - Open-source framework to create 'native' cross platform apps using JavaScript.
- React Native - A framework for building native apps with React by Facebook.
- Apache Cordova - Cordova based applications are, at the core, applications written with web technology: HTML, CSS and JavaScript.
- Capacitor - Build cross-platform Native Progressive Web Apps for iOS, Android, and the web. Very promising Cordova alternative.
- PhoneGap - Open source framework by Adobe to create cross platform mobile apps using HTML, CSS, and JavaScript.
-
Lua
- Corona SDK - Framework to create native iOS and Android Apps (especially Games).
-
Scala
- Scaloid - Library for less painful Android development with Scala.
-
Groovy
- Groovy on Android - Introduction to Groovy on Android.
- Groovy Language Support for Android - Gradle Plugin for Compiling Groovy for Android.
-
Kotlin
- Anko - DSL for Android written in Kotlin by JetBrains.
- Kotterknife - Android view injection written in Kotlin based on ButterKnife
- Android Kotlin Samples - Some basic Android code samples written in Kotlin.
- KAndroid - Lightweight library providing useful extensions to eliminate boilerplate code in Android SDK.
- RxKotlin/Pocket - This app help user to save links easily, and can export to Evernote as weekly.
- Android Clean Architecture - Kotlin - A base project using the Uncle Bob's clean architecture with Kotlin language and the latest Android technologies.
- Koin - Lightweight dependency injection framework for Kotlin
-
Flutter
- awesome-android-performance - A list of awesome Android tutorials, videos and tools for performance optimization.
- awesome-awesomeness
-
Programming Languages
Sub Categories
GUI
72
Other
35
Utility
14
Database
11
Networking
10
Kotlin
7
Charts
6
Chat & Messaging
6
Debugging Tools
6
Logger
6
HTML, CSS and Javascript
5
Dependency Injection
5
Maps
4
Crash monitoring
4
Game Development
4
Version Checking
4
JSON
3
Runtime Permissions
3
Testing
3
Date & Time
3
Android Services
2
Podcast
2
Groovy
2
Flutter
2
Security
2
Tracking
2
Notifications
2
More lists of libraries
2
Scala
1
Cloud Services
1
Wireless
1
C#
1
Lua
1
Data binding
1
Keywords
android
93
java
34
android-library
33
kotlin
19
material-design
8
ui
8
kotlin-android
7
android-ui
7
android-development
7
ios
5
rxjava
5
material
5
mobile
4
gradle
4
animation
4
library
4
recyclerview
3
awesome
3
libraries
3
okhttp
3
javascript
3
database
3
sqlite
3
encryption
3
sharedpreferences
3
permissions
3
android-sdk
3
dialog
3
progressbar
2
log
2
logger
2
adb
2
logging-library
2
video
2
picker
2
security
2
swift
2
toast
2
chat
2
clock
2
chatbot
2
snackbar
2
time
2
kotlin-library
2
bitmap
2
photos
2
cordova
2
glide
2
onboarding
2
calendar
2