📜 ⬆️ ⬇️

30 Android libraries and tools that shouldn't pass you by in 2018

30 Android libraries and tools that shouldn't pass you by in 2018


During the summer of 2018, many excellent Android libraries and tools were developed and updated.


I have compiled the newest unordered list of Android libraries, tools, and projects that may be interesting or useful during your daily work. They are also great for inspiration or experimentation.


I hope you will like it. Let's start!


1. LayoutManagerGroup


This is a library that offers a set of LayoutManagers for RecyclerView, which will help achieve effects such as the gif below.


LayoutManagerGroup


These LayoutManagers basically extend RecyclerView.LayoutManager or simply LinearLayoutManager and add additional functionality to them.


This library has very laconic documentation, but the code speaks for itself. The best way to understand the library is to look at an example application and see the implementation of Activities and Fragments in it.


The library is released under the Apache 2.0 license, and you really should pay attention to it.


2. Creative View Pager


Creative View Pager is an interesting implementation of the ViewPager , which adds a list of titles that smoothly scrolls along with the content of the pages.


Creative View Pager


The documentation is exhaustive and explains how to use the library. Released under the Apache 2.0 license and written almost entirely on Kotlin.


3. Instabug


Instabug is a tool for collecting feedback and errors for mobile applications. Thanks to a few simple steps, your users or beta testers will be able to report errors or leave feedback, and the SDK will remember the state of the user's device environment, including all console logs, network requests and steps to reproduce the error, collecting all this information on one panel for easy debugging. and bug fixes.


Instabug


In a recent update, many bugs were fixed. You can read more about these changes here . Thus, Instabug allows you to:



I have been using Instabug since 2016, when I was looking for a tool that would help my team and our users. I highly recommend it to you.


4. CheckableChipView


This is a check widget for Android based on an EventFilterView from an application written specifically for Google I / O 2018. It requires minSdkVersion 21.


CheckableChipView


A good README allows you to quickly start working with a widget. The initial implementation was developed by Nick Butcher and José Alkerreka from Google.


The widget is released under the Apache 2.0 license and is written in Kotlin.


5. CrunchyCalendar


This is a lightweight, powerful and easy to use calendar.


Crunchycalendar


It offers a number of useful features:



Remarkable documentation with many examples. There is also an example application on Github and Google Play .


This project is released under the MIT license.


6. InboxRecyclerView


This is a library for creating dynamic in-app navigation, inspired by Google Inbox and Reply .


InboxRecyclerView


InboxRecyclerView can be safely added to any existing project. You can take a look at the sample application and download its APK to view it on your phone.


The author also wrote a really good article about the library. She is definitely worthy of your attention. Released under the Apache 2.0 license.


7. SlideBack


This is a small but interesting library that suggests you to use SlideBackView inside the Activity . To understand what this is all about, take a look at the gif below.


Slideback


Unfortunately, the documentation is rather scant and is written in Chinese. I would not use it in my project, but only experimented with it. However, you can explore the application and the library itself. It is released under the MIT license.


8. DrawableToolbox


This library creates drawables programmatically and eliminates duplicate drawable.xml files.


DrawableToolbox


Released under the Apache 2.0 license. There is complete documentation and works with API 14 and higher.


9. ColorPicker


This library is written by the same developer who wrote DrawableToolbox. This is just another widget for choosing color.


Colorpicker


This library provides quite good documentation. Released under the Apache 2.0 license and works with API 14 and higher. If you need color selection functionality in your application, then this is a great option.


10. MvRx


The library is huge. MvRx (pronounced “ mavericks ”) is an Android framework from Airbnb that they use for almost all their products.


MvRx makes the development of application screens, from the simplest to the most complex, simpler than it is originally. However, it builds everything on top of existing components, such as fragments or architectural components, so it does not limit you and can be easily applied in your projects.


The main goal was to create applications faster and with less effort. MvRx uses the following technologies and concepts:



The framework is released under the Apache 2.0 license. The documentation and wiki is great. The wiki has a version of tl;dr , and there is a regular one, with all the explanations necessary to understand the concept.


11. RxRedux


If you have heard about Redux , its basic concepts and three principles , you will probably immediately understand what this library is about.


RxRedux is an implementation based on RxJava (inspired by redux-observable ) that helps neutralize side effects (a side effect is a function of the (Observable <Action>, StateAccessor <State>) -> Observable <Action> ).


RxRedux


RxRedux is a kind of replacement for the .scan() operator in RxJava. The README is well written and perfectly complemented by this article . The library is released under the Apache 2.0 license.


12. Emoji Slider


This is a custom SeekBar , inspired by Emoji-slider from Instagram .


Emoji slider


The project has very good documentation and sample applications. Released under the Apache 2.0 license.


13. Covert


This is a library that helps implement Material Swipe Actions in RecyclerView. Naturally, it is written in accordance with the principles of Material Design.


Covert


Thanks to good documentation it is easy to set The project is released under the MIT license.


14. PixelShot


This is a library that can save any View component or SurfaceView as an image in the following formats: JPG/PNG/nomedia . The library runs in a background thread, handling I / O errors and managing memory allocation.


You can use it to take screenshots inside your application (for example, for an error message).


It is quite easy to use, and existing documentation is enough for a start. It is released under the Apache 2.0 license and supports API 19 and higher.


15. WiseFy


WiseFy is a shell for WifiManager and ConnectivityManager for Android. It adds light high-level settings, for example:



