Android Good Reads
4.06K subscribers
413 photos
17 videos
1 file
2.2K links
Самые интересные статьи, видео и новости, связанные с Android разработкой. Не больше трёх материалов в день.

Размещение рекламы: @tanyasanovna

Автор канала: @Lamprof
Download Telegram
Android Studio Preview Quail Canary 1

👉 Удобная интеграция App Quality Insight -> Fix with AI
👉 Интеграция LeakCanary в профайлер с новыми фичами
👉 Material Symbol support
👉 Новая считалка рекомпозиций

Android Good Reads
👍3
Тем временем Google активировал Android developer verification, против которого собирали петицию. Хоть и пошел немного на попятную, частично разрешив установку с ОЧЕНЬ херовыми условиями

Все апки пометили галочкой. Весь процесс работы с приложениями превращается в ужас с Apple...

Антоха Разраб
😢11👍2😡21🔥1
Почему используем STOMP c вебсокетами?

Когда у тебя в одном соединении живут входящие звонки, call events и WebRTC signaling, raw WebSocket быстро превращается в ручной роутинг JSON-пакетов.

STOMP решает это за счет:
👉 destination-based routing
👉 подписок на нужные топики
👉 structured frames
👉 heartbeat из коробки

Итог простой: меньше самописной магии, чище обработчики, легче дебажить и расширять real-time фичи
4👍3👏2👎1
Strong Skipping Mode не делает типы stable, лишь позволяет skip’ать composable с unstable параметрами, если передан тот же самый объект по ссылке ===, тогда как stable типы по-прежнему сравниваются через equals() из-за этого он не помогает, если создаются новые инстансы (типа listOf(), copy()), и рекомпозиция всё равно происходит, поэтому stability позволяет пропускать перерисовку для разных объектов с одинаковыми данными, а Strong Skipping - это оптимизация для случаев с переиспользованием одной и той же ссылки, а не замена пониманию стабильности

Внутри много кода, а не воды для самопроверки
🔥82😁2
Dagger, Yatagan или Metro DI?

Android-команда Яндекс Путешествий сравнила DI-фреймворки, чтобы узнать, как ускорить сборку. Что из этого вышло, на чём остановились ребята и как прошла миграция — смотрите в канале Яндекс Вертикалей.

Кстати, сейчас там проходит розыгрыш промокодов на 10 и 20 тысяч рублей на ваши путешествия. Успевайте поучаствовать😉
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Compose анимации без пересборки

Дебажить анимации трудно и долго. Hot reload помогает и тут. Внутри анимация Grid, кастомная анимация волны на Canvas, изменение типа анимации tween -> spring, изменение animateContentSize
HotSwan обновляет примитивы в обход компиляции Gradle, за счет этого и получается такой результат
🔥8😱4👍3
Android CLI зацикливает на себе весь цикл разработки для андроид c агентами. Вам не нужно прыгать и искать какие скилы подтянуть в проект, какой контекст по андроид разработке предоставить. All-in-one от гугла (sdk, эмуляторы, запуск билдов ... )

Ни для чего другого, кроме как мобильной разработке, это не подходит, так что поставить точно рекомендую!
🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Все идет по пути к тому что у каждого тула будет CLI версия. Обсидиан запустил пару месяцев назад, а вот и Google (Пере)представляет Android CLI

По ощущениям оч кастрированный и является надстройкой над adb

(c) Антоха Разраб про AI
😍3💯2🔥1🥴1
Если вы используете Metro, в качестве DI, то знайте что оно стало стабильным. Свеженаписанный легковесный DI для android

Релиз ноутс: https://github.com/ZacSweers/metro/releases/tag/1.0.0
🔥95
Что нового в Compose в Апреле

compose-bom:2026.04.01 или Compose 1.11.0
👉 v2 API тестирования стал дефолтным, StandardTestDispatcher вместо UnconfinedTestDispatcher. Коррутины в тестах больше не выполняются сразу — очередь, пока виртуальные часы не продвинутся
👉 Shared Elements: новый composable LookaheadAnimationVisualDebugging показывает границы анимаций, траектории и несовпадения
👉 Поддержка трекпадов: теперь трекпады распознаются как PointerType.Mouse, а не Touch. Исправляет скролл вместо выделения, добавляет поддержку жестов и десктопных контекстных меню
👉 Compose runtime: новый HostDefaultProvider позволяет библиотекам (особенно KMP) получать сервисы без зависимости от compose-ui
👉 Аннотация @PreviewWrapper для переиспользуемых обёрток превью:
class ThemeWrapper: PreviewWrapper {
@Composable
override fun Wrap(content: @Composable (() -> Unit)) {
JetsnackTheme {
content()
}
}
}

@PreviewWrapperProvider(ThemeWrapper::class)
@Preview
@Composable
private fun ButtonPreview() {
// JetsnackTheme in effect
}

👉 Готовимся что в 1.12.0 compileSdk обновится до 37. Будет много боли потому что 37 Sdk тянет за собой AGP 9

Android Good Reads
2👍2🔥1
Что нового в Compose в Апреле Часть 2

Экспериментальные API:

👉 Styles API: декларативные стили компонентов с автоматическими анимациями. Судя по бенчмаркам, быстрее модификаторов
👉 MediaQuery: адаптация под окружение (размер окна, тип клавиатуры, режим стола и т.д.)
👉 Grid: 2D-раскладка с треками, фракциями (fr) и авто-размерами
👉 FlexBox: мощный контейнер с гибким распределением пространства, wrap'ом и выравниванием. Замена Row/Column/Flow
👉 Новый SlotTable: ускорение случайных правок в дереве композиции (пока опционально через флаг)

Android Good Reads
👍4🔥21