Android Broadcast
14.2K subscribers
3.51K photos
338 videos
11 files
5.87K links
Подборка новостей и статей для Android разработчиков.

Связь с автором @android_broadcast_bot
Реклама @android_broadcast_bot

РКН https://abdev.by/rkn_tg_ab
Download Telegram
Пишите ли вы какие-то библиотеки (Android или нет неважно)?
Anonymous Poll
15%
Да, open-source
28%
Да, внутренние в компании
7%
Раньше писал
50%
Нет
#Animation #Tooling

Experimenting with motion in Android

Как сделать красивую анимацию на Android? В этом поможет коллаборация с вашим дизайнером и выбор правильного инструмента. Все надо делать в векторе. В статье обозревается:
1️⃣ Sketch + Android Studio
2️⃣ Shapeshifter
3️⃣ AfterEffects + Lottie
#RecyclerView

OneAdapter

Столкнулся с библиотекой, которая упрощает работу с RecyclerView (да знаю что их много, но почему-то именно эта вызвала интерес). Основные преимущества:
👉 Больше не нужно работать с RecyclerView.Adapter
👉 Отображение каждого типа элементов организовано по модульной архитектуре, что позволяет эффективно повторно использовать логику и использовать Dependency Injection
👉 Поддержка DiffUtil в более простом варианте
👉 Поддержка пагинации
👉 Поддержка отображения UI для пустого списка
👉 Поддержка выбора одного или множества элементов
👉 Поддержка кликов на элементах списка

И все это приправлено простой использования
Android Broadcast
Какой CI вы используете?
Как и ожидалось - победил Jenkins. (хотя тружно назвать победой когда второе место занимает "Не использую CI") Печально ли? Я считаю что да. Jenkins сильно отстает от своих конкурентов на рынке, побеждая только бесплатностью и наличием кучи плагинов на любой чих. Плагины Jenkins - тоже не самое лучшее, так как контроля их качеста не осуществляется.

В мобильной практике EPAM не так давно мы отказались от использования Jenkins в пользу Bitrise. Лучше ли он? Сказать пока не готов, так как я пока с ним еще осваиваюсь. Однозначно настраивать его проще, так как все визуализировано.

P.S. Та четверь людей что не используют CI, отпишите, пожалуйста, в @android_broadcast_discussions почему вы так делаете. Если же причины нет - упростите свою жизнь и автоматизируйте задачи.
#Gradle

Вышел Gradle 5.6.0

Вышла новая версия системы сборки Gradle в которой произошли следующие изменения:
Более быстрая компиляция Groovy (добавлены эксперементальные compilation avoidance и инкрементальная компиляции)
🛠 Поддержка `test fixtures` для Java проектов. Теперь добавленный отдельный source set для настройки ваших тестов, который также можно подключить и к другим модулям в проекте
📝 Объявление версии всех плагинов в одном месте - settings.gradle
Исправлена скорость сборки на Windows при использование Java Library плагина
Теперь PMD поддерживает инкрементальную компиляцию
Улучшения в Worker API
Множество мелких улучшений и исправлений багов
#ArchitectureComponent #WorkManager #GooglePlayServices

Вышел WorkManager 2.2.0

WorkManager добрался до очередной стабильной версии. В ней произошло только одно изменение (по отношению к 2.1.0) - был добавлен новый артифакт androidx.work:work-gcm:2.2.0, в котором реализована поддержка использования GCMNetworkManager в качестве исполнителя задач на Android API Level <= 22.

Это поможет более эффективно работать тем кто поддерживает старые версии API и выкладывает приложение в Google Play.
Google опубликовала исходный код приложения Google I/O'19

Тезнологии, который вы найдете в приложении:
👉 Чистый Kotlin
👉 Архитектура на основе Android Architecture Components
👉 Firebase как бэкенд
👉 Dagger 2
👉 Espresso
👉 Material Design 2.0
👉 Lottie
👉 Room
👉 AndroidX Navigation
👉 Glide 4
👉 ARCore
#Test

What is a unit?

Что нам говорят про тесты, когда мы впервые слышим о них?
👉Есть Unit и интеграционные
👉Первых должно быть больше, так как интеграционные медленные
👉Unit тесты должны тестировать только отдельные части кода: метод или класс

Danny Preussler разбирается во всех частях и на примерах показывает что стоит покрывать Unit тестами
The (not so) hidden cost of sharing code between iOS and Android

