
Durante el verano de 2018, se desarrollaron y actualizaron muchas excelentes bibliotecas y herramientas de Android.
He compilado la lista desordenada más reciente de bibliotecas, herramientas y proyectos de Android que pueden ser interesantes o útiles durante su trabajo diario. También son excelentes para la inspiración o la experimentación.
Espero que lo disfrutes. ¡Empecemos!
Esta es una biblioteca que ofrece un conjunto de LayoutManagers para RecyclerView que lo ayudarán a lograr efectos como el gif a continuación.

Estos LayoutManagers básicamente extienden RecyclerView.LayoutManager
o simplemente LinearLayoutManager
y les agregan funcionalidades adicionales.
Esta biblioteca tiene documentación muy concisa, pero el código habla por sí solo. La mejor manera de entender la biblioteca es mirar una aplicación de ejemplo y ver en ella una implementación de Activities
y Fragments
.
La biblioteca se lanzó bajo la licencia Apache 2.0, y realmente vale la pena prestarle atención.
Creative View Pager es una implementación interesante de ViewPager
, que agrega una lista de encabezados que se desplaza suavemente junto con el contenido de las páginas.

La documentación es completa y explica cómo usar la biblioteca. Lanzado bajo la licencia Apache 2.0 y escrito casi por completo en Kotlin.
Instabug es una herramienta para recopilar comentarios y errores para aplicaciones móviles. Con unos pocos pasos simples, sus usuarios o beta testers podrán informar errores o dejar comentarios, y el SDK recordará el estado del entorno del dispositivo del usuario, incluidos todos los registros de consola, solicitudes de red y pasos para reproducir el error, recopilando toda esta información en un panel para una depuración fácil y correcciones de errores.

Durante una actualización reciente, se corrigieron muchos errores. Puede leer más sobre estos cambios aquí . Por lo tanto, Instabug le permite:
He estado usando Instabug desde 2016 cuando estaba buscando una herramienta que ayudara a mi equipo y a nuestros usuarios. Te lo recomiendo mucho.
Este es un widget de verificación para Android basado en EventFilterView desde una aplicación escrita específicamente para Google I / O 2018. Requiere minSdkVersion
21.

Un buen archivo README le permite comenzar a trabajar rápidamente con el widget. La implementación inicial fue desarrollada por Nick Butcher y Jose Alkerreka de Google.
El widget se publica bajo la licencia Apache 2.0 y está escrito en Kotlin.
Este es un calendario ligero, potente y fácil de usar.

Ofrece una serie de características útiles:
- desplazamiento vertical infinito en ambas direcciones;
- establecer marcos de tiempo para limitar el desplazamiento dentro de un cierto período;
- selección de una fecha, varias fechas o rangos de tiempo;
- fechas predeterminadas seleccionadas;
- ajustes de color;
- visualización de indicadores de color;
- configurando su propia
ItemDecoration
; - Al ser el heredero de la clase
View
, se puede usar en cualquier lugar: en Activity
, Fragment
, Dialog
, o se puede integrar en otro componente de View
personalizado.
Gran documentación con muchos ejemplos. También hay una aplicación de ejemplo en Github y Google Play .
Este proyecto se publica bajo la licencia MIT.
Esta es una biblioteca de navegación dinámica en la aplicación inspirada en Google Inbox y Reply .

InboxRecyclerView
se puede agregar de forma segura a cualquier proyecto existente. Puede echar un vistazo a la aplicación de muestra y descargar su APK para verla en su teléfono.
El autor también escribió un artículo muy bueno sobre la biblioteca. Definitivamente vale tu atención. Lanzado bajo la licencia Apache 2.0.
Esta es una biblioteca pequeña pero interesante que sugiere que use SlideBackView
dentro de una Activity
. Para entender de qué se trata, mira el gif a continuación.

Desafortunadamente, la documentación es bastante escasa y está escrita en chino. No lo usaría en mi proyecto, sino que solo experimentaría con él. Sin embargo, puede estudiar la aplicación y la biblioteca en sí. Se publica bajo la licencia MIT.
Esta biblioteca crea dibujables mediante programación y elimina archivos duplicados de drawable.xml
.

Lanzado bajo la licencia Apache 2.0. Hay documentación completa y funciona con API 14 y superior.
Esta biblioteca está escrita por el mismo desarrollador que escribió DrawableToolbox. Este es solo otro widget de color.

