Android Studio Preview Quail Canary 1
👉 Удобная интеграция
👉 Интеграция LeakCanary в профайлер с новыми фичами
👉 Material Symbol support
👉 Новая считалка рекомпозиций
Android Good Reads
👉 Удобная интеграция
App Quality Insight -> Fix with AI👉 Интеграция LeakCanary в профайлер с новыми фичами
👉 Material Symbol support
👉 Новая считалка рекомпозиций
Android Good Reads
Android Developers
Release notes for Android Studio preview | Android Developers
Discover new features and changes in Android Studio preview.
👍3
Android Good Reads
А вот и ответ GooglePlay на петицию - разрешат ставить приложения в обход, но с ограничениями
Ну вот и вступил в силу первый этап раскатки новой системы
😱2
Forwarded from Антоха Разраб про AI
Тем временем Google активировал Android developer verification, против которого собирали петицию. Хоть и пошел немного на попятную, частично разрешив установку с ОЧЕНЬ херовыми условиями
Все апки пометили галочкой. Весь процесс работы с приложениями превращается в ужас с Apple...
Антоха Разраб
Все апки пометили галочкой. Весь процесс работы с приложениями превращается в ужас с Apple...
Антоха Разраб
😢11👍2😡2❤1🔥1
Почему используем STOMP c вебсокетами?
Когда у тебя в одном соединении живут входящие звонки, call events и WebRTC signaling, raw WebSocket быстро превращается в ручной роутинг JSON-пакетов.
STOMP решает это за счет:
👉 destination-based routing
👉 подписок на нужные топики
👉 structured frames
👉 heartbeat из коробки
Итог простой: меньше самописной магии, чище обработчики, легче дебажить и расширять real-time фичи
Когда у тебя в одном соединении живут входящие звонки, 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 - это оптимизация для случаев с переиспользованием одной и той же ссылки, а не замена пониманию стабильностиВнутри много кода, а не воды для самопроверки
🔥8❤2😁2
Dagger, Yatagan или Metro DI?
Android-команда Яндекс Путешествий сравнила DI-фреймворки, чтобы узнать, как ускорить сборку. Что из этого вышло, на чём остановились ребята и как прошла миграция — смотрите в канале Яндекс Вертикалей.
Кстати, сейчас там проходит розыгрыш промокодов на 10 и 20 тысяч рублей на ваши путешествия. Успевайте поучаствовать😉
Android-команда Яндекс Путешествий сравнила DI-фреймворки, чтобы узнать, как ускорить сборку. Что из этого вышло, на чём остановились ребята и как прошла миграция — смотрите в канале Яндекс Вертикалей.
Кстати, сейчас там проходит розыгрыш промокодов на 10 и 20 тысяч рублей на ваши путешествия. Успевайте поучаствовать
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Tech Community | Яндекс Вертикали
Сравнили DI-фреймворки и делимся результатами 🤝
Android-команда Путешествий столкнулась с проблемой: сборки проекта отнимали слишком много времени. Тогда Стёпа Немченко решил сравнить привычный Dagger с Yatagan и Metro DI, чтобы найти способ ускорить сборку.…
Android-команда Путешествий столкнулась с проблемой: сборки проекта отнимали слишком много времени. Тогда Стёпа Немченко решил сравнить привычный Dagger с Yatagan и Metro DI, чтобы найти способ ускорить сборку.…
👍6❤3🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Compose анимации без пересборки
Дебажить анимации трудно и долго. Hot reload помогает и тут. Внутри анимация
Дебажить анимации трудно и долго. Hot reload помогает и тут. Внутри анимация
Grid, кастомная анимация волны на Canvas, изменение типа анимации tween -> spring, изменение animateContentSizeHotSwan обновляет примитивы в обход компиляции Gradle, за счет этого и получается такой результат🔥8😱4👍3
Android CLI зацикливает на себе весь цикл разработки для андроид c агентами. Вам не нужно прыгать и искать какие скилы подтянуть в проект, какой контекст по андроид разработке предоставить. All-in-one от гугла (sdk, эмуляторы, запуск билдов ... )
Ни для чего другого, кроме как мобильной разработке, это не подходит, так что поставить точно рекомендую!
Ни для чего другого, кроме как мобильной разработке, это не подходит, так что поставить точно рекомендую!
🔥5
Forwarded from Антоха Разраб про AI
This media is not supported in your browser
VIEW IN TELEGRAM
Все идет по пути к тому что у каждого тула будет CLI версия. Обсидиан запустил пару месяцев назад, а вот и Google (Пере)представляет Android CLI
По ощущениям оч кастрированный и является надстройкой над
(c) Антоха Разраб про AI
По ощущениям оч кастрированный и является надстройкой над
adb(c) Антоха Разраб про AI
😍3💯2🔥1🥴1
Если вы используете Metro, в качестве DI, то знайте что оно стало стабильным. Свеженаписанный легковесный DI для android
Релиз ноутс: https://github.com/ZacSweers/metro/releases/tag/1.0.0
Релиз ноутс: https://github.com/ZacSweers/metro/releases/tag/1.0.0
🔥9✍5
Что нового в Compose в Апреле
👉 v2 API тестирования стал дефолтным,
👉 Shared Elements: новый composable
👉 Поддержка трекпадов: теперь трекпады распознаются как
👉 Compose runtime: новый
👉 Аннотация
👉 Готовимся что в 1.12.0
Android Good Reads
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 9Android Good Reads
❤2👍2🔥1
Что нового в Compose в Апреле Часть 2
Экспериментальные API:
👉 Styles API: декларативные стили компонентов с автоматическими анимациями. Судя по бенчмаркам, быстрее модификаторов
👉 MediaQuery: адаптация под окружение (размер окна, тип клавиатуры, режим стола и т.д.)
👉 Grid: 2D-раскладка с треками, фракциями (fr) и авто-размерами
👉 FlexBox: мощный контейнер с гибким распределением пространства, wrap'ом и выравниванием. Замена Row/Column/Flow
👉 Новый
Android Good Reads
Экспериментальные API:
👉 Styles API: декларативные стили компонентов с автоматическими анимациями. Судя по бенчмаркам, быстрее модификаторов
👉 MediaQuery: адаптация под окружение (размер окна, тип клавиатуры, режим стола и т.д.)
👉 Grid: 2D-раскладка с треками, фракциями (fr) и авто-размерами
👉 FlexBox: мощный контейнер с гибким распределением пространства, wrap'ом и выравниванием. Замена Row/Column/Flow
👉 Новый
SlotTable: ускорение случайных правок в дереве композиции (пока опционально через флаг)Android Good Reads
👍4🔥2❤1