История того как в DropBox старались пошарить код между iOS и Android в 2013 году, когда про Kotlin было слышно только отдаленно и Kotlin/Native не было вовсе. Использовали для этого C++. От этого подхода в компании ушли потому, что:
👉 Множество собственных фреймворков и библиотек и сложность их использования
👉 Сложность инструментов разработки
👉 Трудности при адаптации общего кода к различным платформам
👉 Трудно найти сотрудников и необходимость обучения текущих
Больше подробностей в статье
#Architecture #Modularization

Дзен изолированных компонентов в Android-архитектуре

Продолжение серии статей (раз и два) от Badoo об MVI в их приложении. В третей части вы найдете разбор рекомендаций:
👉 Нe останавливайтесь на слабой связности компонентов
👉 Компоненты в виде чёрных ящиков
👉 Переходим к однонаправленности
👉 Соединяйте входные и выходные данные разных компонентов
👉 и прочие интересные вопросы
#JetpackWeekly #AndroidX #AndroidJetpack

Android Jetpack Weekly #4

Текущая неделя была небогато на обновления:
👉 Выпущен стабильный WorkManager 2.2.0 в котором добавлена поддержка GCMNetworkManager в WorkManager
👉 Багфикс и изменения API в RecyclerView
👉 Багфикс в Jetifier
👉 Багфикс в DrawerLayout
Android Showcase Project

Пример проекта использующий все тренды Android разработки 2019 года:
👉 100% Kotlin
👉 Kotlin Coroutines
👉 Gradle Kotlin DSL
👉 Feature модули
👉 Clean Architecture
👉 MVVM
👉 Android Jetpack
👉 Архитектура на одной Single Activity
👉 Navigation Component для управления fragment-ами
👉 Reactive UIs
👉 CI pipeline (Circle CI)
👉 Testing
👉 Static analysis tools
👉 Dependency Injection (Kodein)
👉 Material design 2.0
👉 Coil для загрузки изображений
👉 Lottie
#Accessibility #GooglePlay

Improving Accessibility in the Android Ecosystem

Google лишний раз напоминает нам что надо заботиться об accessibility. Например в Google Play pre-launch отчет выдает рекомендации по тому что стоит исправить в вашем приложение для accessibility.

Также вы можете воспользоваться приложением Accessibility Scanner для Android
Вы заботитесь об accesebility в ваших приложениях?
Final Results
14%
Да
62%
Нет
24%
Что это такое?
#Graphic #Image

Android Image Lighting Control and Color Filtering

Как сделать картинку ярче или более темной в Android? С чего вы начнете поиск решений? В Android SDK уже есть есть - ColorFilter. Для того чтобы регулировать яркость картинки используйте LightingColorFilter.

В статье разбирается как правильно работать с этим фильтром работать правильно, что значит параметры mul и add?
#Backend #MBaaS

Обзор облачных сервисов для разработки бэкенда мобильных приложений

Современные устройства позволяют выполнять сложные задачи и разработать более интересный софт. Но все также (большей части случаев) нельзя избавиться от одной составляющей - сервера, который выполняет множество операций: отправка пушей, синхронизация, доступ к тяжелым файлом и пр.

Очень удобно иметь готовое решение из коробки, которое позволит использовать реализации для распространенных задач. В статье проводиться сравнение Microsoft Azure, AWS Amplify, Google Firebase и Kumulos.
#AndroidStudio #ProjectMarble

Вышла Android Studio 3.5

Вышла следующая стабильная версия Android Studio в который команда исправила более 600 багов, 50 утечек памяти, 20 зависаний IDE, помогла авторам сторонних плагинов исправить баги и постараюсь поднять скорость в проблемных местах.

Что еще нового:
🗜️ Уменьшен расход памяти и CPU эмулятором
🔁 Instant Run ушел на покой. Да здравствует Apply Changes!
🔔 IDE научилась подсказывать рекомендовать увеличить объем выделяемой памяти, а также что ваш антивирус тормозит вам сборку 😞
🚀 Улучшена инкрементальная сборка: Data Binding икрементальный, Kotlin
👉 Улучшена система сборки багов, утечек памяти и общей статистики, соблюдая безопасность и ваши пожелания по отправки
👉 Улучшения в Layout Editor
👉 Улучшения для С/С++ проектов
👉 Добавлена поддержка Chrome OS на несаольких устройствах
👉 IntelliJ IDEA 2019.1
#GooglePlay

Google Warns Developers that All New Android Apps Require Three Days for Approval

Google втихую увеличила срок апрува всех новых приложений до 3 дней минимум 🤯 Перейдет ли это в качество? Станет ли лучше? Подождем и увидем

Пока у вас есть шанс почитать историю разработчика приложений с многолетним стажем работы в Google Play и его общением с поддержкой магазина