#compose #анимация
How to animate BottomSheet content using Jetpack Compose
Руководство по улучшению поведения BootomSheet в Compose, а также красивое анимирование при его открытии/закрытии
How to animate BottomSheet content using Jetpack Compose
Руководство по улучшению поведения BootomSheet в Compose, а также красивое анимирование при его открытии/закрытии
#coroutines
Safe delay in Android Views: goodbye Handlers, Hello Coroutines!
Использование Handler для отложенных операций в Android - небезопасно. Они не имеют связи с жизненным циклом и могут приводить к утечкам памяти.
На замену автор предлагает использовать Kotlin Coroutines + Coroutine Scope из Android. Поддерживаю 2 руками
Safe delay in Android Views: goodbye Handlers, Hello Coroutines!
Использование Handler для отложенных операций в Android - небезопасно. Они не имеют связи с жизненным циклом и могут приводить к утечкам памяти.
На замену автор предлагает использовать Kotlin Coroutines + Coroutine Scope из Android. Поддерживаю 2 руками
#android12 #materialyou #дизайн
Using Material You colors in your app
Android 12 пришёл с редизайном - Material You, где пользователь выбирает цветовую палитру. В статье показывается как использовать эти цвета и кастомизировать ваш UI на их основе
Using Material You colors in your app
Android 12 пришёл с редизайном - Material You, где пользователь выбирает цветовую палитру. В статье показывается как использовать эти цвета и кастомизировать ваш UI на их основе
#android12 #widget
Do more with your widget in Android 12!
В Android 12 решили вспомнить о наличие виджетов на рабочем столе и что их API имеет множество проблем. Помимо исправление старых болячек, еще и редизайн привезли и пообещали дать DSL для создания виджетов. Подробности изменений в статье
Do more with your widget in Android 12!
В Android 12 решили вспомнить о наличие виджетов на рабочем столе и что их API имеет множество проблем. Помимо исправление старых болячек, еще и редизайн привезли и пообещали дать DSL для создания виджетов. Подробности изменений в статье
#compose #performance
Measuring Render Performance with Jetpack Compose
Автору статьи понравился Compose, но прежде чем интегрировать его команда решила узнать влияние его на производительность и сравнить с XML. Где-то результаты лучше, где-то хуже, но вот разогрев Compose хороший
Measuring Render Performance with Jetpack Compose
Автору статьи понравился Compose, но прежде чем интегрировать его команда решила узнать влияние его на производительность и сравнить с XML. Где-то результаты лучше, где-то хуже, но вот разогрев Compose хороший
#AndroidBroadcast #CustomView
📺 Серия видео по созданию собственных View и ViewGroup
Вы давно хотели узнать как создавать собственные. View и ViewGroup в Android. Держите руководство из 3 видео в котором Саша рассказала всё, начиная от теории заканчивая обкаткой жестов и добавление анимации.
Эксперт - Александра Серебренникова, Android-разработчик в red_mad_robot. До red_mad_robot работала над мессенджером в большой корпорации и над стриминговой платформой в полустартапе. Любит UI, рада Compose, но будет немного скучать по старым добрым View 😞
📺 Серия видео по созданию собственных View и ViewGroup
Вы давно хотели узнать как создавать собственные. View и ViewGroup в Android. Держите руководство из 3 видео в котором Саша рассказала всё, начиная от теории заканчивая обкаткой жестов и добавление анимации.
Эксперт - Александра Серебренникова, Android-разработчик в red_mad_robot. До red_mad_robot работала над мессенджером в большой корпорации и над стриминговой платформой в полустартапе. Любит UI, рада Compose, но будет немного скучать по старым добрым View 😞
#Модуляризация #Архитектура #Навигация
Android App Modularisation and Navigation
Пример реализации навигации в многомодульном приложении. Мне подход не зашёл, так как есть core модуль, который знает про всю навигацию в приложении
Android App Modularisation and Navigation
Пример реализации навигации в многомодульном приложении. Мне подход не зашёл, так как есть core модуль, который знает про всю навигацию в приложении
#hilt #dagger #madskills
Hilt Testing Best Practices in the MAD Skills series
Тестирование ваших приложений с использованием Hilt, чтобы легко подменить зависимости
Hilt Testing Best Practices in the MAD Skills series
Тестирование ваших приложений с использованием Hilt, чтобы легко подменить зависимости
#dagger #hilt #di
Migrate from Dagger to Hilt — A Step by Step Guide
Для тех, кому жизнь усложняет Dagger, Koin не нравится отсутствием проверки графа во время компиляции, хорошим решением будет Dagger Hilt. Это настройка поверх Dagger для Android, которая упростила описание графа и зависимостей, оставив плюсы Dagger. Миграцию вам поможет выполнить статья
Migrate from Dagger to Hilt — A Step by Step Guide
Для тех, кому жизнь усложняет Dagger, Koin не нравится отсутствием проверки графа во время компиляции, хорошим решением будет Dagger Hilt. Это настройка поверх Dagger для Android, которая упростила описание графа и зависимостей, оставив плюсы Dagger. Миграцию вам поможет выполнить статья
#compose
Jetpack Compose Side-Effects — LaunchedEffect
Серия разборов Compose Side-effect-ов. В первой части разбирается LaunchedEffect - запуск Coroutine в scope composable функции
Jetpack Compose Side-Effects — LaunchedEffect
Серия разборов Compose Side-effect-ов. В первой части разбирается LaunchedEffect - запуск Coroutine в scope composable функции
#material #design #android12
Material Components Android 1.5.0-alpha03
Самое важное изменение - ранний доступ к задачному Material 3 и надо использовать compileSdk 31 (Android 12). Скорее всего так называется Material You.
Material Components Android 1.5.0-alpha03
Самое важное изменение - ранний доступ к задачному Material 3 и надо использовать compileSdk 31 (Android 12). Скорее всего так называется Material You.
#compose #testing
How to test Jetpack Compose UI
Пример как можно тестировать UI на Jetpack Compose и какие новые API после View появились
How to test Jetpack Compose UI
Пример как можно тестировать UI на Jetpack Compose и какие новые API после View появились
#compose
Understanding re-composition in Jetpack Compose with a case study
Разбор как неправильный дизайн вашей Composabe функции может сломать эффективность обновления UI, а причиной всему - ссылка на функцию.
Understanding re-composition in Jetpack Compose with a case study
Разбор как неправильный дизайн вашей Composabe функции может сломать эффективность обновления UI, а причиной всему - ссылка на функцию.
#AndroidBroadcast #Android12 #Compose
Android Broadcast совместно с Google Россия организовывают онлайн митап по Android 12 и Jetpack Compose. Сосредоточимся не на рассказе про технологию, вы и так их знаете, а мы именно зададим самые актуальные вопросы гуглерам. Вы можете также задать свой вопрос и получить суперский приз (поверьте мне, приз офигенный и уникальный).
Задать свой вопрос можно здесь
Анонс даты и времени, а также подробностей будет позже.
Android Broadcast совместно с Google Россия организовывают онлайн митап по Android 12 и Jetpack Compose. Сосредоточимся не на рассказе про технологию, вы и так их знаете, а мы именно зададим самые актуальные вопросы гуглерам. Вы можете также задать свой вопрос и получить суперский приз (поверьте мне, приз офигенный и уникальный).
Задать свой вопрос можно здесь
Анонс даты и времени, а также подробностей будет позже.
#jetpack #workmanager
Обновление Android Jetpack от 1 сентября 2021
👉 WorkManager 2.6.0 - переход на AndroidX Startup для инициализации и улучшения в работе со множеством процессов
👉 Compose 1.0.2 (поддержки Koltin 1.5.30 не завезли)
👉 Activity 1.4.0-alpha01 реализует интерфейс MenuHost, что позволит добавлять элементы в ActionBar из любого места
👉 Navigation 2.4.0-alpha08 представили возможность создавать собственные NavType в коде
👉 Profiler Installer 1.0.2 улучшил поддержка Android 9-11
Обновление Android Jetpack от 1 сентября 2021
👉 WorkManager 2.6.0 - переход на AndroidX Startup для инициализации и улучшения в работе со множеством процессов
👉 Compose 1.0.2 (поддержки Koltin 1.5.30 не завезли)
👉 Activity 1.4.0-alpha01 реализует интерфейс MenuHost, что позволит добавлять элементы в ActionBar из любого места
👉 Navigation 2.4.0-alpha08 представили возможность создавать собственные NavType в коде
👉 Profiler Installer 1.0.2 улучшил поддержка Android 9-11
#googleplay #wear
Raising the quality bar with updated guidelines for Wear OS 3.0
Начиная с 13 октября, приложения для Wear OS и циферблаты должны соответствовать новым требованиям, чтобы быть опубликованными в Google Play. Также вам надо обновить скриншоты для ваших приложений. Все изменения связаны с лучшей поддержкой Wear OS 3.0.
Полный список требований к приложениям можно найти здесь. Он включает в себя работу с уведомлениями, поддержку разных экранов и фичей.
Raising the quality bar with updated guidelines for Wear OS 3.0
Начиная с 13 октября, приложения для Wear OS и циферблаты должны соответствовать новым требованиям, чтобы быть опубликованными в Google Play. Также вам надо обновить скриншоты для ваших приложений. Все изменения связаны с лучшей поддержкой Wear OS 3.0.
Полный список требований к приложениям можно найти здесь. Он включает в себя работу с уведомлениями, поддержку разных экранов и фичей.
#compose #viewmodel #navigation
Jetpack Compose navigation architecture with ViewModels
Вариант организации навигации с Jetpack Compose, который предлагает Google и как туда вписать ViewModel
Jetpack Compose navigation architecture with ViewModels
Вариант организации навигации с Jetpack Compose, который предлагает Google и как туда вписать ViewModel
#ПодборкаВидео
На этой неделе лучшим видео (а точнее серией) я выбрал серию видео по Custom View в Android.
📺 Android Custom View. Теория. Обзор API и принципов создания View (37 мин)
📺 Android Custom View. Собственная ViewGroup (30 мин)
📺 Android Custom View. Диаграмма Ганта (40 мин)
📺 Почему я вернулся на Dagger. Пока Koin (12 мин)
📺 Hilt and dependency injection - MAD Skills (13 мин)
📺 Hilt testing best practices - MAD Skills (10 мин)
📺 Now in Android: 46 - MAD Skills Hilt, WindowManager, Android 12 widgets, and more! (6 мин)
📺 Coroutines. Хаотичное изучение. Часть 3 (30 мин)
📺 Kotlin Tutorial: Validating and Sanitizing Input. Advent of Code Puzzles (14 мин)
На этой неделе лучшим видео (а точнее серией) я выбрал серию видео по Custom View в Android.
📺 Android Custom View. Теория. Обзор API и принципов создания View (37 мин)
📺 Android Custom View. Собственная ViewGroup (30 мин)
📺 Android Custom View. Диаграмма Ганта (40 мин)
📺 Почему я вернулся на Dagger. Пока Koin (12 мин)
📺 Hilt and dependency injection - MAD Skills (13 мин)
📺 Hilt testing best practices - MAD Skills (10 мин)
📺 Now in Android: 46 - MAD Skills Hilt, WindowManager, Android 12 widgets, and more! (6 мин)
📺 Coroutines. Хаотичное изучение. Часть 3 (30 мин)
📺 Kotlin Tutorial: Validating and Sanitizing Input. Advent of Code Puzzles (14 мин)
Forwarded from Kotlin Multiplatform Broadcast
lateinit хорошее решение в Kotlin?
Anonymous Poll
21%
Хорошее
45%
Необходимое зло
21%
Плохое, не стоит его использовать
3%
Что это?
10%
Не участвую в опросе
#AndroidBroadcast #kotlin #lateinit
lateinit - это зло и «костыль» Kotlin
Я всегда плохо высказывался о lateinit. Он принёс много боли мне и разработчикам в моей команде. Пора показать почему и на что его заменить, а когда это не получится. Конечно же расскажу при чём тут Dagger 2.
Видео сделано при поддержке Avito.Tech
💰 Поддержи проект на Boosty или Patreon, чтобы получать контент на канале регулярно
lateinit - это зло и «костыль» Kotlin
Я всегда плохо высказывался о lateinit. Он принёс много боли мне и разработчикам в моей команде. Пора показать почему и на что его заменить, а когда это не получится. Конечно же расскажу при чём тут Dagger 2.
Видео сделано при поддержке Avito.Tech
💰 Поддержи проект на Boosty или Patreon, чтобы получать контент на канале регулярно