Представляю вам список из 25 новых проектов под Android, которые, возможно, заинтересуют вас так же, как и меня. К тому же все они были опубликованы в последние три месяца.
Итак, вперёд!
1. transitioner
Transitioner это библиотека, с помощью которой можно довольно легко создавать динамические анимации между представлениями. Написана на Kotlin и поставляется под лицензией MIT, и к тому же отлично документирована.
Библиотека поддерживает уровень API 19 и выше. В проекте содержится пример проекта, показывающий весь имеющийся функционал.
2. FragmentRigger
Эта библиотека позволяет очень эффективно управлять фрагментами (Fragments). Её основная задача — сделать работу с фрагментами удобной и минимизировать основные издержки при работе с ними.
Библиотека отлично документирована, содержит пример приложения. Поставляется под лицензией MIT.
3. PRDownloader
Эта библиотека — загрузчик файлов с поддержкой приостановки загрузки.
Краткое описание из README:
С помощью PRDownloader можно скачивать любые типы файлов, такие как изображения, видео, pdf, apk и т.п.
Библиотека поддерживает приостановку и восстановление загрузки файла.
Может загружать файлы любых размеров.
Очень проста в использовании.
PRDownloader поддерживает всевозможные коллбэки, такие как onProgress, onCancel, onStart, onError и т.д. при скачивании. Может отслеживать состояние любой загрузки по её идентификатору.
Поддерживает отмену загрузки.
Параллельно может быть запущено любое количество запросов.
Легко кастомизируется.
Библиотека отлично документирована, содержит пример приложения. Поставляется под лицензией Apache-2.0.
4. AnimatedPieView
AnimatedPieView — новый подход в представлении круговых диаграмм для Android.
Бибилиотека поддерживает:
- анимации при прикосновении,
- настраиваемые промежутки между элементами,
- описание для элементов,
- callback для клика,
- эффекты при клике,
- трансформацию между круговой и кольцевой диаграммами,
- анимацию при отрисовке диаграмм.
Имеется хорошая документация и примеры использования. Поставляется под лицензией Apache-2.0.
5. FloatWindow
С помощью этой библиотеки можно добавить “Плавающее окно” поверх всех ваших представлений. Это окно может быть и в виде Floating Action button. Из картинки всё понятно:
Поставляется под лицензией Apache 2.0, хорошо документирована (правда, на китайском).
6. MyLittleCanvas
Задача этой библиотеки — облегчить работу с канвой в Android. Вместо методов теперь вы можете использовать объекты.
С её помощью можно сделать, например, вот такое симпатичное подчёркивание у TextView, как на примере выше.
Пример в README самодостаточен и очень простой. Поставляется под лицензией Apache-2.0.
7. WindowImageView
Очень интересная библиотека, представляющая ImageView в RecyclerView. Из картинки всё понятно:
В проекте есть пример приложения. Документации достаточно для того, чтобы начать и библиотека поставляется под лиц. MIT.
8. ChartView
ChartView показывает, как отрисовывать кастомные графики с помощью Canvas и ValueAnimator.
9. hyperlog-android
Это библиотека для логгирования, построена поверх стандартного класса Log в Android для хранения логов в базе данных и отправки их на удалённый сервер для отладки.
Хорошо документирована, имеется пост в блоге о её работе и пример приложения. Выложена под лиц. MIT.
10. Fairy
Fairy это небольшая утилита для отладки, позволяющая разработчикам использовать команду adb logcat для чтения Android system log на телефоне Android вместо компьютера.
Также позволяет просматривать системный журнал даже без получения root-прав.
Хорошо документирована и выложена под лиц. Apache-2.0, поддерживает Android API 21 и выше.
11. ExpansionPanel
Эта библиотека позволяет создавать раскрывающиеся панели (с возможностью редактирования элементов).
Хорошо документирована и содержит пример приложения, код выложен под лиц. Apache-2.0. Пример приложения также есть в Google Play
12. kotlin-math
Это набор API на Kotlin для более лёгкой записи математических выражений.
Поставляется под лиц. Apache-2.0.
13. TicketView
Библиотека поможет создать представление в виде билета — Ticket View. В ней 3 вида углов у TicketView: нормальный, закруглённый и зубчатый.
Поставляется под лиц. Apache-2.0, а пример приложения есть в репозитории на Github или в Google Play. Библиотека поддерживает уровень API 15 и выше.
14. Cipher.so
Эта библиотека поможет зашифровать важные данные в нативную библиотеку .so.
Как она работает? Все данные вида ключ-значение автоматически упаковываются в системную библиотеку во время компиляции. Затем эти данные могут быть получены через Java интерфейс, созданный Cipher.so.
Поставляется под лиц. Apache-2.0.
15. android-clean-architecture-mvi-boilerplate
Это форк шаблона чистой архитектуры Buffer по шаблону Model-View-Intent.
В слое представления использует ViewModels из Android Architecture Components Library. Кэширование построено с применением Room.
16. Android-Indefinite-Pager-Indicator
Лёгкий и легкоподключаемый индикатор страниц для RecyclerViews & ViewPagers.
Имеет хорошую документацию, пример приложения, множество способов кастомизации индикатора и поставляется под лиц. MIT. Миним. уровень SDK — 16.
17. daggraph
Если вы используете Dagger, возможно, вам будет интересно увидеть схему ваших зависимостей. С помощью Daggerph это очень просто сделать.
Документации немного, но достаточно для начала, проект выложен под лиц. Apache-2.0.
18. ToastCompat
Эта библиотека помогает отследить и пофиксить BadTokenException у компонента Toast.
Начиная с API 25, был добавлен новый параметр IBinder windowToken для Toast#handleShow() и как раз он вызывает BadTokenException. ToastCompat обходит эту проблему.
Более подробно можно почитать в README проекта на Github. Лицензия Apache-2.0.
19. RecyclerBanner
Это не библиотека, а пример приложения, показывающего как создать карусель с помощью RecyclerView.
В проекте нет документации, но есть пост в блоге.
20. FancyToast-Android
С помощью этой библиотеки можно сделать вывод Toast намного симпатичнее. В ней есть множество настроек стиля вывода, в т.ч. даже стилизация прямо из кода приложения.
Проект отлично документирован и имеется приложение для примера. MinSDK — 19 и лицензия Apache-2.0.
21. RecyclerViewCardGallery
Эта библиотека — форк RecyclerViewCardGallery. Вместо использования ViewPager, её автор воспользовался RecyclerView для достижения эффекта карусели и свайпа для обновления.
В проекте есть базовая документация и пример приложения, лицензия Apache-2.0.
22. ig-lazy-module-loader
Эта библиотека позволяет загружать модули приложения по требованию, только когда они нужны. Перед её использованием необходимо скомпилировать модули в отдельные jar/dex или apk файлы.
На текущий момент библиотека поддерживает загрузку java- и android-библиотек, независимых от ресурсов android.
23. retrofit2-kotlin-coroutines-adapter
Это экспериментальный адаптер Retrofit 2 для корутин Kotlin типа Deferred. Лицензия Apache-2.0.
24. CalendarPicker
Ещё одна библиотека для выбора даты из календаря. Очень гибкая в настройках — вы можете настроить размеры и цвет у всех текстовых полей, цвет фона и названия месяцев.
Лицензия MIT.
25. avocado
Это утилита командной строки (подобная svgo), оптимизирующая xml файлы Android VectorDrawable (VD) и AnimatedVectorDrawable (AVD).
Лицензия MIT.
Что она делает:
avdo переписывает VectorDrawable, используя наименьшее возможное количество
и , уменьшая размеры файлов и делающая их более оптимальными для парсинга и отрисовки во время исполнения. Посмотрите пример кода «до» и «после» применения утилиты в файле README.
На этом всё. Надеюсь, вам понравился список. Если вы можете предложить классную библиотеку или проект, созданные за последние три месяца, но при этом я не упомянул их, отпишитесь об этом в комментариях.
По материалам «25 new Android libraries and projects to check at the beginning of 2018»
Разработчик: java, kotlin, c#, javascript, dart, 1C, python, php.
Пишите: @ighar. Buy me a coffee, please :).