Esta biblioteca proporciona buena documentación. Lanzado bajo la licencia Apache 2.0 y funciona con API 14 y superior. Si necesita la funcionalidad del selector de color en su aplicación, esta es una gran opción.
La biblioteca es simplemente enorme. MvRx (pronunciado " disidentes ") es un marco de Android de Airbnb que utilizan para casi todos sus productos.
MvRx hace que el desarrollo de pantallas de aplicaciones, desde las más simples hasta las más complejas, sea más simple de lo que es inicialmente. Sin embargo, todo está construido sobre componentes existentes, como fragmentos o componentes arquitectónicos, por lo que no lo limita y puede usarse fácilmente en sus proyectos.
El objetivo principal era crear aplicaciones más rápido y con menos esfuerzo. MvRx utiliza las siguientes tecnologías y conceptos:
- Kotlin
- Componentes arquitectónicos de Android
- RxJava;
- Reaccionar (concepto);
- Epoxi (recomendado).
El marco se publica bajo la licencia Apache 2.0. La documentación y el wiki son simplemente geniales. La wiki tiene una versión de tl;dr
, y hay una versión regular, con todas las explicaciones necesarias para comprender el concepto.
Si ha oído hablar de Redux , sus conceptos básicos y sus tres principios , probablemente comprenderá de inmediato de qué trata esta biblioteca.
RxRedux es una implementación basada en RxJava (inspirada en redux-observable ) que ayuda a neutralizar los efectos secundarios (un efecto secundario es una función como (Observable <Action>, StateAccessor <State>) -> Observable <Action>
).

RxRedux es un tipo de reemplazo para el operador .scan()
en RxJava. README está bien escrito y se complementa perfectamente con este artículo . La biblioteca se publica bajo la licencia Apache 2.0.
Este es un SeekBar
personalizado inspirado en el control deslizante de emoji de Instagram .

El proyecto tiene muy buena documentación y una aplicación de ejemplo. Lanzado bajo la licencia Apache 2.0.
Esta es una biblioteca que ayuda a implementar acciones de deslizamiento de material en un RecyclerView. Naturalmente, está escrito de acuerdo con los principios del diseño de materiales.

Gracias a la buena documentación, es fácil de modificar. El proyecto se publica bajo la licencia MIT.
Esta es una biblioteca que puede guardar cualquier componente de View
o SurfaceView
como una imagen en los siguientes formatos: JPG/PNG/nomedia
. La biblioteca se ejecuta en el hilo de fondo, manejando errores de entrada / salida y administrando la asignación de memoria.
Puede usarlo para tomar capturas de pantalla dentro de su aplicación (por ejemplo, para informar un error).
Es bastante fácil de usar, y la documentación existente es suficiente para comenzar. Se lanza bajo la licencia Apache 2.0 y es compatible con API 19 y superior.
WiseFy es un contenedor para WifiManager
y ConnectivityManager
para Android. Agrega configuraciones fáciles de alto nivel, por ejemplo:
- agregar y eliminar redes;
- comprobar la conexión del dispositivo;
- verificar la red actual;
- Enciende y apaga el wifi y mucho más.

Esta no es una biblioteca nueva, pero recientemente ha habido una gran refactorización en ella, y ha sido completamente reescrita en Kotlin.
La documentación es buena y detallada. Licencia: Apache 2.0.
MVICore es un marco MVI moderno de Badoo Tech , que incluye:
- 100% Kotlin: una manera fácil de implementar las funciones de su negocio en modo reactivo;
- Escalado: puede trabajar con un solo componente Reductor, pero si es necesario, puede agregar tantos como necesite para manejar casos más complejos;
- Procesamiento de eventos: hay una solución para procesar eventos cuyo estado no desea almacenar;
- Vinculación de componentes reactivos: una API muy simple para vincular sus componentes reactivos junto con la gestión automática del ciclo de vida;
- Logger fuera de la caja;
- Depurador temporal: para todos sus componentes reactivos (y no solo para las variables de entorno) puede registrar su estado a tiempo y luego verlo.
El marco tiene muy buena documentación . Si desea reescribir su aplicación al estilo de MVI, debe prestar atención a esta solución.
Esta biblioteca puede ser útil al desarrollar sus propios componentes de View
. Por ejemplo, dicho disco de teléfono giratorio se puede usar como un reemplazo para el indicador de descarga.

El proyecto tiene un README corto. Y fue lanzado bajo la licencia Apache 2.0. Está escrito completamente en Kotlin.
Esta es una biblioteca interesante que convierte una página HTML simple en un RecyclerView desde widgets nativos de Android, basado en la biblioteca Jsoup e inspirado en Medium Textview .

Esta biblioteca aún está en desarrollo, así que úsela con precaución en sus proyectos. La documentación es buena y explica fácilmente cómo usar la biblioteca. Lanzado bajo la licencia Apache 2.0.
He mencionado repetidamente esta biblioteca, pero gracias a los esfuerzos del equipo Buffer , todavía está evolucionando. Actualmente muestran cómo usar Koin en lugar de Dagger para inyectar dependencias.

La biblioteca se publica bajo la licencia MIT.
Splitties es una colección de pequeñas bibliotecas independientes de Android, cuyo objetivo es hacer que el desarrollo de aplicaciones y bibliotecas para Android sea simple y divertido. Realmente me gusta esta idea.
Este proyecto se llama "Splitties" porque está dividido en pequeños módulos distribuidos como bibliotecas independientes de Android, por lo que puede agregar solo los que realmente necesita a su proyecto, lo que ayuda a reducir el tamaño del archivo apk final.
Cada módulo está diseñado para que, con su pequeño tamaño, sea lo más eficiente posible.
La documentación es buena, el proyecto se publica bajo la licencia Apache 2.0.
Esta es una pequeña biblioteca de marcas de agua de imagen que también admite marcas de agua cifradas e invisibles.