Wisefy


This is not a new library, but recently there has been a huge refactoring in it, and it has been completely rewritten to Kotlin.


The documentation is good and detailed. License: Apache 2.0.


16. MVICore


MVICore is a modern Badoo Tech MVI framework, which includes:



The framework has really good documentation . If you want to rewrite your application in the style of MVI, then you should pay attention to this decision.


17. DialerLoading


This library can be useful when developing your own View components. For example, such a rotating phone dial can be used as a replacement for the download indicator.


Dialerloading


There is a short README in the project. And it is released under the Apache 2.0 license. Written entirely on Kotlin.


18. HtmlRecycler


This is an interesting library that converts a simple HTML page into RecyclerView from native Android widgets, based on the Jsoup library and inspired by Medium Textview .


HtmlRecycler


This library is still under development, so use it with care in your projects. The documentation is good and explains in an easy way how to use the library. Released under the Apache 2.0 license.


19. Android Clean Architecture Components Boilerplate


I have repeatedly mentioned this library, but thanks to the efforts of the Buffer team, it is still developing. They are currently showing how to use Koin instead of Dagger for dependency injection.


Android Clean Architecture Components Boilerplate


The library is released under the MIT license.


20. Splitties


Splitties is a collection of small independent Android libraries, the purpose of which is to make the development of Android applications and libraries simple and fun. I really like this idea.


This project is called “Splitties” because it is divided into small modules distributed as independent Android libraries, so you can add to your project only those that you really need, which helps reduce the size of the final apk-file.


Each module is designed to be as efficient as possible with its small size.


The documentation is good, the project is released under the Apache 2.0 license.


21. AndroidWM


This is a small library for watermarks on images, which also supports encrypted and invisible watermarks.


AndroidWM


The library is quite powerful and suggests creating several watermarks, choosing a drawing mode and a way to load resources (as text, as a View component or as an Android resource). The documentation is good, there is also an example application.


The library is released under the Apache 2.0 license.


22. Android components


This is the second collection of libraries in this article. This time from the Mozilla team, and it can be useful during the creation of browsers or applications similar to the browser.


The diagram below shows some of the available components.


Android components


There are 4 sample applications in the project that demonstrate the use of various components. It also has good documentation, and it is released under the MPL 2.0 license.


23. RxBiometric


This library links RxJava and RxKotlin with Biometric Prompt (fingerprint scanner) on Android (added in Android 9 Pie, API 28+).


Rxbiometric


According to the official blog of Android developers , if in your application you use your own fingerprint authorization mechanisms, then you should switch to using the BiometricPrompt API as soon as possible.


RxBiometric helps you make it through the RxJava stream. It has reliable documentation with examples of use. Released under the Apache 2.0 license.


24. EnhancedNavigationView


This is a library that extends Google's BottomNavigationView and allows you to look at it from a very interesting angle.


EnhancedNavigationView


The project is written in Kotlin. Released under the Apache 2.0 license, and it has a sample application using the library.


25. livedata-ktx


This is Kotlin's LiveData extension that turns code into call chains, like RxJava, from the Shopify command. If you use LiveData from the architectural components of Android, then you can easily replace it with LiveData KTX and create such chains, as shown in the example below:


livedata-ktx


The project is being developed by four developers and released under the MIT license.


26. Tumbleweed


Tumbleweed is a branch from Universal-Tween-Engine that allows you to create smooth interpolations for each attribute of each object in your projects.


Tumbleweed


Tumbleweed differs from the original project in several features:



It contains comprehensive documentation and is released under the Apache 2.0 license. It also has an example application .


27. Stylist


Stylist is a project created by Uber developers . This is a gradle-plugin written in Kotlin that generates a basic set of Android themes. For example, if you want to determine the text size in the dark and light themes of the application, you will create the following class:


Dark and Light themes with Stylist


And you get the generated XML themes:


XML theme with stylist


The project is released under the Apache 2.0 license.


28. RxkPrefs


This is a small library that provides reactive shared preferences. It is designed specifically for use with Kotlin.


Using an instance of RxkPrefs , you can get preferences. But it will not be a raw preference value, but an instance of the Pref interface, which provides more functionality.


The library is released under the Apache 2.0 license.


29. Philology


This library offers an easy way to dynamically replace the string resources of your application or add new languages ​​without the need to publish a new version on Google Play. How it works?


Philology does not change the way resources are used when developing an application. Instead, it is implemented into this process: the value returned from your files inside the application is intercepted and it is checked whether there is a newer value on the server. This allows you to remove typos, improve wording, or even add a new language. All in real time, without the need to release a new version of the application.


This is a really good idea. The library is released under the Apache 2.0 license. The project contains an example of the application, as well as really complete documentation.


30. Scarlet


This is an inspired Retrofit WebSocket client for Kotlin and Java from the Tinder team. The library is well documented and described in this article .


You can also see its use in the application for checking the Bitcoin rate in real time.


Scarlet is managed using StateMachine , also developed by the Tinder team.


Scarlet


The project was released under the BSD 3-Clause license.


Conclusion


That's all! I hope you enjoyed this list, and some projects have inspired you. If you know any other big library that has been released in the last 5 months, and I didn’t mention it, please let me know in the comments.


Also read other similar collections:
“25 fun Android libraries. Spring 2018 "
“10 Libraries Every Android Developer Should Know”
"7 libraries for Android development on Kotlin"

')

Source: https://habr.com/ru/post/431400/


All Articles