Android Broadcast
14.4K subscribers
3.68K photos
367 videos
11 files
6.1K links
Подборка новостей и статей для Android разработчиков.

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

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
‼️ Google отменяет Compose Material Icons

С релизом Compose Material 3 — версии 1.4.0 Google сделала радикальный шаг: библиотека androidx.compose.material.icons исключена из Material3 и больше не рекомендуется к использованию.

Что произошло
👉 Material Icons удалены из актуального релиза Material3 1.4.0
👉 Поддержка библиотеки прекращена
👉 Можно подключить вручную, но это временная мера для тех, кто не успел мигрировать

Основная причина отказа - негативное влияние на скорость сборки. Библиотека Material Icons тащит весь огромный набор иконок. Это ощутимо увеличивает build time крупных Android и Compose Multiplatform проектов.

Google предлагает переходить на Vector Drawable XML в Android или Compose Multiplatform ресурсах. Скачивайте иконки с вкладки Android на странице Material Symbols и храните в ресурсах проекта

Преимущества использования Material Symbole:
✔️ актуальный набор иконок
✔️ минимальный вес и отсутствие лишних зависимостей
✔️ предсказуемое время сборки
✔️ лучший контроль над ресурсами проекта

❗️ Обновлений библиотеки Material Icons не будет!

Источник - официальная документация Android Jepack

Благодарю подписчика Evgeny F. за то, что обратил внимание на изменение.

#Android #AndroidJetpack #Material3 #Compose #CMP
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥81🤯40👍23🙏4🤝21
Media is too big
VIEW IN TELEGRAM
📹 Введение в FlowMVI

FlowMVI - простая и эффективная библиотека для реализации MVI подхода в Android и Kotlin Multiplatform приложениях.

Из видео вы узнаете про возможности бибилотеки и интеграцию ее в проект.

Автор библиотеки Никита @nek_12 сделал серию видео с демонстрацией возможностей. Все видео будут доступны на YouTube и VK Video, а автору очень нужна ваша поддержка и обратная связь в комментариях под видео (а не этим постом).

#MVI #Архитектура #KMP #Kotlin #Кодинг
Please open Telegram to view this post
VIEW IN TELEGRAM
18🔥35🤔196👍3🆒2🤯1
🔥 Узнайте опыт в самых разных сферах от разработчиков под Android и iOS от команды ПСБ.

В блоге найдете ответы на вопросы:
⭕️Как создать эффективное REST API или оптимизировать его?
⭕️Что сделать для ускорения Redis?
⭕️Какие секреты скрываются под капотом Android?
⭕️Что делать при конфликте стилей в микрофронтендах?
⭕️Что поможет провести продуктивное кросс-ревью в команде?

👉 Читайте блог ПСБ на Хабре и делитесь там в комментариях своим мнением и опытом!

#реклама
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤔5🤯3
🤖 Android 16 QPR2 вышел — первый минорный релиз SDK с новыми API!

Google выпустил Android 16 QPR2 — первое минорное обновление платформы, которое приносит новые функции без ломающих изменений.

🔧 Новый подход к версиям SDK
Теперь можно проверять минорные обновления через новые поля в Build:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.BAKLAVA && 
Build.VERSION.SDK_INT_FULL >= Build.VERSION_CODES_FULL.BAKLAVA_1) {
// API из QPR2
}


Ключевые изменения:
👉 Расширенная темная тема — система автоматически инвертирует интерфейс для доступности
👉 Пользовательские формы иконок — пользователи могут менять форму всех иконок
👉 Интерактивный шеринг — обновление контента в реальном времени в превью шаринга
👉 Новый сборщик мусора — снижает нагрузку на CPU

Каждую фичу разберем подробнее в следующих постах! Подписывайте на @android_broadcast, чтобы не пропустить

#Android16 #AndroidDev #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
22👍17🔥1
🐱 Android AI Sample Catalog - новый пример Google для демонстрации работы с Gemini AI в Android приложении.

Приложение включает примеры:
👉 Генерацию картинок в чате
👉 Генерации ответов или изменения текста в чате
👉 Мультимодальные возможности
👉 Суммаризация
👉 Генерация описания картинок
👉 и много всего еще

Что-то делается из этого на устройстве, а что-то через облако

#Android #AI #Gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍61
Media is too big
VIEW IN TELEGRAM
🤖 Jetpack Navigation 3: Полный гид по новой библиотеке навигации от Google

Гугл выпустил Navigation 3 — это новая глава в построении навигации для Android-приложений. Всё, что вы знали, теперь стало мощнее, гибче и композабльнее!

00:00 — Базовые принципы Navigation 3
02:09 — NavEntry и entryProvider
03:29 — Разбор API на практике
07:17 — Навигация в многомодульном приложении
11:27 — Модуляризация: пишем код
15:57 — Анимации экранов
16:15 — Погружаемся в анимации
19:44 — Адаптивные макеты (Scenes)
23:01 — Scenes в действии
24:39 — Краткий итог и выводы

🔗 Официальное руководство
🔗 Рецепты для работы с Nav3 (Code recipes)

Навигация больше не будет болью! Смотрите, внедряйте и делитесь впечатлениями в комментариях.

#Android #AndroidDev #Jetpack #Compose #KMP
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31👍9🎉3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🤯 Найми легенду! Jake Wharton в поиске новой работы

Человек, создавший много библиотек, которые есть практически в любом современном Android приложении. Он контрибьютит код во всем что мы используем ищет работу!

Для компаний из США и Европы - это офигенная возможность!
🤯70🔥15👍5
Forwarded from AvitoTech
Что происходит, когда три тимлида находят свободный слот в календаре?

🚀 Рождается подкаст!

«Свободный слот» — это честный разговор наших лидов — Саши Прокшиной, Саши Афёнова и Паши Федотова о том, что не всегда попадает в учебники, но с чем точно сталкивается каждый, кто управляет командами, продуктами и процессами. Без воды, с честной рефлексией.

В гости ребята зовут и других руководителей разработки — чтобы свериться по болям, взглядам и практикам.

Подкаст и телеграм-канал точно будут кстати тем, кто:
🔍 только начал путь к менеджерству и ищет поддержку или мнения тех, кто уже давно в это роли;
🔍 недавно стал лидом и хочет почувствовать, что он не один;
🔍 давно в роли, и хочет инсайтов, рефлексии и роста.

Слушать подкаст в удобном формате вот тут, а подписаться на канал — вот тут.

#tl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥43
🚀 Jake Wharton рекомендует использовать Beta и RC версии Android Jetpack библиотек

Легенда разработчик Джейк Уортон призвал использовать Beta и RC версии Android Jetpack библиотек, а не ждать стабильных релизов. Далее про причины

🚀 Beta ≠ "сырая версия". В экосистеме Android Jetpack бета-версии — это по сути стабильные релизы, которые прошли альфа-тестирование.
👍 Фиксы багов будут быстрее. Beta и RC получают исправления багов быстрее, чем стабильные релизы.
🔍 Раннее обнаружение проблем. Вы можете найти и сообщить о багах до выхода стабильного релиза и помочь сообществу раньше.

Такие причины сподвигнут вас брать Beta и RC? Ну точно нет. Некоторые ждут по 1-2 неделе после выхода Stable, чтобы обновляться!

#AndroidDev #Jetpack #BestPractices #JakeWharton
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉25🤔22👍131🏆1🆒1
Forwarded from Compose Broadcast
⚙️ Вышел Jetpack Compose 1.10.0

👉 Стабильное API Shared Transition
👉 Оптимизированный скролл
👉 Новые подходы к сохранению данных при пересоздании Activity через ViewModel
🚀 Повышена производительность UI на Compose
🛠 Исправлено багов и шероховатостей

Изменений действительно много — в один пост всё не поместить.

Буду разбирать ключевые обновления по отдельности в следующих публикациях на @compose_broadcast

#compose #android
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥279👍3
🚀 Вышла SwipeRefreshLayout 1.2.0 — важные исправления для "pull-to-refresh"

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

Исправление визуальных артефактов
- Иконка обновления теперь полностью убирается после сворачивания (исчезает её тень)
- Сброс всех свойств иконки после сворачивания, чтобы она корректно отображалась при следующем вызове

👍Корректная обработка Touch-событий. Метод requestDisallowInterceptTouchEvent() теперь работает как в обычных ViewGroup. Это важно для вложенных scroll-контейнеров.

Если новое поведение с обработкой touch-событий ломает ваше приложение, можно вернуть старое через:
swipeRefreshLayout.setLegacyRequestDisallowInterceptTouchEventEnabled(true)


#AndroidDev #Jetpack #UI
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥22👍9
🚀 Google выпустила androidx.webgpu:webgpu:1.0.0-alpha01 — WebGPU нативно в Android-приложения.

WebGPU — это новый графический и вычислительный API, который приходит на смену устаревающему WebGL. Его цель — дать разработчикам современный доступ к GPU для тяжёлых визуальных и вычислительных задач как в вебе, так и теперь — в Android, благодаря androidx.webgpu. Если упрощённо — WebGPU открывает дверь к автоматически оптимизированной работе с видеокартой без необходимости использовать низкоуровневые графические движки.

Что даёт WebGPU разработчикам:
🧩 Современная графика уровня Vulkan/Metal/DX12
⚙️ Compute-шейдеры для вычислений прямо на GPU
🚀 Высокую производительность рендеринга и ML-вычислений
🔁 Кроссплатформенность: единый подход Web + Android (и не только)
📦 Потенциально меньше нативного кода на C++/NDK
🧪 Удобный доступ к GPU-фичам для прототипов и экспериментов

Версия для Android пока в alpha, API нестабилен, документации немного. Но это важный шаг: Google фактически легализует WebGPU как будущий GPU-базис на Android.

#AndroidDev #Android #Jetpack #AndroidJetpack #WEB #GPU
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30🔥91
📹 Архитектура, которая не ломается | FlowMVI Часть 2

В этой части Никита @Nek12 разбирает, как FlowMVI применяет архитектурные подходы, позволяющие поддерживать предсказуемое поведение приложения и исключать хаотичные ошибки. Покажет, как инструмент помогает выстраивать MVI архитектуру, ориентированную на устойчивую работу в условиях многопоточности и постоянных изменений данных.

#Android #KMP #MVI #Архитектура
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔20👍8🔥3🆒1
🤖 Android 16 QPR2: системный шаринг наконец стал интерактивным

Раньше системный шузер для шаринга был «односторонним»: вы собрали Intent, отдали его в Intent.createChooser(...) — и дальше всё полностью контролирует система.

После открытия sharesheet вы уже не можете:
👉 обновить текст или вложения;
👉 убрать/добавить таргеты;
👉 синхронизировать состояние с продолжающимся действием в приложении.

Если пользователь что-то поменял (например, отредактировал текст или выбор вложений), приходилось закрывать шузер и открывать его заново.

Не так давно была возможность изменить контент для шаринга из шузера (сделали похожим как в iOS), а также добавить действия.

В Android 16 QPR2 / API 36.1 появился новый механизм — Interactive Chooser Sessions. Теперь приложение может держать живую сессию шаринга, обновлять её и получать события, пока открыт системный sharesheet. Для этого используются ChooserManager и ChooserSession.

// Базовый пример: запуск интерактивной сессии (Kotlin)
val chooserManager: ChooserManager = context.getSystemService()

val shareIntent = Intent(Intent.ACTION_SEND).apply {
type = "text/plain"
putExtra(Intent.EXTRA_TEXT, "This is a message that will be shared.")
}

val chooserIntent = Intent.createChooser(shareIntent, null)

val session: ChooserSession = chooserManager.startSession(context, chooserIntent)
val token: ChooserSessionToken = session.token


token можно сохранить в ViewModel или savedStateHandle, чтобы потом восстановить сессию после поворота экрана или пересоздания Activity.

val existingToken: ChooserSessionToken = /* restore from state */
val existingSession: ChooserSession = chooserManager.getSession(existingToken) ?: return


Управление сессией через ChooserSession API

val executor: Executor = ContextCompat.getMainExecutor(context)

session.addStateListener(executor, object : ChooserSession.StateListener {
override fun onStateChanged(state: Int) { }

override fun onBoundsChanged(bounds: Rect) { }
})


Временное отключение таргетов на время долгой операции:
session.setTargetsEnabled(false)

val updatedShareIntent = Intent(Intent.ACTION_SEND).apply {
type = "text/plain"
putExtra(Intent.EXTRA_TEXT, "Updated message generated in runtime")
}

val updatedChooserIntent = Intent.createChooser(updatedShareIntent, null)
session.updateIntent(updatedChooserIntent)

session.setTargetsEnabled(true)

// Завершение сессии, когда шаринг больше не нужен:
session.endSession()


#Android #Android16
Please open Telegram to view this post
VIEW IN TELEGRAM
👍306
🤖 Секреты под защитой: как мы спрятали ключи приложения с помощью Gradle-плагина

Автор статьи показа пример написания Gradle плагина который кладет секретный ключи в код и выполняет их минимальную защиту через побитовый сдвиг. Не панацея, но как минимум стоит делать такое

#Android #Безопасность
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔16👍61
🏝 Основы AGSL для android разработчика (17м)

AGSL (Android Graphics Shading Language) — это язык программирования фрагментных шейдеров, представленный в Android 13 (API 33), который позволяет разработчикам создавать сложные графические эффекты, настраивать отрисовку  Canvas  и фильтровать содержимое  View. Он глубоко интегрирован в графический движок Android (Skia), что позволяет применять GPU-ускоренные эффекты напрямую к стандартным элементам интерфейса .


Классная статья, которая описывает простым языком как рабоатет AGSL и какие преимущества дает разработчикам, а также как его начать использовать

#Android
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍86
🔨 Вышла стабильная Android Studio Otter 2 Feature Drop

Команда Android Studio выпустила финальный стабильный релиз 2025 года — Otter 2 Feature Drop. Это большое обновление которое в основном строится вокруг AI

Главные нововведения:
⭐️ Прокачали AI функции с Gemini 3
🔁 Бэкап и синхронизация настроек
🤖 Прямо в Android Studio можно получить новости от Android команды про новинки (зачем???)
🛠 Основана на IntelliJ IDEA 2025.2: Kotlin K2 Mode, прокачанный терминал

#AndroidStudio #Android #AndroidDev #AI #ИИ #Gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥4👎1
🤖 Samsung выпустила TriFold - трикладушка с 2 экранами. Снаружи смартфон с вытянутым экраном, а внутри - планшет на 10". Цена - около 2500$ в Кореи

Складные смартфоны стали чем-то новым и реально классным, но они не взлетили. Основные причины - софт, который оставляет ждать лучшей адаптации от разработчиков, а также стоимость таких устройств.

Я хочу себе такое устройство в пользование, но вот его стоимость пока меня останавливает 😔

Вам интересно увидеть видео про историю раскладушек и почему они не взлетели и сможет ли iPhone Fold тригернуть покупателей на приобретение такого устройства? Если да - ставь ❤️ под постом
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1136👍10🤯9👎1