La biblioteca es bastante poderosa y ofrece crear varias marcas de agua, elegir un modo de dibujo y una forma de cargar recursos (como texto, como un componente View
o como un recurso Android). La documentación es buena, todavía hay una aplicación de ejemplo.
La biblioteca se publica bajo la licencia Apache 2.0.
Esta es la segunda colección de bibliotecas en este artículo. Esta vez del equipo de Mozilla , y puede ser útil al crear navegadores o aplicaciones similares.
El siguiente diagrama muestra algunos de los componentes disponibles.

Hay 4 aplicaciones de muestra en el proyecto que demuestran el uso de varios componentes. También tiene buena documentación y se publica bajo la licencia MPL 2.0.
Esta biblioteca vincula RxJava y RxKotlin con Biometric Prompt (un escáner de huellas digitales) en Android (agregado a Android 9 Pie, API 28+).

Según el blog oficial de los desarrolladores de Android , si utiliza sus propios mecanismos de autorización a través de huellas digitales en su aplicación, debe cambiar a la API de BiometricPrompt lo antes posible.
RxBiometric lo ayudará a hacer esto a través de la transmisión RxJava. Tiene documentación confiable con ejemplos de uso. Lanzado bajo la licencia Apache 2.0.
Esta es una biblioteca que extiende BottomNavigationView
de Google y le permite verlo desde un ángulo muy interesante.

El proyecto está escrito en Kotlin. Lanzado bajo la licencia Apache 2.0, y tiene una aplicación de ejemplo que usa la biblioteca.
Esta es una extensión de Kotlin LiveData
que convierte el código en cadenas de llamadas, como RxJava, del equipo de Shopify. Si usa LiveData
de los componentes arquitectónicos de Android, puede reemplazarlo fácilmente con LiveData KTX
y crear tales cadenas, como se muestra en el siguiente ejemplo:

El proyecto es desarrollado por cuatro desarrolladores y lanzado bajo la licencia MIT.
Tumbleweed es una rama de Universal-Tween-Engine que te permite crear interpolaciones suaves para cada atributo de cada objeto en tus proyectos.

Tumbleweed difiere del proyecto original de varias maneras:
Tweens
cambios de Tweens
y Tweens
Timelines
se Tweens
(la declaración e implementación de Tweens
se Tweens
);- la interpolación se encapsula creando un tipo específico (
TweenType<T>
); - eliminó el grupo (una fuente constante de comportamiento inesperado) y mucho más.
Contiene documentación completa y se publica bajo la licencia Apache 2.0. También tiene una aplicación de ejemplo .
Stylist es un proyecto creado por los desarrolladores de Uber . Este es un complemento de Kotlin Gradle que genera un conjunto básico de temas de Android. Por ejemplo, si desea determinar el tamaño del texto en los temas oscuros y claros de la aplicación, creará la siguiente clase:

Y obtienes los temas XML generados:

El proyecto se lanza bajo la licencia Apache 2.0.
Esta es una pequeña biblioteca que proporciona preferencias reactivas compartidas. Está diseñado específicamente para su uso con Kotlin.
Usando una instancia de RxkPrefs
, puede obtener preferencias. Pero este no será el valor bruto de preferencia, sino una instancia de la interfaz Pref
, que proporciona más funcionalidad.
La biblioteca se publica bajo la licencia Apache 2.0.
Esta biblioteca ofrece una manera fácil de reemplazar dinámicamente los recursos de cadena de su aplicación o agregar nuevos idiomas sin tener que publicar una nueva versión en Google Play. Como funciona
La filología no cambia la forma en que se utilizan los recursos en el desarrollo de aplicaciones. En cambio, se lleva a cabo una introducción a este proceso: se intercepta el valor devuelto por sus archivos dentro de la aplicación y se verifica si hay un valor más nuevo en el servidor. Esto le permite eliminar errores tipográficos, mejorar el idioma o incluso agregar un nuevo idioma. Todo en tiempo real, sin la necesidad de lanzar una nueva versión de la aplicación.
Esta es una muy buena idea. La biblioteca se publica bajo la licencia Apache 2.0. El proyecto contiene una aplicación de ejemplo, así como documentación realmente completa.
Este es el cliente WebSocket
inspirado en Retrofit para Kotlin y Java del equipo de Tinder. La biblioteca está bien documentada y descrita en este artículo .
También puede ver su uso en la aplicación para verificar el tipo de cambio de Bitcoin en tiempo real.
Scarlet es administrado por StateMachine , también desarrollado por el equipo de Tinder.

El proyecto se publica bajo la licencia BSD 3-Cláusula.
Conclusión
Eso es todo! Espero que hayas disfrutado esta lista y que algunos proyectos te hayan inspirado. Si conoce alguna otra biblioteca grande que se haya lanzado en los últimos 5 meses, y no he mencionado esto, hágamelo saber en los comentarios.
Lea también otras colecciones relacionadas:
“25 entretenidas bibliotecas de Android. Primavera 2018
"10 bibliotecas que todo desarrollador de Android debería conocer"
"7 bibliotecas para el desarrollo de Android en Kotlin"