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
This media is not supported in your browser
VIEW IN TELEGRAM
Улучшили навигацию между Compose Preview и Composable функцией с которой связано превью

#compose #androidstudio
🔥63👍8
🔨 Android Studio Narwhal FD позволит настроить ⚙️ Compose превью как вам будет угодно

#androidstudio #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥384👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔨 Compose превью теперь может быстро менять размеры. Это изменение в Android Studio Narwhal FD позволит проще проверять адаптивность UI, за что так топит Google

#androidstudio #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥107👍106
Серия статей с разборами лучших практик для Jetpack Compose:
1️⃣ 5 Core Optimizations Every Developer Should Know (EN, 5м, альт. ссылка)
2️⃣ 5 Advanced Techniques for Ultra-Smooth Apps (EN, 8м, альт. ссылка)
3️⃣ The Expert’s Toolkit (EN, 8м, альт. ссылка)
4️⃣ Runtime Mastery & Fine-Tuning (EN, 8м, альт. ссылка)

#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥444🤔4
Media is too big
VIEW IN TELEGRAM
📹 Mastering text input in Compose (EN, 18м)

Google выпустили шикарное видео, где показали лучшие практики работы с текстовыми полями в Compose — с примерами, API и лайфхаками.

В ролике разработчики на примере рассказывают:
👉 как использовать state-based TextField — новый подход к управлению вводом;
👉 зачем нужен SecureTextField и как задать требования к паролю;
👉 как работает Autofill API (да, теперь можно сохранять логины и OTP);
👉 как кастомизировать поле ввода OTP с помощью BasicTextField и decorator;
👉 как принимать GIF и изображения через drag & drop с новым contentReceiver;
👉 как использовать input/output трансформации для автоподстановки скобок и тире в номерах;

#android #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3212
🎉🚀 Новая Jetpack Библиотека - Photo Picker

Новая библиотека Jetpack Photo Picker позволит перенести встраиваемый Photo Picker из Android 16 на более ранние версии Android. Благодаря Mainline системе встраиваемый Photo Picker будет доступен на Android 14 и выше как часть ОС, а вот на других версиях будет помогать библиотека Jetpack Photo Picker, работающая скорее всего на основе Google Play Services.

Важно - сразу сделали версию для View и Compose

#android #jetpack #android16 #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥48👍93
🐱 Библиотека Navigation - навигационная библиотека для Compose под Android, построенная вокруг состояния. Open source решение от подписчика канала (задавате вопросы в комментариях и поддержите Звездой на 🐱 GitHub)

// Создаем NavigationManager и передаем в него начальное состояние
val navigationManager = rememberNavigationManager(
NavigationState(
NavigationHost(
hostName = "Main",
initialDestination = FirstSampleDestination(),
)
)
)

@Parcelize
class FirstSampleDestination : ComposeDestination {

@IgnoredOnParcel
override val composable: @Composable (Destination) -> Unit = {
FirstSamplePane()
}
}

// инициализируем навигацию в Compose
Navigation(
navigationManager = navigationManager
) {
Pane(rememberNavigationHost("Main"))
}

// Пример перехода
navigationManager.execute(
ForwardCommand(SecondSampleDestination(text))
)

@Parcelize
data class SecondSampleDestination(val text: String) : ComposeDestination {

@IgnoredOnParcel
override val composable: @Composable (Destination) -> Unit = { destination ->
SecondSamplePane((destination as SecondSampleDestination).text)
}
}


Делитесь в комментариях как вам решение и я тоже пошел обсуждать

#compose #навигация #opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔21🔥62
🔨 В Android Studio Narwhal Feature Drop в Layout Inspector появится счетчик дочерних (Child) рекомпозиций

#androidstudio #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍573🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥174👍3
Media is too big
VIEW IN TELEGRAM
📹 Jetpack Navigation 3 Core Concepts (EN,11м)

Рассказ про основные принципы новой навигации от Google для Compose - Jetpack Navigation 3

0:00 Вступление
1:05 Что есть Навигация
2:08 Архитектура
4:40 Требования
5:26 Почему это так сложно
7:01 Задачи Navigation 3
9:02 Владение Backstack-ом
10:04 Будущее

#android #jetpack #compose #навигация
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25🤯94🤔1
Media is too big
VIEW IN TELEGRAM
📹 Embedded Layout Inspector (EN,6м)

Демонстрация возможностей встроенного в Android Studio инструмента Layout Inspector для дебага Compose UI

0:00 - Что за инструмент
1:31 - Как дебажить
5:26 - Итоги

#compose #androidstudio
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
Forwarded from Compose Broadcast
This media is not supported in your browser
VIEW IN TELEGRAM
LazyTimetable - open source Jetpack Compose библиотека для реализация lazy расписания мероприятия или в школе/универе. Работает только на Android

#compose #android #opensource
🔥32👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔨 Превью Compose можно будет изменять прямо в IDE

Google активно продвигает поддержку больших экранов и теперь тестировать UI на Compose в Android Studio будет проще. Изменять размер окна превью можно прямо в IDE и интерфейс будет подстраиваться под текущий размер.

Попробовать можно в свежей версии Android Studio Narhwall Feature Drop или новее. В Compose Preview надо переключить на режим "Focus"

#androidstudio #compose #ui
Please open Telegram to view this post
VIEW IN TELEGRAM
👍57🔥29
Media is too big
VIEW IN TELEGRAM
📹 Разбор Jetpack Navigation 3 - настоящая навигация для Compose (21 мин)

