/UsefulLibraries

This is repository for any developer to find some of the most common and used libraries.

Apache License 2.0Apache-2.0

UsefulLibraries

This is repository for any developer to find some of the most common and used libraries.

  • These are some of the important libraries that every developer should be knowing In this I am including libries that contain only Andriod specific libraries for any other technology please edit this file and create pull request!
  1. MaterialDrawer - https://github.com/mikepenz/MaterialDrawer
  • Easy to use
  • Latest Material Drawer Design according to guide lines
  • Optimized for android devices
  • Support for Account Header
  • Support for many many customizable elements like swith etc in Drawer
  1. Glide - https://github.com/bumptech/glide
  • Easy to use
  • Support for GIF animation images also
  • Optimized Image loading
  • Support for circular image loading
  • Support for error and placeholder image
  1. ButterKnife - https://github.com/JakeWharton/butterknife
  • No need of findViewById anymore in java
  • Binding of click handlers also
  • Easy to implement many other functionality like LongClickHandler etc...
  • Faster Binding of elements
  1. Room
  • Room is an official Android ORM
  • Additionally, Room includes out of the box support for Rx and “LiveData,” so you can decide to use it however you like
  1. Picasso Some of the pitfalls that Picasso takes care of include handling ImageView recycling and downloading cancelation in an adapter, facilitating complex image transformations using minimal memory, automatic memory, and caching. Picasso automatically detects adapter re-use and the previously canceled download.

It easily and effectively transforms images to make them fit better into layouts and reduce memory size.

For more advanced effects, one can specify custom transformations.

  1. CalendarView https://github.com/kizitonwose/CalendarView
  • It has lots of features:
  • Single or range selection
  • Week or month mode
  • Boundary dates
  • Custom calendar view
  • Horizontal- or vertical-scrolling mode
  • Fully customizable views
  1. MaterialDateTimePicker https://github.com/wdullaer/MaterialDateTimePicker
  • Material DateTime Picker tries to offer you the date and time pickers as shown in the Material Design spec, with an easy themable API.
  • The library uses the code from the Android frameworks as a base and tweaked it to be as close as possible to Material Design example.
  • Support for Android 4.1 and up. (Android 4.0 was supported until 3.6.4)
  1. Expenso
  • This is a simple application for tracking your expenses.
  • The project was built to showcase the usage of Android modern development components based on MVVM architecture, like: Coroutines
  • Android Architecture Components, especially: Stateflow, Flow, ViewModel , Room, Jetpack Navigation, DataStore, and Material Components for Android The documentation is really good and presents the overall project structure and architecture.
  1. TimeRangePicker
  • Here’s a customisable, easy-to-use, and functional circular time range picker library:
  • The project is 100% written in Kotlin and was created to mimic Apple’s iOS or Samsung’s bedtime picker. It has good documentation, which also helps with the first configuration.
  • The library is copyrighted under an MIT license.
  1. Retrofit
  • Retrofit is a type-safe HTTP client for Android and Java developed and maintained by Square (the same company that supports Picasso). Retrofit is the most used networking library in Android development. In Retrofit, with just annotations, you can easily add a request body, manipulate endpoints, manipulate headers, add query parameters, and choose request methods. Retrofit also handles parsing to POJOs very well by using converters.
  1. Dagger2
  • Dagger2 is a fully static, compile-time dependency injection framework for both Java and Android. It is an upgrade to the earlier version (Dagger1) created by Square that is now maintained by Google. The recent Dagger version includes Android specific helpers for Android. Specifically, the auto-generation of subcomponents using a new code generator. Dagger2 is very deep and may require just more than the brief sample usage for adequate understanding, but let's take a look at it anyway.
  1. Calligraphy -[x] Calligraphy is one of the most popular custom font libraries available and it is quite easy to get along with. With this library, we can easily declare a single font across our whole application or define fonts individually to a text.

  2. Android-job

  • [x]Android-job is an Android library used to handle jobs in the background. Depending on the Android version either the JobScheduler, GcmNetworkManager or AlarmManager will be used. This is why this library wins the heart of all. Instead of using separate APIs within one codebase and checking for API versions to know which scheduling API to use, Android-job reduces our code size together with the stress and does this for us. This library requires API 14 (Android 4.0) or later.