Android Broadcast
14.5K subscribers
3.83K photos
397 videos
11 files
6.3K links
Подборка новостей и статей для Android разработчиков.

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

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
​​#JetpackCompose

Showkase поможет вам организовать, изучить, найти и визуализировать компоненты Jetpack Compose UI. Фактически это букварь для изучения нового подхода для работы с UI в Android.

Библиотека конфигурирует UI браузер для просмотра все элементов и рендерит их в основных различных режимах.
#AndroidBroadcast #DeclarativeUI #JetpackCompose

Inkremental // Стабильный декларативный UI уже сегодня
Когда: четверг, 10 сентября, 20:00 (GMT+3)

Завтра будем обсуждать декларативный UI, его историю, принципы и подходы. В гостях у нас автор библиотеки Inkremental, которая уже сейчас на чистом Kotlin позволяет делать UI декларативно. Работает preview в Android Studio и это уже в проде!

Гость - Сергей Греков, Android Software Engineer в компании Issuu в Берлине. Разрабатывает мобильные приложения более 8 лет. Автор библиотеки Inkremental.
#JetpackCompose

Разработчик Jetpack Compose Leland Richardson завел YouTube канал на котором будет стримить разные интересные вещи о новом декларативном UI в Android.

Leland Richardson занимается разработкой Jetpack Compose с самого первого дня (уже 3 года) и большая часть его усилий сосредоточена на компипляторе и рантайме.
#JetpackCompose

Jetpack Compose Playground

Сборник примеров и гайдов по Jetpack Compose для тех кто уже готовится к адаптации UI в новом подходе.
​​#UI #JetpackCompose #Tooling

Introducing Radiography

Библиотека от Square которая поможет вам получить дамп иерархии того, что у вас сейчас показывается на экране, причем утилита уже поддерживает Jetpack Compose.
#JetpackCompose #Image

Accompanist - Utils for Jetpack Compose

Группа библиотека, которая содержит полезные утилиты для Jetpack Compose. Сейчас библиотека включает composable функции для Coil, Picasso и Glide.
Forwarded from Compose Broadcast
📺 Короткое видео (EN,4м) от команды Android про адаптация Edge-to-Edge (отображения UI приложения под системными панелями) когда ваш UI на Compose. Почитать можно тут

#android #edgetoedge
Please open Telegram to view this post
VIEW IN TELEGRAM
📹 НЕ архитектурное мок-собеседование уже доступно для просмотра

Теперь вы можете пересмотреть его в любое время с удобными таймкодами на 📹 YouTube и 📹 VK Video

Присоединяйтесь, если пропустили эфир — или пересмотрите лучшие моменты! 💬🔥

#Android #Собеседование #JetpackCompose
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Compose Broadcast
⚙️ mediaQuery в Compose: один вызов вместо кучи WindowSizeClass + posture + input

Официально появился mediaQuery — лямбда, которая смотрит на текущий UiMediaScope и возвращает boolean. Внутри можно проверять:
👉 windowWidth / windowHeight
👉 windowPosture (Tabletop, Book, Flat)
👉 pointerPrecision (Fine → Coarse → Blunt → None)
👉 keyboardKind (Physical / Virtual / None)
👉 hasCamera / hasMicrophone
👉 viewingDistance (Near / Medium / Far)

Включается одним флагом при запуске приложения:
ComposeUiFlags.isMediaQueryIntegrationEnabled = true


Для размеров, которые дёргаются часто, лучше использовать derivedMediaQuery (обёртка над derivedStateOf):
// Composable code
val narrowerThanMedium by derivedMediaQuery {
windowWidth < WindowSizeClass.WIDTH_DP_MEDIUM_LOWER_BOUND.dp
}
val narrowerThanExpanded by derivedMediaQuery {
windowWidth < WindowSizeClass.WIDTH_DP_EXPANDED_LOWER_BOUND.dp
}
when {
narrowerThanMedium -> SinglePaneLayout()
narrowerThanExpanded -> TwoPaneLayout()
else -> ThreePaneLayout()
}


Самый чистый кейс — foldable в tabletop:
// Composable code
if (mediaQuery { windowPosture == UiMediaScope.Posture.Tabletop }) {
TabletopLayout()
} else {
FlatLayout()
}


Это API не замена WindowSizeClass, но удобный единый вход для всего, что меняется в рантайме. Если пишете адаптив под foldable / desktop / TV — возьмите на заметку. Пока не перенесли в Compose Multiplatform.

Документация Media Query API

#Compose #JetpackCompose #Adaptive #UI #Android
Please open Telegram to view this post
VIEW IN TELEGRAM