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

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

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

MVIKotlin

Знакомы с библиотекой MVIDroid? Так вот ее больше нет. Она не умерла, а переродилась в MVIKotlin:
👉 Стала мультиплатформенной на основе Kotlin MPP
👉 Поддержка Android, JVM, JavaScript, iOS (Arm64 и X64), Linux X64
👉 Библиотека независимо от любого подхода и может работать на основе Reaktive или Kotlin Coroutines
👉 Поддержка многопоточности на Kotlin/Native
👉 Готовый подключаемый UI для Android и iOS

Одной из крутых фичей библиотеки является "Time Travel" - все изменения состояния сохраняются и можно переключаться между ними внутри приложения, с помощью библиотеки расширения. Демо "Time Travel"
#AndroidAcademy #Minsk #Testing

Android Academy Minsk Advanced Topic #4 - Testing

Все об этом говорят, но мало кто это делает в проектах - пишут тесты. Почему? Нет времени, спешка, считают что это не приносит много пользы.

На следующей лекции в Android Academy Minsk вы сможете узнать зачем писать тесты, как это делать правильно и какую пользу это вам принесёт.
#Java

Что нового будет в Java 14

Пока большинство Android разработчиков забыли про Java в ней идет большая жизнь. Уже на подходе релиз 14ой версии. В ней нас ожидает:
👉 Pattern matching
👉 Record
👉 switch expression
👉 Text blocks

и много всего другого о чем можно почитать в статье
#R8 #D8

When using enums and R8…

Chet Haase делиться с нами какую пользу может оказать R8 и убрать лишний JVM байткод, который генерируется Kotlin, когда вы используете его для компиляции кода на примере enum.
#Meetup #Lviv #Kotlin

KLUG meetUp#13

28 марта во Львове пройдет митап Kotlin Lviv User Group на котором вас ждет 4 доклада! В том числе я расскажу о том, почему стоит выбрать Kotlin Coroutines как основной подход для асинхронных операций на Android.

Следите за обновлениями и до встречи!
#Coroutines

Cancellation and Exceptions in Coroutines: "Coroutines: First things first" (Часть 1/3)
⏱️5 минут

Очень важной частью Coroutine является Structured Concurrency, которая позволяет избегать выполнения ненужной работы.

В первой части статьи раскрываются основные концепты:
👉 CoroutineScope
👉 Job
👉 CoroutineContext: Job, CoroutineDispatcher, CoroutineName, CoroutineExceptionHandler 
👉 Жизненный цикл Job
👉 Родительский CoroutineContext
#Coroutines

Cancellation and Exceptions in Coroutines: "Cancellation in coroutines" (Часть 2/3)
⏱️8 минут

Во второй части серии статей рассматриваются особенности работы отмены выполнения Coroutine и как сделать это правильно
#Coroutines

Cancellation and Exceptions in Coroutines: "Exceptions in Coroutines" (Часть 3/3)
⏱️7 минут

В заключительной части серии статей рассматривается как Coroutine реагируют на Exception, произошедшие во время их выполнения, и как правильно обрабатывать их.

В статье вы найдете:
👉 Job или SupervisorJob
👉 Обработка исключений
👉 CoroutineExceptionHandler
#Conference #Flutter #Minsk

Состоялся розыгрыш билетов на FlutterConf.by. Поздравляю Павел З. и Виталий Я. с победой.

Одновременно с этой радостной новостью я вынужден сказать, что конференция перенесена. Мы заботимся о здоровье всех участников и не хотим подвергать никого риску. Мы держим руку на пульсе всех событий и если ситуация улучшится, то мы оповестим вас о новостях.
Android Broadcast
В какие магазины приложений выкладываете вы свои приложения?
(можно выбрать несколько вариантов)
Ожидаемо победил Google Play. Huawei смогла пробиться на второое место из магазинов, но не смогла победить способ распространения вне магазинов. Присоединяйтесь чтобы поделиться своим опытом к @android_broadcast_talks
#oEmbed

Open video links like Telegram do with oEmbed and Kotlin

Хотите чтобы в вашем приложение был полноценный предпросмотр видео по ссылке? Это легко можно сделать с помощью oEmbed.

В статье автор показывает как это сделать для YouTube, а также библиотека, которая сможет сделать все это сразу для вас для самых популярных видео сервисов.
#Kotlin #Android11

Handling Nullability in Android 11 and Beyond

Google улучшает Android SDK для поддержки nullability в Kotlin, добавляя аннотации @Nullable/@NonNull и @RecentlyNullable/@RecentlyNonNull.

Также часть методов, аннотированных @RecentlyXXX, перестали быть Recenlty. Это значит, что теперь вместо предупреждения, будет происходить ошибка.
#Firebase #Benchmark

Jetpack Benchmark on Firebase Test Lab

Библиотека Jetpack Benchmark позволяет вам сделать тест производительности UI вашего приложения. Эффективно интегрировать эту библиотеку на CI, чтобы определять регрессии в скорости работы приложения до мержа в основную ветку.

В статье разбирается как запускать тесты производительности на Jenkins, используя Firebase Test Lab.
#Dagger #DependencyInjection

Вышел Dagger 2.27

Новая версия популярного DI фреймворка привнесла следующий улучшения:
👉 Экспериментальный формат сообщений об ошибках (подробнее ниже)
👉 Более оптимальная генерация кода в зависимости от того как в класс происходит inject зависимостей
👉 Поддержка конструкторов с layout id из AndroidX
👉 Убрали использование Guava API, которое недоступно для использования в Android
👉 Улучшена работа с Kotlin
👉 Исправление багов

Экспериментальный формат сообщений об ошибках
Позволяет улучшить читабельность сообщений об ошибке. Этот формат в будущем станет стандартным.
При включение нового режима поменяется:
👉 Сокращенные имена всех классов
👉 Ошибки для каждого компонента отображаются как одна
👉 Добавление цветов к тэгам ошибок для визуального разделения ошибок
👉 Уменьшен объем информации в некоторых сообщениях

Для включения надо использовать -Adagger.experimentalDaggerErrorMessages=enabled
#Podcast #Mobius

Android Broadcast Podcast #9 - "Как сделать крутую конференцию"

Получить новые знания, послушать доклады от крутых специалистов, пообщаться с коллегами по цеху и провести классно время - это основные причины по которым мы посещаем конференции. Но что стоит за тем чтобы сделать крупнейшую конференцию по мобильным технологиях в России? 

Позвал команду Mobius, которая поделилась как происходит организация конференции. Зачем члены программного комитета тратят много времени вне работы на это и как это помогает им в их профессиональной работе, а главное как вступить в ПК и помочь сделать Mobius.

Гости:
Оксана Мирошниченко - Программный координатор Mobius
Евгений Кателла - Член ПК Mobius, Android
Алексей Кудрявцев - Член ПК Mobius, iOS

Купить билет со скидкой по промокоду "AndroidBC2020pc"

Спасибо Александру Марцинкевичу за помощь в подготовке выпуска
#Google #Maps

Announcing Google Maps Android Utility Library v1.0

Вышла первая стабильная версия утилит для Google Maps на Android. Библиотека добавляет множество новых возможностей:
👉 Marker clustering - отображения множество pin-ов
👉 Heat maps
👉 Icon Generator - отображение текста на картах
👉 Poly decoding and encoding
👉 Spherical geometry
👉 Поддержка отображения KML
👉 Отображение и стилизация GeoJSON