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

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

РКН https://abdev.by/rkn_tg_ab
Download Telegram
Сейчас все мы стали работать из дома. Неотъемлемой частью этого является наша семья и соседи. У меня вообще происходит веселье: годовалая дочка бегает с криком по дому, лает пёс, и стучит клавиатура с мышкой 😁

Решением этого для меня стал сервис Krisp.В понедельник на стриме по Moko я протестил его и был в восторге - весь шум за меня убрал AI. Прелесть решения в том что вам не нужно какой-то специальной видеокарты как в решении от Nvidia.

Обязательно пробуйте. Если пройдете регистрацию по моей ссылки, то получите месяц Pro бесплатно как и я. Это позволит сделать звук на стримах лучше!
#AndroidBroadcast

Хотите пройти интервью у Кирилла, чтобы проверить свои силы? Тогда у вас есть такая возможность сделать это в прямом эфире на канале Android Broadcast. Заполните форму и ждите когда с вами свяжутся.
#ProGuard

ProGuard Playground - онлайн песочница для проверки ваших keep правил

ProGuard представила бета версию своей песочницы для проверки ваших keep правил. Утилита сразу подсвечивает какие классы у вас будут сохранены в вашем JAR или APK.

Вы можете интерактивно настроить все что вам необходимо оставить без изменений в release сборке. Также результата можно шарить по ссылке. Например, я сделал пример для приложения Muzei.
#Firebase

Firebase Experimental Extensions

Firebase активно развивается и добавляет новые расширения, которые вы можете добавить в свой Firebase проект и использовать в мобильных приложения

Представлены новые экспериментальные расширения
👉 Короткие ссылки на основе Firebase Dynamic Links
👉 Выполнение анализа тональности текста в Firestore
👉 Adding custom claims to Firebase Auth users
👉 Периодические записи в Firestore

Помимо прочего стало доступно расширение для переводов текста
Into the Sunset on May 1st: Bintray, JCenter, GoCenter, and ChartCenter

JFrog закрывает кучу своих сервисов, включая Bintray. Практически все современные библиотеки заливались на этот сервис, так что у авторов много работы, ведь в конце февраля опубликовать новые не получится. Теперь Maven Central ?
#Kotlin

Вышел Kotlin 1.4.30

Новая минорная версия языка привнесла множество изменений о которых вы можете узнать из поста на канале @kotlin_broadcast.

Важно: Новый Backend JVM IR компилятора перешел в Beta, а старый больше не поддерживается. В 1.5.0 этот компилятор будет работать по умолчанию. Поэтому вам надо попробовать скомпилировать и проверить ваш проект.

Что значит попробовали
1️⃣ Хотя бы раз собрать проект. Инструкция как попробовать новый компилятор
2️⃣ Что-то подебажить
3️⃣ Отправить нам репорты/баги о том, что не работает с примерами кода по возможности. Это можно будет сделать через YouTrack или в Slack Kotlinlang.org
4️⃣ Поработать с ним какое-то время, а лучше заадоптить насовсем

Давайте поможем ребятам довести новый JVM IR backend до стабильного состояния! Это здорово облегчит жизнь нам и его разработчикам, а также приблизит нас к Jetpack Compose.
#Dagger #Hilt

Hilt: Dependency Injection on Android

Серия уроков по Dagger Hilt в которой подробно рассматриваются все аспекты использования этой надстройки над Dagger и как осуществлять миграцию уже существующих Android проектов. Каждый урок совсем короткий - по несколько минут.
#Coroutines #UnderTheHood

Bridging the gap between coroutines, JVM threads, and concurrency problems

Хотите узнать как работают Coroutine на JVM? Как они связаны c Java потоками? Какую роль в этом выполняет CoroutineDispatcher? В статье найдете ответы простым языком с отсылкой в исходники
#Android11 #Security

Adapting your apps for Android 11 privacy changes (18 мин)

Обзор изменений, которых вам придется сделать, чтобы мигрировать своё приложения на targetSdk=30 и ужиться со всеми нововведениями ОС.

Будем честны - озаботимся этим только в последний срок, а это сентябрь, может август.
#ViewBinding

Fast migration from Kotlin Synthetics to View Binding- Tips and Tricks

Руководство по миграции с Kotlin Synthetic на View Binding, а именно автор рассказывает как это сделать быстрее, а не очередной "how-to" переписать:
👉 Используй viewBinding делегат
👉 Как сделать шаблон для viewBinding в Android Studio
👉 Используйте Kotlin with(binding) { ... }
#SVG

Very long vector path

Сталкивались с тем что Android Lint жалуется на слишком большой VectorDrawable у вас в ресурсах? Всё верно! Авторы фреймворка задумывались и VectorDrawable как о легком варианте иконок, а не сложных графических ресурсах.

В статье автор показывает проблемы и предлагает несколько утилит для оптимизации SVG:
👉 Avocado
👉 Svgo
👉 Svgomg

Также как вариант может сработать взять стандартную Material иконку не ту, которую дал дизайнер, а добавить из пресета Android Studio. Дизайнеры берут вариант SVG, который неоптимизирован для Android VectorDrawable, а в AS лежат оптимальные.
#Material #UI

Вышла Material Component 1.3.0

В новой версий библиотеки вас ждёт:
👉 Виджет Time Picker
👉 Виджеты для отображения прогресса: линейный и круговой
👉 Исправление багов
#Security

Android Nesting Intents

Intent вложенный в другой Intent может стать уязвимостью вашего приложения. Проблема заключается в том что вы можете положить Intent, который должен запустить компонент вашего приложения, а это возможно только если он будет публично доступен (в манифесте стоит exported=“true”) либо открыт доступ приложениям подписанным таким же ключом как у вас.

Решением является использование PendingIntent, который в отличие от Intent всегда выполняет в Context в котором он был создан т.е. вызов будет происходить как будто все происходит внутри вашего приложения. Тем самым вам не придется открыть чего либо наружу. Заметили что все системные API принимают именно PendingIntent, а не Intent?
#Dagger #Koin #Hilt

How Dagger, Hilt and Koin differ under the hood?

Сравнение подкапотной работы популярнейших решений для DI на Android, а также их преимуществ и производительности
#конференция #cfp

Конференция по мобильной разработке Mobius ищет спикеров!

Если вы давно хотели поделиться с профессиональным сообществом полезными знаниями и заодно устроить себе челлендж, но все ждали знака — это он. Пришлите заявку, пройдите отбор и выступите в прямом эфире Mobius 2021 Piter, который пройдет 13-16 апреля.

Больше всего ждут следующие темы:
👉 Платформы под капотом
👉 Software Craftsmanship
👉 Архитектура;
👉 Качество продукта;
👉 Тренды в мобильной разработке
👉 Инфраструктура

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

Заявки принимаются до 16 февраля. Вопросы присылайте @OksanaMiroshnichenko
Publishing to Maven Central

После объявление о закрытие JCenter стали как никогда актуальны статьи о переезде в Maven Central и их посыпалось как из ведра. В статье рассматривается публикация артефактов, автоматизация процесса и примеры
Автор создал новый технический контент в несколькких форматах. Что предпочитаете вы?
Final Results
61%
Читать статью
25%
Смотреть видео
4%
Слушать видео
5%
Слушать подкаст
5%
Не участвую в опросе
#Dagger

Вышел Dagger 2.32
👉 В AssistedFactory теперь надо явно задавать имена для аргументов, которые имеют одинаковый тип
👉 Исправление багов в генерации AssistedFactory

Hilt
👉 Новый метод delayComponentReady() в HiltAndroidRule, который позволяет инициализировать компоненты в тестах до запуска выполнения теста
👉 HiltAndroidRule теперь требует чтобы inject() вызывался не более одного раза в тесте
👉 Удалили deprecated ApplicationComponent
👉 Исправили работу с Android Gradle Plugin 4.2.0-beta04