Telegram Web Link
#Release #Stable #Changelog

Релизы Jetpack Compose 1.1.1 – 1.2.0-alpha06

Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:

🔸Версия 1.1.1 (Stable)
▫️Исправлена проблема с RTL в LazyVerticalGrid. (Подробнее)
▫️Исправлен crash приложения при чтении данных из буфера обмена. (Подробнее)
▫️Исправлен выброс NPE при вызове RenderNodeLayer.updateDisplayList. (Подробнее)

🔸Версии 1.2.0-alpha041.2.0-alpha06 (Alpha)
▫️Добавлен интерфейс MotionDurationScale для работы с анимациями. (Подробнее)
▫️Добавлена поддержка зеркалирования контента VectorPainter при работе с RTL . (Подробнее)
▫️Появилась возможность асинхронной загрузки шрифтов для Text-функций. (Подробнее)
▫️Добавлена функция LazyHorizontalGrid. (Подробнее)
▫️Добавлена поддержка FilterChip. (Подробнее)
▫️ComposeContentTestRule.setContent теперь будет выбрасывать IllegalStateException в случае, если content уже существует. (Подробнее)

Новое обновление коснулось и различных дополнений, а именно:

▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-alpha19
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha08
👍3🔥2
#Article #Medium #UI

Android — How to Drag And Drop Views in Jetpack Compose

Неплохая статья, в которой автор рассказывает как реализовать Drag And Drop в вашем приложении на Compose на примере книги заказов еды 🍕.
👍5
#Article #Blog #Performance

Composable metrics

По мере того, как инженеры продвигаются в изучении Jetpack Compose, большинство из них в конечном итоге обнаруживают, что не хватает одной важной детали — возможности измерить производительность ваших Composables. С выходом Jetpack Compose 1.2.0 в компилятор Compose был добавлен новый функционал, позволяющий выводить во время сборки различные метрики, связанные с производительностью, и определять потенциальные проблемные места в коде. О том, как это работает, в новой статье от Криса Бэйнса.
👍4
#Article #Blog #Performance

How can I debug recompositions in Jetpack Compose?

Отличная статья от Vinay Gaba про различные возможности отладки рекомпозиций в Jetpack Compose для получения различной полезной информации о производительности ваших Composable-функций. Помимо прочего, в материале приводятся примеры решений от команды Google Play (которая в числе первых начала использовать тулкит в своем продукте), а также используются метрики, из предыдущего поста.
👍2
#Article #Blog

Jetpack Compose Effect Handlers

Статья от Jorge Castillo (автора книги Jetpack Compose Internals), в которой он рассказывает о том, что такое сайд-эффекты в Compose, каких типов они бывают, а также как их “подружить” с Third-party библиотеками.
👍41
#реклама

Mobius — конференция по мобильной разработке от JUG Ru Group, в формате online+offline 🔥

▫️Online-часть: 25–27 мая.
▫️Offline-день: 22 июня.

Вас ждут выступления, посвященные трендам и новым технологиям, обмен опытом и общение с коллегами в чатах. А на offline-дне можно вживую пообщаться со спикерами, лично познакомиться с единомышленниками и потусоваться у партнерских стендов.

Также на конференции будут выступления, посвященные Compose. С одним из таких докладов буду выступать я сам, в рамках которого расскажу о том, как устроена одна из ключевых концепций тулкита — позиционная мемоизация.

А при использовании промокода mobilecompose2022JRGpc вы сможете приобрести персональный билет со скидкой.

Билеты и подробности на сайте.
👍4🔥1👏1
#Release #Stable #Changelog

Релизы Jetpack Compose 1.2.0-alpha07 – 1.2.0-alpha08

Очередной дайджест по основным изменениям последних минорных релизов фреймворка, среди которых:

