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

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

РКН https://abdev.by/rkn_tg_ab
Download Telegram
#Kotlin #KtAcademy

Effective Kotlin beta release

Вышла beta версия книги "Effective Kotlin" с лучшими практиками от Мартина Москала. Хотите научиться писать Kotlin код лучше - тогда вам стоит ее купить.

Пока доступна только электронная версия книги, а в ноябре будет бумажная.
#Kotlin #Conference #Minsk

Хотите услышать часть советов из книги лично от автора? Тогда не пропустите доклад Мартина на Kotlin/Everywhere Minsk 7 сентября
#Animation

Motional Intelligence: Build smarter animations

В современной архитектуре Android приложений очень популярно использование реактивного подхода: ViewModel + LiveData, MVI, MvRx и др. В них все завязывается на состояние View (UI) и чтобы пользователю было приятнее работать с вашим приложением при изменении состояния нужно уделять внимание анимации. В статье вы найдете рекомендации как использовать анимацию при изменения состояния
#ContraintLayout #IDEA

Learning ConstraintLayout — Live Templates for Rescue

ConstraintLayout на текущий момент самое гибкое решение для разработки UI под различные экраны. Также для него был сделан довольно мощный визуальный редактор интерфейса. Но есть много староверов (включая и меня 😀), кто пишет весь UI по хардкору в XML.

В статье рассматривается подход как упростить написание UI c ConstraintLayout с помощью Live Templates из IDEA
#Security

Storing data securely on Android - KeyStore Asymmetric

Продолжение серии статей (3яя часть) о хранении данных безопасно. В новой части разбираются асимметричные ключи для шифрования данных, с которыми придется иметь дело до Android 6.0, так более Android KeyStore не поддерживает симметричные ключи на более старых версиях 😞
#Security OAuth #CustomTab #Chrome

Performing OAuth on Android with Custom Tabs

OAuth 2.0 на текущий момент самое популярное решение для осуществления авторизации в приложение. В статье рассматриваются преимущества использования Chrome Custom Tab для авторизации и как это реализуется.
#BottomNavigation #Navigation

Announcing Bottom Navigator

Используете ли вы Bottom Navigation в своих приложениях? Тогда вполне возможно вы сталкивались с проблемой, что стандартное поведение этого виджета подразумевает под собой сброс стека предыдущего таба при переключении.

Google все еще работает над фичей поддержки множества стеков в Jetpack Navigation, поэтому эта библиотека из Architecture Components не решит вашей проблемы. Подробности здесь.

Это не устроило ребят из Pandora и они реализовали свой собственный Bottom Navigation виджет, который удовлетворяет их точке (а вполне возможно и значительного количества людей) на работу этого виджета.
Android Broadcast
Как вы пишите UI под Android?
Что можно сказать о результатах? XML пока остается самым надежным способом и как бы Google ни старалсь, но Layout Editor так и не получил большую популярность как основого инструмента для разработки UI.

Очень интересно услышать мнение людей кто пишет UI в коде (частая причина это производительность и хотелось бы услышать насколько такое решение ее увеличивает) а также кто ответил "Другой вариант" и что вы используете (возможно вы вообще не пишите UI 😁).

Присоединяйтесь для обсуждения в @android_broadcast_discussions
#AndroidStudio #Performance

Speed up your Android Studio

Android Studio - программа с большим аппетитом. Разрабатывать под Android на компьютере без 16 гигов оперативки, четырехядерного процессора и SSD сейчас довольно затруднительно 😞.

В статье рассматриваются следующий оптимизации для ускорения работы Android Studio:
👉 Настройка шаринга Gradle демонов между системой и Android Studio
👉 Отключайте ненужные плагины
👉 Правильно настройте vmoptions. Android Studio 3.5 уже научилась предлагать некоторые рекомендации, но можно больше!

Как вы боретесь с прожорливостью Android Studio? Делитесь советами в @android_broadcast_discussions и попробуем сделать
Screenshot testing on Android

История команды как они от написания Unit тестов и instrumentation тестов на Espresso пошли дальше тестирование скриншотов. Цель тестирования скриншотов - проверить, что пользовательский ввод приводит к определённому выводу на экране. Автор статьи делится опытом таких видов тестов с использованием библиотеки Facebook Screenshot Testing for Android
#DependencyInjection #Dagger

Dagger2: @Component.Factory and @SubComponent.Factory

В Dagger 2.22 добавили возможность использовать фабрики @Component.Factory для создания Component, вместо Builder. Это позволяет вам передать все параметры при создании Dagger Component/Subcomponent в один единственный метод.
#GooglePlay

Expanding bug bounties on Google Play

Google расширяет программу по поиску уязвимостей и включает в нее все приложения с более 100 миллионов установок, даже если разработчик приложения не имеет, такой программы вы получите премию от Google.
#Firebase #RemoteConfig

Improving your startup times and error handling using the Remote Config V2 SDK

Обновили Firebase Remote Config V2 получило более быстрое время запуска со счет асинхронной инициализации 🚀 and улучшение коммуникации между клиентским SDK и бекэндом
#Git

Using Git Hooks to improve your development workflow

Случалось ли у вас так что вы написали прекрасный код, проверили его работу, а через пару минут ваш CI говорит, что проверка вашего коммита не прошла успешно. Забыли запустить проверки перед тем как отправить код на сервер, а то и вовсе этого не делаете?

Git Hooks - это то что ваш поможет автоматизировать различные команды, которые будут выполняться при различных операциях с Git. Как это сделать вы найдете в статье
#CameraX #AndroidX #Camera

Core Principles Behind CameraX Jetpack Library

CameraX - одна из главных новинок AndroidX из Google I/O. Она решает проблемы с особенностями работы с камерой на устройствах различных производителей, а также дает доступ к таким возможностям как HDR, ночной режим и прочие, которые ранее были недоступны.

В статье рассматриваются особенности библиотеки:
👉 Интеграция с Lifecycle
👉 Работа на основе сценариев (use-case-driven). Основные сценарии - это предпросмотр, анализ изображения и захват изображения.
👉 Graceful degradation
👉 Совместимость со всеми устройства на Android 5.0+ и поддерживающими Camera 2 API
👉 Поддержка расширений от производителей, для доступа к низкоуровневым API камеры

Библиотека активно развивается и получает улучшения API. Ждем хотя бы beta
#Firebase #SaaS #8base

5 Reasons Why Developers are Choosing 8base over Firebase

Сравнение 8base и Firebase в плане удобства и функционала который они представляют как Saas.

8base отличается работой на основе GraphQL API