Awesome Android – Massive Collection Of Resources – You Ever Wondered To Get!
About
A curated list of awesome Android libraries and resources. For general Java libraries have a look at awesome-java.
Understand How Your Android App is Doing with Real-Time Contextual Insights From Your Users
Instabug helps Android developers and product teams easily collect bugs and feedback from beta testers and users to iterate faster and ship quality apps. Instabug automatically attaches screenshots, device details, network logs, repro steps, and tons of other critical insights needed to resolve issues and prioritize product backlogs. Mobile teams accelerate their workflows by seamlessly integrating with third-party tools like Github, Jira, Slack, Zendesk and much more. Instabug is offering Awesome Android community an exclusive 15% discount on all paid plans. Get Started!
How to Use
Awesome-Android is an amazing list for people who need a certain feature on their app, so the best ways to use are:
- Simply press command + F to search for a keyword
- Go through our Content Menu
Content
- Emulators
- Libraries
- Resources
- Development Alternatives
- Performance
- Other Awesome Lists
- Contributing
Emulators
Libraries
Charts
- AChartEngine – Charting Engine.
- EazeGraph – Chart and graph library.
- 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.
- ArcChartView – Draw Creative Statistic Arc Charts.
- AnyChart – Data visualization library, Interactive charts.
Cloud Services
- CloudRail – Unified API Library for: Cloud Storage, Social Profiles, Payment, Email, SMS & POIs.
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.
- Data Binding Library – Official Android Data Binding Library to write declarative layouts and minimize the glue code necessary to bind application logic and layouts.
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
- Vuforia – Augmented Reality library.
- Unity – Cross-platform game creation system.
- Rajawali – Android OpenGL ES 2.0/3.0 Engine
- Cocos2d-x – Cross-platform 2d game framework.
- 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.
- MaterialProgressBar – Material design ProgressBar with consistent appearance.
- 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.
- SmoothOverscrollableScrollView – Small custom view with smooth overscroll. You can add header with scale background
- 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.
- YuanaItemSettingView – Customizable Item Setting View for Android.
- Gradients – A curated collection of splendid gradients.
- OneAdapter – RecyclerView Adapter with multiple modules and hooks to simplify and enhance the use while preventing common mistakes.
Paginate
- NoPaginate – Simple Android pagination library
ActionBar
- ActionBarSherlock – ActionBar for older Android versions.
- FadingActionBar – Fading action bar effect that can be seen in the new Play Music app.
Navigation
- 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.
- Debug-Artist – Debug menu to enable leakcanary, scalpel and others easy.
- Floating-Navigation-View – A simple Floating Action Button that shows an anchored Navigation View.
Animations
- Rebound – Rebound is a Java library that models spring dynamics.
- 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.
- Swipper – Android library for swipeable gestures to control volume , brightness and seek .
- Spotlight – Android Library that lights items for tutorials or walk-throughs etc…
Images
- 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.
Inputs
- 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.
- EmojiCompat – Adds emoticons to your app
- 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
- VoiceOverlay – An overlay that gets your user’s voice permission and input as text in a customizable UI.
View Pagers
- Material Dots Indicators – Three Material Dots Indicators styles for View Pagers.
Loading Images
- 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.
- Coil – Image loading for Android backed by Kotlin Coroutines.
Media Picker
- MediaPicker – Android Library that lets you to select multiple images, video or voice for Android
- Android Image Picker – A library that makes images and videos selection from gallery feels easy. It also support GIF and simple camera action
Video
- 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. Supports features like Dynamic adaptive streaming over HTTP (DASH), SmoothStreaming and Common Encryption
- VideoPlayView – Custom Android view with video player, play/stop, loader and placeholder image.
Camera
- 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.
Field Validation
- Convalida – A simple and annotation-based way to validate your input fields.