▫️AnimatedImageVector теперь поддерживает параметры repeatCount и repeatMode. (Подробнее)
▫️Добавлен новый PinnableParent API для работы с элементами Lazy списков. (Подробнее)
▫️Добавлен KeyboardType.Decimal в качестве альтернативы Keyboard.Number. (Подробнее)
▫️В Composer добавлено поле recomposeScopeIdentity, что позволило убрать аннотацию @OptIn(InternalComposeApi::class) из класса RecompositionHandler. (Подробнее)

Новое обновление коснулось и различных дополнений, а именно:

▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-alpha20
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha09
👍3
#Article #Blog

Productivity hack to save tens of engineering hours when working with Jetpack Compose

Любопытная статья с кликбейтным заголовком от Vinay Gaba о том, как микрооптимизация автодополнения кода вашего проекта на Compose поможет сэкономить десятки (по мнению автора) часов работы в год.
👍2👎1
#реклама #conf

На грядущей конференции Mobius 2022 Spring будут представлены целых 3 доклада про Compose, на которых будут освещены такие темы как:

▫️«Positional memoization, или Как работает одна из главных концепций Jetpack Compose»
▫️«Анимации в Compose»
▫️«Декларативный UI. Flutter vs SwiftUI vs Jetpack Compose»

Конференция пройдет 25–27 мая на 80% в онлайне, а 22 июня в Санкт-Петербурге будет offline-день, на котором соберутся все, кто соскучился по живым выступлениям, дискуссионным зонам и тусовкам.

Найти полную программу и купить билеты можно на сайте. А по этому промокоду вы получите скидку на персональный билет: mobilecompose2022JRGpc
🔥5
#Video #Youtube #GoogleIO

Performance best practices for Jetpack Compose

Доклад с прошедшего Google I/O 2022, в котором спикеры рассказывают о лучших практиках Jetpack Compose в отношении производительности, а также о связанных с этим распространённых ошибках и способах их избежать.
👍5👎1
#реклама #conf

Бесплатный Community Day на Mobius 2022 Spring!

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

В билет бесплатного дня входят:
▫️ 6 докладов, в том числе и мой доклад про Compose.
▫️ Дискуссии после каждого доклада.
▫️ Возможность поучаствовать в играх, квизах, конкурсах и других активностях от партнеров конференции, где можно не только круто провести время, но и получить ценные призы.
▫️ Чаты, где сидят сотни ваших коллег со всего мира.

Для участия в Community Day нужно только зарегистрироваться — для этого переходите по ссылке.
🔥2😱1
#Article #Medium

Jetpack Compose under the hood: Touch Events

Интересная статья, в которой автор разбирает как работает обработка Touch-событий в Compose, а также сравнивает эту схему с существующей в Android Views фреймворке.

💡P.S. Изначально статья была написана в сентябре 2021 года для Compose 1.0.0, поэтому какая-то информация могла измениться
👍2👎1
#Release #Stable #Changelog

Релизы Jetpack Compose 1.2.0-beta01 – 1.2.0-beta03

Очередной дайджест по основным изменениям последних релизов фреймворка, среди которых:

▫️Добавлен набор Easing-функций (таких как EaseIn, EaseInQuart, EaseInSine и др.) для работы с анимациями. (Подробнее)
▫️Добавлены экспериментальные функции IntervalList и MutableIntervalList для представления списка при помощи различных интервалов (наподобие того, как это реализовано в LazyColumn с различными вызовами item/items). (Подробнее)
▫️LineHeightBehavior, LineVerticalAlignment и LineHeightTrim переименованы в LineHeightStyle, LineHeightStyle.Alignment и LineHeightStyle.Trim соответственно.
▫️В TextStyle и SpanStyle добавлен аттрибут Brush, что позволяет использовать градиент при отрисовке текста. (Подробнее)
▫️Добавлен новый экспериментальный LazyLayout API, которое позволит создавать свои собственные компоненты, такие как LazyColumn из LazyVerticalGrid. (Подробнее)
▫️Исправлена ошибка неправильной отрисовки BottomSheetScaffold. (Подробнее)
▫️Представлен новый экспериментальный кроссплатформенный API для написания тестов — ComposeUiTest.🔥