Месяц назад Google анонсировала навигацию специально разработанную под Compose и которая должна решить все боли. В видео показываю её возможности, делюсь своим мнение и рассказываю про недочеты, которые надеюсь что решат до стабильного релиза

#AndroidBroadcast #navigation #jetpack #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52🔥10🤔43
🐱 Torrent Search - open source проект для поиска и скачивания с разных торрентов.

Стек: #kotlin, #material3, #compose, Ktor, Room

#android #пример
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🤯174🔥2🎉1🤝1
⚙️ KRD Compose — это open source коллекция визуальных решений, разработанных с использованием Jetpack Compose сообществом Android Krasnodar.

Компоненты
👉 DataSlider — компонент слайдера для удобного просмотра данных.
👉 PascalTriangle — Кастомизируемый треугольник Паскаля.
👉 NumberSystemConverter — Конвертер систем счисления с визуализацией битов.

🎮 Игры
👉 Сапёр — реализация классической игры с настраиваемой сложностью и таймером
👉 Змейка — реализация классической игры "Змейка"
👉 Шахматы — реализация игры "Шахматы" человек vs человек с классическими правилами FIDE
👉 Колесо фортуны — реализация игры "Колесо фортуны". Крутите барабан!

#android #compose #пример
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔33👍15🔥117
🚀 Jetpack Lifecycle позволит создавать дочерние Lifecycle в Compose

В Jetpack 2.10.0-alpha01 появилась новая Composable функция LifecycleOwner для создания дочернего Lifecycle. Изменение нужно для Navigation3.

@Composable
fun MyComposable() {
LifecycleOwner(
maxLifecycle = RESUMED,
parentLifecycleOwner = LocalLifecycleOwner.current,
) {
val childLifecycleOwner = LocalLifecycleOwner.current
}
}


#compose #jetpack #android #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔236👍4🔥4
💡 Надо регулярно следить за выполнением правил и лучших практик в коде

За годы работы в IT в разных компаниях и командах я понял одну простую вещь:
даже лучшие правила и практики будут нарушаться, если нет автоматической системы, которая их регулярно проверяет.

Сегодня поделюсь, как я подхожу к автоматизации контроля качества кода Android-проектов на Kotlin.
Рассматривать будем только статический анализ — когда код не выполняется, а анализируется как текст.


🛠 Инструменты для анализа кода
Detekt — статический анализатор Kotlin-кода. Работает быстро, так как проверяет файлы по отдельности, без учёта зависимостей между ними.
KtLint — проверка стиля кода. Настроек немного, но работает с конфигом .editorconfig, что удобно для командной разработки.
Android Lint — мощный инструмент для Android-проектов. Может анализировать разные типы исходников и проверять сразу несколько файлов по одному правилу.
⚠️ Запуск из Android Studio и через Gradle может иметь разные настройки. Полный контроль — через Gradle


⚙️ Дополнительно для Compose:
Compose Rules — правила для Detekt или KtLint, проверяющие соответствие best-practice работы с Compose.
Compose Rules от Slack — набор правил для Android Lint (частично пересекается с предыдущим, но есть уникальные).

🔐 Безопасность:
GitLeaks — поиск в коде секретов и данных, которые не должны попасть в репозиторий.
Можно смело комбинировать несколько линтеров. Лучше перебдеть, чем недопроверить.



🚀 Как запускать проверки
Я использую три уровня автоматизации:
1. Перед пушем кода — быстрые проверки (Detekt, KtLint) в pre-push hook.
⏱️ Цель — не больше 30 секунд, чтобы не раздражать разработчиков, но сразу отсеивать очевидные ошибки.
2. На CI/CD — полная проверка.
⏱️ Лимит — 10 минут. Обычно сюда входят все линтеры, кроме Android Lint, который может сильно замедлить процесс.
3. Ночные прогоны — расширенный Android Lint и тяжёлые правила, если в проекте были изменения.


🛠 Собственные правила
Стандартные линтеры могут покрыть только общие случае и правила, но если есть практики, которые надо форсировать для вашего кода то тут надо будет писать собственные правила. Для анализа Kotlin кода я пишу расширения для Detekt, а во всех остальных случаях - для Android Lint, но довольно редко.
📌 Бонус: AAR-библиотеки могут содержать свои Lint-правила, которые автоматически подключаются при их использовании.


💬 Делитесь в комментариях как вы следите за качеством вашего кода на регулярной основе и какие инструменты используете.

#android #compose #инструменты #ci
Please open Telegram to view this post
VIEW IN TELEGRAM
👍48🔥8🆒32
⚙️ Вышел Jetpack Compose 1.9 Stable (августа 2025)

Главные новинки:
👉 Тени нового поколения — dropShadow() и innerShadow() дают больше контроля, чем классический shadow().
👉 LazyLayout — новый API предзагрузки и кэширования элементов для более плавного скролла.
👉 2D-прокрутка — Scrollable2D для таблиц, карт и больших изображений.
👉 Расширенный stack trace — имена composable и их позиции для отладки в stacktrace (только в debug).
👉 Новые аннотации — @RememberInComposition, @FrequentlyChangingValue и перенос @Stable в отдельный модуль.

Подробнее буду рассказывать в @compose_broadcast. Подписывайтесь!

#compose #android
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥57👍6
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Как использовать Compose, чтобы сделать анимированный Splash Screen

Разработчик создал библиотеку androidx-splashscreen-compose (не от Google решение), которая позволяет делать красивую анимацию как на анимашке.

Подробный разбор и реализация есть в статье (EN,6м, альт. ссылка) или 🐱 исходниках на GitHub

#android #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥50👍7🤔2