Какой голосовой помощник вы используете на регулярной основе? (МНОЖЕСТВЕННЫЙ ВЫБОР)
Final Results
22%
Google Assistant
5%
Apple Siri
1%
Amazon Alexa
12%
Яндекс Алиса
1%
Маруся Mail.ru
1%
Решения от Сбер
66%
Не пользуюсь
1%
Другой ассистент
4%
Не участвую в опросе
#Dagger #Hilt
Hilt: custom entry points
Руководство по созданию собственных Entry Point в Dagger Hilt. Полезно если вам нужно отвязать компоненты от жизненного цикла компонентов Android:
Hilt: custom entry points
Руководство по созданию собственных Entry Point в Dagger Hilt. Полезно если вам нужно отвязать компоненты от жизненного цикла компонентов Android:
Application, Activity, Fragment, View, Service, BroadcastReceiverВсем привет. Решил обратиться к сообществу за помощью. Порой возникают задачки, на которые тратится много времени. Буду очень признателен, если кто-то отзовётся, чтобы помочь в
👉 Делать таймкоды для выпусков подкаста
👉 Разработка сайта
👉 Бот в Telegram
👉 Публикация анонсов в соц. сетях
Со своей стороны я могу предложить свою помощь в рамках моих компетенций. Пишите Кириллу @krlrozov, чтобы откликнуться.
👉 Делать таймкоды для выпусков подкаста
👉 Разработка сайта
👉 Бот в Telegram
👉 Публикация анонсов в соц. сетях
Со своей стороны я могу предложить свою помощь в рамках моих компетенций. Пишите Кириллу @krlrozov, чтобы откликнуться.
#AndroidBroadcast #Multiplatfrom #Livecoding
🔴 Превращаем Android приложение в Kotlin Multiplatform
Понедельник, 25 января, 10:00 GMT+3
В прямом эфире переведём приложение из Android в Kotlin Multiplatform для поддержки Android и iOS одновременно.
Эксперт - Анна Жаркова, Mobile Lead Developer/Usetech
Разработчик с опытом более 7, пишет нативно под IOS (Swift/Objective-C), Android (Kotlin/Java) и кросс-платформу. Интересуется Kotlin Multiplatform. Помимо этого преподаёт в Otus на курсах по iOS. В свободное время изучает немецкий и китайский языки, увлекается живописью
🔴 Превращаем Android приложение в Kotlin Multiplatform
Понедельник, 25 января, 10:00 GMT+3
В прямом эфире переведём приложение из Android в Kotlin Multiplatform для поддержки Android и iOS одновременно.
Эксперт - Анна Жаркова, Mobile Lead Developer/Usetech
Разработчик с опытом более 7, пишет нативно под IOS (Swift/Objective-C), Android (Kotlin/Java) и кросс-платформу. Интересуется Kotlin Multiplatform. Помимо этого преподаёт в Otus на курсах по iOS. В свободное время изучает немецкий и китайский языки, увлекается живописью
Peeking behind the forbidden door of Reflection
Reflection API в Java/Kotlin может разрушить ваш код, так как сможет вызвать ваше приватное API. Будьте осторожны
Reflection API в Java/Kotlin может разрушить ваш код, так как сможет вызвать ваше приватное API. Будьте осторожны
#Jetpack #Compose
Helping You Understand The Syntax of Jetpack Compose
Приход Jetpack Compose не только поменяет то как мы пишем UI, но и подход в коде. Вместо ООП подхода мы будем использовать функциональную композицию.
Helping You Understand The Syntax of Jetpack Compose
Приход Jetpack Compose не только поменяет то как мы пишем UI, но и подход в коде. Вместо ООП подхода мы будем использовать функциональную композицию.
#Hilt #ViewModel
Using Hilt’s ViewModelComponent
В Dagger 2.31 появился ViewModelComponent и соответствующий Scope. Для того чтобы переиспользовать сущности за пределами жизни Activity у нас существует теперь 2 scope:
Using Hilt’s ViewModelComponent
В Dagger 2.31 появился ViewModelComponent и соответствующий Scope. Для того чтобы переиспользовать сущности за пределами жизни Activity у нас существует теперь 2 scope:
@ViewModelScoped и @ActivityRetainedScoped#Тестирование
Вышел Robolectric 4.5 в котором появилась поддержка Android API 30 (Android 11), множество исправлений багов и улучшений
Вышел Robolectric 4.5 в котором появилась поддержка Android API 30 (Android 11), множество исправлений багов и улучшений
#Fragment #Navigation
Началась работа над поддержкой множества back стеков в Fragment. Подробности на официальном issue tracker. Ждать нововведение раньше версии AndroidX Fragment 1.4.0. Также поддержку множества back стеков получит и Navigation Component 2.4.0
Началась работа над поддержкой множества back стеков в Fragment. Подробности на официальном issue tracker. Ждать нововведение раньше версии AndroidX Fragment 1.4.0. Также поддержку множества back стеков получит и Navigation Component 2.4.0
Вам нужна комплектный блок для проводной зарядки со смартфоном/планшетом?
Anonymous Poll
46%
Да
15%
Пусть будет, про запас
21%
Нет
17%
Не участвую в опросе
#Navigation #Архитектура #Модуляризация
Разделяй и властвуй: Navigation Component в многомодульном проекте
В статье описывается подход к организации работы с Navigation Component в многомодульном проекте с множеством feature модулей.
Разделяй и властвуй: Navigation Component в многомодульном проекте
В статье описывается подход к организации работы с Navigation Component в многомодульном проекте с множеством feature модулей.
#Coroutines
How runBlocking May Surprise You
runBlocking - самый простой Coroutine Builder, который не заставляет использовать
Вызов кода
How runBlocking May Surprise You
runBlocking - самый простой Coroutine Builder, который не заставляет использовать
CoroutineScope и подружить синхронный мир с асинхронным.Вызов кода
runBlocking(Dispatchers.Main) { ... } на UI потоке в Android приведет к deadlock вашего приложения. И это полностью ожидаемое поведение. В статье автор делает подробный разбор как происходит работа этого кода.#Performance #Benchmark
Don’t Run Benchmarks on a Debuggable Android App
Объяснение почему делать тесты производительность на dev сборка делать не стоит и как режим работы debuggable приложений отличается от релизных приложений. Результаты тестов вы можете увидеть в таблице.
Кстати, разбор от автора статьи "Android App Startup Tip: Don’t Use Kotlin Coroutines", который понял свою ошибку
Don’t Run Benchmarks on a Debuggable Android App
Объяснение почему делать тесты производительность на dev сборка делать не стоит и как режим работы debuggable приложений отличается от релизных приложений. Результаты тестов вы можете увидеть в таблице.
Кстати, разбор от автора статьи "Android App Startup Tip: Don’t Use Kotlin Coroutines", который понял свою ошибку
#Chrome #CustomTab
Better content sharing with Custom Tabs
Custom Tabs позволяют отображать в приложении веб контент с синхронизацией Cookies, паролей, истории поиска из браузера. Причём открытие ссылки в Custom Tab происходит быстрее чем в отдельном приложении.
В Chrome 88 Custiom Tab теперь по умолчанию будет добавлять действие шаринга («поделиться»). Чтобы изменить это поведение вам надо использовать библиотеку androidx.browser 1.3.0 и новое API Share State.
Better content sharing with Custom Tabs
Custom Tabs позволяют отображать в приложении веб контент с синхронизацией Cookies, паролей, истории поиска из браузера. Причём открытие ссылки в Custom Tab происходит быстрее чем в отдельном приложении.
В Chrome 88 Custiom Tab теперь по умолчанию будет добавлять действие шаринга («поделиться»). Чтобы изменить это поведение вам надо использовать библиотеку androidx.browser 1.3.0 и новое API Share State.
Forwarded from Kotlin Multiplatform Broadcast
#Kotlin #stdlib
Kotlin Standard Library Safari. Strings (7 минут)
Новый подкаст с обзором различных API из стандартной Kotlin библиотеки. В первом эпизоде рассматривается API класс String
Kotlin Standard Library Safari. Strings (7 минут)
Новый подкаст с обзором различных API из стандартной Kotlin библиотеки. В первом эпизоде рассматривается API класс String
#UI #UX #Дизайн
Сага о мобильном дизайне, часть 2
В статье разбираются, хоть и известные для любого, кто близок к UI/UX, вещи, но все равно полезные, чтобы напомнить еще раз:
👉 UI – это про внешний вид (цвета, шрифты, тени и т.д.). UX – это про опыт пользователя (как пользователь взаимодействует с приложением, насколько успешно и удобно выполняет целевой сценарий)
👉 Тап-зона должна быть достаточной для любых пальцев
👉 Важные кнопки, элементы управления нужно располагать в области досягаемости большого пальца. Много людей управляют смартфоном большим пальцем и держат смартфон одной рукой
👉 Внимание пользователей очень ограничено. Нужно фокусировать пользователя на главном, убирать информационный шум.
👉 У пользователей разных платформ есть разные привычки. Важно соблюдать гайдлайны плаформ.
Непривычный паттерн вызывает растерянность.
👉 Выработанные UI/UX практики чаще надежнее новых инновационных подходов
Сага о мобильном дизайне, часть 2
В статье разбираются, хоть и известные для любого, кто близок к UI/UX, вещи, но все равно полезные, чтобы напомнить еще раз:
👉 UI – это про внешний вид (цвета, шрифты, тени и т.д.). UX – это про опыт пользователя (как пользователь взаимодействует с приложением, насколько успешно и удобно выполняет целевой сценарий)
👉 Тап-зона должна быть достаточной для любых пальцев
👉 Важные кнопки, элементы управления нужно располагать в области досягаемости большого пальца. Много людей управляют смартфоном большим пальцем и держат смартфон одной рукой
👉 Внимание пользователей очень ограничено. Нужно фокусировать пользователя на главном, убирать информационный шум.
👉 У пользователей разных платформ есть разные привычки. Важно соблюдать гайдлайны плаформ.
Непривычный паттерн вызывает растерянность.
👉 Выработанные UI/UX практики чаще надежнее новых инновационных подходов
#AndroidBroadcast #Новости
Новостной дайджест: Fragment Multi Backstack // Gradle 6.8 // Kotlin Roadmap
Первый выпуск новостей вам понравился и поэтому рубрика теперь становится регулярной. В новом выпуске вас ждут самые важные новости, интереснейшие статьи и события мобильной индустрии.
Новостной дайджест: Fragment Multi Backstack // Gradle 6.8 // Kotlin Roadmap
Первый выпуск новостей вам понравился и поэтому рубрика теперь становится регулярной. В новом выпуске вас ждут самые важные новости, интереснейшие статьи и события мобильной индустрии.
#ConstraintLayout #Анимация
MAD Skills - MotionLayout
Серия видео по анимациям с использованием MotionLayout (ConstraintLayout 2.0). Уже вышло 2 части:
👉 Анимация на основе ConstraintSet
👉 Анимация на основе Keyframe
MAD Skills - MotionLayout
Серия видео по анимациям с использованием MotionLayout (ConstraintLayout 2.0). Уже вышло 2 части:
👉 Анимация на основе ConstraintSet
👉 Анимация на основе Keyframe
#GooglePlay #Location #Security
New guidelines for accessing background location in Android
В этом году в Google Play вступают ограничения для приложений, которые используют доступ к местоположению пользователя в фоновом режиме работы приложения. Чтобы оставить эту функцию у себя, вам надо подать специальную форму.
В статье автор разбирает свою историю борьбы с поддержкой Google Play, чтобы доказать необходимость этой функции в его приложении.
Официальная документация
New guidelines for accessing background location in Android
В этом году в Google Play вступают ограничения для приложений, которые используют доступ к местоположению пользователя в фоновом режиме работы приложения. Чтобы оставить эту функцию у себя, вам надо подать специальную форму.
В статье автор разбирает свою историю борьбы с поддержкой Google Play, чтобы доказать необходимость этой функции в его приложении.
Официальная документация
#AndroidBroadcast
@android_broadcast - это не только Telegram канал, но множество других интересных источников, где можно получать информацию
@kotlin_broadcast - Telegram канал с новостями Kotlin разработки. Много внимания уделяется Kotlin Multiplatform Mobile, так как за ним будущее.
📺 YouTube канал Android Broadcast - новости, лучшие практики, подкасты и интервью.
🎵 Подкасты на SoundCloud, Яндекс Музыке, Apple Podcasts и др. сервисах.
Вы можете поддержать проект на Boosty или Patreon и получите ранний доступ к новым роликам и подкастам
Личные соц сети Кирилла, где он делится свои мыслями и работой над Android Broadcast:
👉 Twitter @kirill_rozov
👉 Instagram @krlrozov
🔥 Хотите выиграть билет на Podlodka Android Crew #3, все условия в Twitter посте и скоро в Instagram
@android_broadcast - это не только Telegram канал, но множество других интересных источников, где можно получать информацию
@kotlin_broadcast - Telegram канал с новостями Kotlin разработки. Много внимания уделяется Kotlin Multiplatform Mobile, так как за ним будущее.
📺 YouTube канал Android Broadcast - новости, лучшие практики, подкасты и интервью.
🎵 Подкасты на SoundCloud, Яндекс Музыке, Apple Podcasts и др. сервисах.
Вы можете поддержать проект на Boosty или Patreon и получите ранний доступ к новым роликам и подкастам
Личные соц сети Кирилла, где он делится свои мыслями и работой над Android Broadcast:
👉 Twitter @kirill_rozov
👉 Instagram @krlrozov
🔥 Хотите выиграть билет на Podlodka Android Crew #3, все условия в Twitter посте и скоро в Instagram
#Безопасность #Debug #ProGuard
Debugging Proguard configuration issues
Все те кто использует R8/ProGuard для обфускации и минификации своего кода как минимум раз сталкивались с тем, что приложение в релизе падает.
Автор приводит алгоритм по которому стоит искать ошибку:
1️⃣ Убедитесь что проблема связана именно с минификацией
2️⃣ Убедитесь не связана ли проблема с
3️⃣ Убедитесь не связана ли проблема с обфускацией кода
Автор также демонстрирует пример и как работает его рекомендация на практике
Debugging Proguard configuration issues
Все те кто использует R8/ProGuard для обфускации и минификации своего кода как минимум раз сталкивались с тем, что приложение в релизе падает.
Автор приводит алгоритм по которому стоит искать ошибку:
1️⃣ Убедитесь что проблема связана именно с минификацией
2️⃣ Убедитесь не связана ли проблема с
shrinkResources3️⃣ Убедитесь не связана ли проблема с обфускацией кода
Автор также демонстрирует пример и как работает его рекомендация на практике