Новое обновление коснулось и различных дополнений, а именно:

▫️ConstraintLayout-compose обновлен до версии 1.0.1
▫️Paging-Compose обновлен до версии 1.0.0-alpha15
▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-beta03
▫️Compose Material 3 (Material You) обновлен до версии 1.0.0-alpha13
👍7👎1
#Article #Medium #Animation

Easing in to Easing Curves in Jetpack Compose

В прошлом дайджесте я писал про новый набор Easing-функций для работы с анимациями, который добавили в одном из последних бета-релизов, а уже спустя несколько дней, от ребят из Google появилась подробная статья с примерами о том, как правильно их использовать.
🔥3
#Release #RC #Changelog

Релизы Jetpack Compose 1.2.0-rc01 – 1.2.0-rc02

Очередной дайджест по основным изменениям двух последних RC релизов фреймворка, среди которых:

▫️Easing-функции, добавленные недавно, теперь не экспериментальные. (Подробнее)
▫️Представлен экспериментальный OverscrollEffect, позволяющий создавать собственные эффекты прокрутки.
▫️Новые функции (withKeysDown, withKeysToggled и др.) добавлены в KeyInjectionScope для инжекта нажатий клавиш в тот момент, когда другие клавиши уже удерживаются нажатыми. (Подробнее)
▫️Функция runComposeUiTestWithoutActivity переименована в runEmptyComposeUiTest. (Подробнее)
▫️Добавлено новое API checkScrollableContainerConstraints, позволяющее ограничивать использование вложенных scrollable-контейнеров. Может пригодиться при работе с LazyLayout. (Подробнее)

Новое обновление коснулось и различных дополнений, а именно:

▫️Compose для Wear, а также дополнения compose-material и compose-navigation для него обновлены до версии 1.0.0-rc02
👍5👎1
#Article #Medium

Avoid Race Conditions in StateFlow

В настоящее время, когда Compose набирает обороты, одним из наиболее популярных решений при выборе архитектурного подхода является MVI + StateFlow. В статье автор рассказывает о том, как при таком решении можно получить Race condition, а также что нужно делать, чтобы это избежать.
👍8👎2
#Article #Blog #Google

Independent versioning of Jetpack Compose libraries 🔥

Начиная с последнего релиза Jetpack Compose (29 июня) команда разработки фреймворка переходит к схеме независимого версионирования, благодаря чему каждая библиотека теперь будет развиваться отдельно и иметь свой собственный релизный цикл.

К примеру:
▫️Compose Compiler ➡️ получила обновление до версии 1.2.0 (stable) с поддержкой Kotlin 1.7.0
▫️Compose Animation/Foundation/Material/Runwww.tg-me.com/UI ➡️ получили сразу по два обновления — 1.2.0-rc03 и 1.3.0-alpha01

P.S. Также совсем скоро на канале выйдет дайджест в обновленном формате, в котором рассмотрим, какие изменения принесли вышедшие релизы.
🔥6👍1
#Article #Medium

A better way to pass Data from Api to Composable

Автор статьи поднимает такую тему, как передача данных, полученных из API, в Composable функции, а также объясняет, почему это плохая практика, и предлагает свой подход к решению этого вопроса.
👎6👍3
#Article #Medium

Introducing Jetpack Compose’s New Layout: “LookaheadLayout”

Вместе с появлением новой альфа версии Jetpack Compose (1.3.0-alpha01) API фреймворка пополнился новым и уже горячо обсуждаемым layout-ом — LookaheadLayout. Если кратко, это первый layout в Compose, способный отслеживать кадры используемой анимации, при помощи чего, к примеру, легко можно реализовать анимацию типа “Shared Element Transition”. Подробнее о том, как работает этот компонент — в сегодняшней статье.
👍62🔥2🤔2
2025/07/09 09:42:37
Back to Top
HTML Embed Code: