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

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

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
🪙 Завёл на Boosty «Дневник ИИ кодера»

Последние месяцы активно работаю с ИИ-агентами — и это прямо затягивает. Подход простой: никакого кода руками, только задание агенту, дальше он сам — до результата и проверки.

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

Мне интересно, куда это всё идёт. И я рассказываю своё видение. Кому тоже интересно — заходите.

🔗 Все видео в подборке на Boosty

#AndroidBroadcast #AI
Please open Telegram to view this post
VIEW IN TELEGRAM
181👎128👍36🔥74🤔1🎉1👌1
🚀 Начали разработку Room 3.0, который станет полностью KMP-библиотекой с поддержкой JS и WASM, а также избавится от легаси.

Разработчики популярного ORM для Android и KMP решили выпустить мажорную версию, чтобы отразить всю важность изменений:
👉 Полный переход на androidx.sqlite driver API.
👉 Генерация кода будет только на Kotlin, никакой больше Java.
👉 APT и KAPT больше не будут поддерживаться. Остается только KSP.
👉 Room API теперь будет делаться в подходе "Kotlin Coroutines first", делая весь ORM асинхронным по умолчанию.

Что нас ждет из новых фичей и возможностей:
👉 Появится полноценная поддержка JS и WASM-таргетов.
👉 Можно будет добавить собственные возвращаемые типы в Room. Например, Room, RxJava, Paging и пр.

Новая версия Room будет выпущена под новым пакетом androidx.room3. Room 2.X не получит новых фичей, только багфиксы.

🔗 Источник - блог Android Developers.
🔗 Release Notes Room 3.0.0-alpha01

#Android #AndroidDev #Room #SQLite #Jetpack #AndroidJetpack #KMP
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥88👍21👎73🤯1
🐱 Выложил свои наработки для использования с AI Агентами на GitHub

Репозиторий включает магазин для Claude Code и несколько инстурметов
👉 maven-mcp умеет получать информацию о свежих версиях зависимостях, дать дифф изменений, проверь, какие обновления вам нужны
👉 sensitive-guard - добавляет хуки, чтобы проверить файлы на чувствительные данные перед тем, как агент попытается обратиться к ним. Работает на основе gitleaks.

#AI #Gradle #ClaudeCode #Безопаность #Maven
Please open Telegram to view this post
VIEW IN TELEGRAM
27👍30👎147🤔1
🤖 Google ускорила ядро Android, скормив компилятору профили реального использования

Команда LLVM toolchain в Google рассказала, как они применили AutoFDO (Automatic Feedback-Directed Optimization) к ядру Android — и результаты интересные.

Идея простая: обычный компилятор принимает решения об оптимизациях на основе статических эвристик. Встроить функцию или нет, какая ветка условия чаще выполняется — всё это угадывается без реальных данных из приложений и пользовательских сценариев. AutoFDO меняет подход: компилятор получает профили реального выполнения кода и на их основе принимает куда более точные решения.

Эта техника Google уже давно применяется к своей серверной инфраструктуре и ChromeOS, так что подход обкатанный и зарекомендовавший себя.

Кто знаком с ART Profiles — идея покажется знакомой. Там тот же принцип: собираем данные о реальном выполнении, отдаём компилятору, получаем более точный нативный код. Только ART Profiles работают на уровне ART для Java/Kotlin-кода конкретного приложения, а AutoFDO — на уровне ядра, C/C++ и LLVM. Разные слои, одна философия.

Для ядра профили собирают не с реальных устройств, а в лабораторных условиях: запускают топ-100 самых популярных приложений, используют simpleperf и аппаратные возможности ARM для записи истории ветвлений. Собранные данные показывают 85% совпадение с профилями реального парка устройств — этого достаточно, чтобы считать подход рабочим.

Результаты на ядрах 6.1, 6.6 и 6.12:
👉 холодный старт приложений стал быстрее на ~4%
👉 время загрузки сократилось на ~1%
👉 ядро занимает ~40% CPU-времени на Android, так что любая оптимизация здесь ощутима

Важный момент: AutoFDO не меняет логику кода, только влияет на решения компилятора — инлайнинг, раскладку кода. Функции, которые не попали в профили («холодные»), компилируются стандартным образом, без изменений.

Сейчас это уже в проде — профили включены в ветки android15-6.6 и android16-6.12, так что устройства на этих ядрах уже собираются с AutoFDO. Pixel-устройства точно попадают в эту категорию. С другими производителями сложнее: многие используют сильно модифицированное ядро и не переходят на GKI из AOSP, так что там это может быть не применено вовсе. В планах — GKI-модули, вендорные модули через DDK и поддержка новых версий ядра.

🔗 Источник - блог Android Developers

#Android #AndroidDev #Производительность #LLVM #Native
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥49👍86👎4
🤖 Google опубликовал обновлённые дизайн-ресурсы для Android — и там есть кое-что полезное

Компания активно продвигает адаптацию Android-приложений под ноутбуки и десктопы, где управление происходит мышью и клавиатурой. Неудивительно, ведь скоро появится Android-ноутбук, есть Chromebook'и, да и телефоны уже давно предлагают подключать к большому монитору.

1️⃣ Появилось новое руководство по Desktop Experience. Это про то, как ваше приложение должно выглядеть и работать, когда пользователь запускает его в desktop-режиме. Там разобраны принципы компоновки под большие экраны, работа с курсором (включая кастомные иконки), windowing с header bar и подход к более высокой плотности информации в UI. Всё это логично вытекает из того, что Android всё активнее движется в сторону десктопа через функцию connected display.

2️⃣ Запустили Android Design Gallery — живой каталог с примерами хорошего дизайна под разные форм-факторы и паттерны UX. Обещают пополнять регулярно. Полезно хотя бы как источник вдохновения, когда застреваешь на том, как должен выглядеть адаптивный экран.

Честно говоря, руководство давно напрашивалось — адаптивная разработка под Android остаётся одним из самых недооценённых направлений. Большинство приложений на планшетах и десктопах до сих пор выглядят как растянутый телефон. Особенно что в Andorid 17 система будет игнорировать ограничения приложений на размеры окна и ориентацию, картина будет интересной.

🔗 Источник: Android Developers Blog

#Android #AndroidDev #Дизайн #UI
Please open Telegram to view this post
VIEW IN TELEGRAM
33👍12👎6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
📹 Почему функция камеры Android приложений не становятся лучше?

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

Смотрите на 📹 YouTube и 📹 VK Video

#AndroidBroadcast #Camera
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥7👎4👏42🤔2🤯1🎉1
Кирилл Розов о генеративном AI в мобильной разработке на Mobius 2026 Spring

На Mobius выступит наш постоянный спикер — Кирилл Розов (Альфа-Банк Беларусь), один из ведущих экспертов по мобильной разработке и внедрению AI-ассистентов в продуктовых командах.

Кирилл расскажет честную историю перехода от скепсиса и страха к осознанному использованию AI. Разберем, как этот инструмент помогает повышать эффективность и качество разработки.

Вы узнаете:

🔹как генеративный AI меняет архитектуру приложений, процессы тестирования и роль разработчика;
🔹паттерны поведения команд и разработчиков на разных стадиях внедрения AI;
🔹практические шаги, которые помогут безопасно и эффективно интегрировать AI в рабочие процессы;
🔹какие специалисты будут особенно востребованы в ближайшие годы — разработчики с системным мышлением, архитекторы, тимлиды и QA, умеющие управлять AI, а не конкурировать с ним.

Приходите послушать доклад, а главное — пообщаться с самим Кириллом в дискуссии.

Купить билет
👎67👍445🔥3👌2
🤖 Google отступил — сайдлоадинг остаётся, но теперь со "взрослым режимом"

Помните историю с обязательной верификацией разработчиков за пределами Google Play? Ту, где сообщество буквально взорвалось возмущением — мол:
Google закрывает открытую платформу, прощай сайдлоадинг для всех, кто не хочет светить паспорт и платить регистрационный взнос.

Google тогда обещал прислушаться к обратной связи и решил понизить градус требований.

Теперь у пользователей будет так называемый advanced flow для установки приложений от неверифицированных разработчиков. Выглядит это как небольшой квест:

1️⃣ Включить режим разработчика в настройках системы
2️⃣ Подтвердить, что вас никто не принуждает это делать
3️⃣ Перезагрузить телефон и пройти повторную аутентификацию
4️⃣ Подождать один день (защитный период!)
5️⃣ Подтвердить намерение через биометрию или PIN
✔️ Всё — можно устанавливать, причём сразу на 7 дней или бессрочно

Официальная причина такой сложности — борьба с мошенниками. По данным GASA, в 2025 году 57% взрослых пользователей в мире столкнулись с мошенничеством, а суммарные потери составили $442 млрд (информация из анонса). Типичная схема: звонок с угрозами, давление и просьба срочно отключить защиту и установить "нужное" приложение. Многоэтапный флоу с ожиданием сутки как раз ломает эту цепочку — дать человеку время подумать.

Ещё одна приятная деталь — бесплатные аккаунты с ограниченным распространением для студентов и энтузиастов. До 20 устройств, без ID, без оплаты. Для тех, кто просто хочет поделиться своей поделкой с друзьями.

Google реально постарался найти баланс. Угроза мошенничества через сайдлоадинг — не выдуманная, суммы потерь говорят сами за себя. При этом hardcore-разработчики и опытные пользователи ничего принципиально не теряют, просто теперь нужно пройти однократный ритуал. Другой вопрос — насколько этот "ритуал" будет раздражать тех, кто устанавливает сторонние приложения регулярно. Я вижу два лагеря: одни скажут "ну наконец-то хоть что-то для безопасности обычных людей", другие — "очередное закручивание гаек под видом заботы". И честно — оба правы по-своему.

Вступает в действие в августе 2026 с разворачиванием новый системы верификации разработчиков

💬 Ну как вам уступка Google или всётаки верните наш 2025?

🔗 Источник - Блог Android Developers

#Android #AndroidDev #GooglePlay #Безопасность🏝
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👎48👍32🔥5🤔5
Не только Google слушает разработчиков, но и я вижу, как тема AI-кодинга раскалывает сообщество. Мне очень интересна эта тема и я активно в неё погружаюсь. Встречайте новый канал - @ai_dev_broadcast

В канале НЕ будет потока новостей:
"Вышла новая модель A, которая стала быстрее на N% и уступила всех конкурентов"


Освещать буду то, что реально интересно мне в разработке с помощью ИИ и мой опыт:
👉 как применяю AI в разработке и управлении командой
👉 что попробовал, что зашло, что нет
👉 находки и кейсы, которые не влезают в @android_broadcast
👉 эволюцию взгляда для решения различных задач с ИИ

#AndroidBroadcast #ИИ
52👍67👎28🔥6🎉32🙏2👏1🤔1👌1
🤯 Fortnite вернулась в Google Pla После 6 лет долгих сражений с Google. Это привело к переменам политики Google Play в США и по всему миру. Недавние перемены магазина от Google - результат сделки между компаниями

🔗 Источник: www.fortnite.com
👍34👎8🔥62
🤖 TLRU — эволюция LRU-кэша с учётом времени

Стандартный LRU-кэш не знает ничего о времени — он выбрасывает записи только когда заканчивается место. Поэтому в дисковом кэше Glide могут месяцами лежать устаревшие изображения, пока не будет достигнут лимит размера.

Команда Grab описала подход TLRU (Time-Aware LRU) — форк DiskLruCache с тремя дополнительными параметрами:

1️⃣ TTL — время жизни записи. Если (текущее_время - время_последнего_доступа) > TTL, запись удаляется

2️⃣ Минимальный порог — защита от полного сброса. Если пользователь долго не заходил и все записи устарели, кэш всё равно не очищается полностью — иначе при возвращении все изображения загружались бы заново

3️⃣ Максимальный размер — наследуется от LRU без изменений

Реализация аккуратная: метка времени последнего доступа хранится прямо в journal-файле, переживает перезапуски. Алгоритм оптимизирован — если самая старая запись ещё не устарела, остальные не проверяются.

Миграция со старого LRU безопасна в обе стороны: оригинальный DiskLruCache читает TLRU journal, просто игнорируя временны́е суффиксы.

Мне нравятся такие решения, когда не надо переписывать с нуля, а точечно расширить проверенную реализацию. Три параметра поверх существующего механизма — и кэш наконец умеет забывать ненужное. Ну и честно - решение лежало на поверхности и вполне логичное.

🔗 Источник: engineering.grab.com

#Android #AndroidDev #Производительность #Оптимизация
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4015👎6🔥3🤔1👌1
🔥 Firebase Crashlytics получил MCP-сервер

В экспериментальном режиме Firebase запустили MCP-сервер для Crashlytics. Раньше, чтобы вытащить данные для анализа, нужно было настраивать экспорт в BigQuery, разбираться с Cloud Logging, писать SQL-запросы. Целый пайплайн ради того, чтобы понять что происходит со стабильностью приложения. Теперь всё это стало ощутимо проще.

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

Многие крашлитиковские ишью на практике достаточно простые, и агент вполне способен с ними справиться самостоятельно. Можно выстроить полный цикл: агент ночью смотрит новые крашы, разбирает их, создаёт задачи, предлагает или сразу делает фиксы, оставляет комментарии со всем контекстом. Раньше для этого не хватало именно доступа к данным мониторинга — теперь этот кусок закрыт.

🔗 Источник: firebase.google.com

#Firebase #Crashlytics #MCP #AndroidDev #Android
👍59👎9
🤖 Google рассказала больше про Contact Picker из Android 17

Вышла отдельная статья в блоге со скриншотами — можно наконец посмотреть как пикер выглядит в живую.

Из того, что не было в анонсе: на Android 17 старые ACTION_PICK с контактными типами автоматически апгрейдятся до нового пикера. То есть часть приложений получит приватный выбор контактов вообще без изменений кода. Приятный бонус для тех, кто не торопится мигрировать.

В Compose интегрируется через rememberLauncherForActivityResult — код в статье рабочий, можно брать напрямую.

🔗 Источник: android-developers.googleblog.com
📖 Документация: developer.android.com

#Android #AndroidDev #Android17
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍46👎9
🤖 Android 17 закручивает гайки для фонового аудио

В Android 17 появилось новое ограничение, которое затронет авторов музыкальных плееров, подкаст-приложений и всего, что воспроизводит звук в фоне без видимого UI.

Суть в следующем: теперь аудио фреймворк проверяет, имеет ли приложение право взаимодействовать с аудио в фоне. Без корректно запущенного foreground service с While-In-Use (WIU) возможностями звук просто отключится.

WIU — это условие, при котором Foreground Service запущен из видимого UI или в ответ на MediaSessionEvent. Если FGS запущен, например, по BOOT_COMPLETE и лезет в аудио — он будет заблокирован.

Рекомендуемый путь — использовать Jetpack Media3 MediaSessionService, который сам управляет жизненным циклом и не требует дополнительных телодвижений. Если media3 не используется, нужно вручную следить за тем, чтобы mediaPlayback FGS запускался из foreground и оставался живым на время транзиентных сбоев (не дольше 10 минут).

На мой взгляд, изменение правильное. Баги, когда приложение просыпается через несколько часов после заморозки и неожиданно начинает воспроизведение — реальная проблема. Другой вопрос, что тихая блокировка без каких-либо ошибок в API сделает диагностику неочевидной. Инструменты вроде `adb dumpsys audio` и logcat помогут, но разработчики, которые не читают changelog, узнают об этом только от пользователей.

🔗 Источник developer.android.com

#Android #AndroidDev #Android17
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43👎14
Оказывается Android Automotive всё ещё жива. Новостей про неё мало, но вот иногда доносится. Подробнее в блоге

#Android #Android17 #Automotive
👎11👍4
🤖 Вышла CameraX 1.6.0 с крутыми улучшениями

Вышел стабильный релиз CameraX 1.6.0. Цикл разработки был долгим, зато список изменений получился весомым.

👉 Переход на CameraPipe — CameraX теперь работает на том же стеке, что и приложение камеры Pixel. Все оптимизации и новые computational photography фичи отныне приходят в CameraX автоматически.

👉 Media3 Muxer по умолчанию — видеозапись через VideoCapture теперь использует Media3 Muxer. Если приложение упадёт во время записи, файл не повредится. Плюс более эффективный процессинг в целом.

👉 Feature Group обновилсяGroupableFeatures пополнился константами VIDEO_STABILIZATION и UHD_RECORDING. Теперь их можно комбинировать с другими фичами в одном SessionConfig, туда же вписываются CameraEffect и ImageAnalysis.

👉 SessionConfig стал стабильным API — вышел из experimental вместе с HighSpeedVideoSessionConfig. Появился isSessionConfigSupported для проверки совместимости конкретной комбинации фич до биндинга к lifecycle. Также появился ExtensionSessionConfig для работы с CameraX Extensions.

Также исправили баг на Android 17. Версия 1.5.2 падает.

🔗 Источник - developer.android.com
🐱 Примеры на Github

#Android #AndroidDev #CameraX #Jetpack #Камера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍39👎6
🤖 Android 17 меняет подход к приватности геолокации.

Вышла Android 17 Beta 3 и все изменения там касаются геолокациии

👉 Location Button — разовый доступ к точной геолокации
Новый UI-элемент из Jetpack, который даёт доступ к точным координатам прямо в момент нажатия, без постоянного разрешения. Пользователь нажал кнопку "поделиться местоположением" в вашем приложении — получил данные один раз в рамках сессии. Никаких диалогов с выбором "разрешить всегда / только сейчас". Кнопку можно кастомизировать: цвет, форма, текст из предопределённого списка. Иконка местоположения остаётся обязательной и неизменной. На Android 16 и ниже Jetpack автоматически откатывается к стандартному диалогу разрешений.

👉 Примерная геолокация стала умнее
До этого "приблизительный" режим использовал фиксированную сетку 2×2 км. В малонаселённых районах это фактически деанонимизирует пользователя, потому что в квадрате 2 км может быть буквально несколько человек. В Android 17 размер ячейки теперь зависит от плотности населения — чем меньше людей, тем больше область. Логично, что давно должно было быть так.

👉 Индикатор использования геолокации
По аналогии с микрофоном и камерой, при любом обращении к геолокации теперь будет появляться системный индикатор. Плюс — диалог с историей последних обращений с возможностью сразу перейти в настройки разрешений.

👉 Переработанный диалог разрешений
"Точное" и "Приблизительное" местоположение теперь визуально сильнее разделены, чтобы пользователь осознанно выбирал нужный уровень доступа.

🔗 Источник: android-developers.googleblog.com

#Android #AndroidDev #Android17 #Приватность
Please open Telegram to view this post
VIEW IN TELEGRAM
👍67👎8