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
🐱 QmBlurView - Android библиотека для интеграции эффектов размытия (blur) в различные View

#android #ui
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥38🤔155👍2
Media is too big
VIEW IN TELEGRAM
📹 Building adaptive apps for Android (EN, 12м)

Повышайте узнаваемость и рейтинг вашего приложения в Google Play, адаптируя его под разные форм-факторы. В этом видео вы получите практическое руководство по созданию отзывчивых интерфейсов, которые одинаково хорошо работают не только на смартфонах, но и на устройствах с большими экранами и виджетах — с использованием ключевых техник, таких как window size classes и canonical layouts.

#android #adaptive #googleplay #оптимизация
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥2🤯2
Media is too big
VIEW IN TELEGRAM
📹 What's new in Android Studio's AI Agent (EN,43м) Запись с внутреннего мероприятия Google

Узнайте, как ИИ-агент в Android Studio может значительно повысить вашу эффективность и качество приложений. Познакомьтесь с практическими возможностями на базе искусственного интеллекта: интеллектуальным преобразованием кода, автоматическим обновлением версий и новым набором инструментов для работы с интерфейсом, которые помогут создавать лучшие приложения быстрее.

#androidstudio #ai #ии #android #androiddev
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥43
🤖 Получи ранний доступ к новой системе верификации Android разработчиков

Google открыла прием заявок к раннему доступу в консоль верификации Android разработчиков, которые распространяют приложения за пределами Google Play. Подробности про систему в видео

Подать заявку можно тут (ссылка без спец средств не работала из Беларуси)

#android
Please open Telegram to view this post
VIEW IN TELEGRAM
🆒10👍4🔥31
Media is too big
VIEW IN TELEGRAM
📹 Самый свежий рассказ про работу с Android Developer Verification

Стартанул ранний доступ к консолей верификации и выпустили свежий гайд по работе.

❗️Сентябрь 2026 - это дата включения обязательной верификации

‼️Самое важное - Google отказался от обязательной верификации для всех, но при попытке установки неверифицированных APK будет показан предупреждающий диалог. Нечто подобное есть в macOS.

Классно, что Google услышала обратную связь и сделал доработку, которая оставляет свободу установки, повысив безопасность.

#android #безопасность
Please open Telegram to view this post
VIEW IN TELEGRAM
👍205🎉4🤯1
🪙 Полный разбор Ktor Client (1 час)

Рассказываю про устройство и фичи Ktor Client, в также про миграцию с OkHttp и и Retrofit на решение для KMP

#AndroidBroadcast #разбор #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
61🔥405👍3🤔3🤯2
🛒 Google Play ужесточает требования к энергопотреблению

С 1 марта 2026 года расход батареи в фоне станет одним из факторов ранжирования приложений в Google Play.

Если приложение заметно потребляет заряд и не получает исправлений, пользователи увидят специальную предупреждающую плашку. При отсутствии улучшений Google Play сможет исключить такое приложение из поиска — доступ останется только по прямой ссылке.

Для разработчиков в Google Play Console уже доступен новый инструмент анализа Wake Lock, который помогает выявлять проблемные участки и повышать энергоэффективность приложения.

Рекомендуется заранее проверить поведение приложения в фоне и устранить лишние пробуждения.

#Android #GooglePlay #Оптимизация
Please open Telegram to view this post
VIEW IN TELEGRAM
👍68🤯164🔥4
🏝 Stacktrace-decoroutinator - библиотека для восстановления стектрейса ошибок, связанных с Kotlin Coroutines. Работает с Android 14+ и Java 8 и выше

Для работы в Android надо подключить Gradle плагин
plugins {
id("dev.reformator.stacktracedecoroutinator") version "2.5.8"
}


#android #kotlin #coroutines
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38🔥6🤔3
🚀 Вышла стабильная версия Jetpack Navigation 3 - бибилотека для UI навигации, заооченная под Compose

Стал доступен первый стабильный релиз навигации, разработанной специально для Compose. Библиотека предоставляет больше гибкости и контроля разработчикам, позволяя реализовать различные подходы. Google выложила свои примеры реализации популярных задач в репозитории на 🐱GitHub

Nav3 имеет поддержку Compose Multiplatform, а также JetBrains выпустила версию артефактов

👉 Документация по библиотеке

Всем кто использует Jetpack Navigation 2 с Compose нааооятельно рекомендуется миграция.
🔨Руководство по миграции
⭐️ Также Google сделала файл с контекстом для AI агента при миграции

Про возможности бибилотеки я рассказал в 📹 отдельном видео

#android #compose #kmp #cmp #jetpack #ui #nav3
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥56👍9🤔53
Пример использования Jetpack Navigation 3
data object ProductList
data class ProductDetail(val id: String)

@Composable
fun MyApp() {

// Create a back stack, specifying the key the app should start with
val backStack = remember { mutableStateListOf<Any>(ProductList) }

// Supply your back stack to a NavDisplay so it can reflect changes in the UI
// ...more on this below...

// Push a key onto the back stack (navigate forward), the navigation library will reflect the change in state
backStack.add(ProductDetail(id = "ABC"))

// Pop a key off the back stack (navigate back), the navigation library will reflect the change in state
backStack.removeLastOrNull()
}
// [END android_compose_navigation3_basic_1]

@Composable
fun EntryProvider() {
val backStack = remember { mutableStateListOf<Any>(ProductList) }
NavDisplay(
backStack = backStack,
// [START android_compose_navigation3_basic_2]
entryProvider = { key ->
when (key) {
is ProductList -> NavEntry(key) { Text("Product List") }
is ProductDetail -> NavEntry(
key,
metadata = mapOf("extraDataKey" to "extraDataValue")
) { Text("Product ${key.id} ") }

else -> {
NavEntry(Unit) { Text(text = "Invalid Key: $it") }
}
}
}
// [END android_compose_navigation3_basic_2]
)
}

#android #compose #nav3 #jetpack
👍164
⭐️ Gemini 3 - новое поколение ИИ Google меняет, а именно:

✔️ Gemini 3 Pro - мультимодальная модель с длинным контекстом, оптимизированная под сложное рассуждение, агентские сценарии и код.

🤯 Google Antigravity - новая agent-first IDE, которая изначально спроектирована не как редактор с подсказками кода, а как среда для работы нескольких ИИ-агентов поверх реального проекта. Сделана как форк VS Code, аналогично Cursor

По традиции анонса новых моделей от торговой компании, она превосходит всех конкурентов по тестам и прорыв. GPT 5.1 и Sonnet 4.5 отдыхают

#ai #ии #google #gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍92🤔2🤯1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83🤯2
⭐️ Gemini 3 Pro стала доступна в Android Studio

Сразу после выхода нового поколения Gemini, модель стала доступна в самой свежей версии Android Studio Otter

#androidstudio #ai #gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥284👍3🤔2
🚀 Вышла стабильная версия Jetpack DataStore 1.2

Google выпустила долгожданный стабильный релиз DataStore 1.2.0. Эта версия приносит несколько важных улучшений, которые делают библиотеку ещё более мощной и удобной, особенно для проектов, не полностью перешедших на Kotlin Coroutines.

Ключевые нововведения:

Поддержка Guava
Появился новый модуль datastore-guava, который предоставляет API на основе ListenableFuture для разработчиков, использующих Guava. Теперь подключать DataStore в проекты на Java стало намного проще (а нужно было???)

// Пример использования GuavaDataStore
val guavaDataStore: DataStore<Preferences> = GuavaDataStore.from(
produceFile = { context.preferencesDataStoreFile("settings.pb") },
serializer = PreferencesSerializer,
executor = Dispatchers.IO.asExecutor() // Используем Executor
)

ListenableFuture<Preferences> future = guavaDataStore.getData();


Мультипроцессность для GuavaDataStore
Функциональность многопроцессного доступа, ранее доступная для Kotlin-версии, теперь добавлена и в GuavaDataStore.

Поддержка Android Direct Boot - работа приложений до разблокировки устройства
DataStore теперь можно безопасно использовать в режиме Direct Boot. Для этого данные нужно разместить в защищённом хранилище устройства (Device Protected Storage).

val directBootDataStore = DataStoreFactory.createInDeviceProtectedStorage(
serializer = PreferencesSerializer
) { context.preferencesDataStoreFile("direct_boot_settings.pb") }


Исправления важных багов
👉 Устранен UnsatisifedLinkError при использовании R8 без стандартного ProGuard-файла.
👉 Исправлена проблема, из-за которой операции GuavaDataStore могли запускаться на главном потоке вместо указанного IO-диспетчера.
👉 Решена проблема с FileNotFoundException в OkioStorage при одновременном обращении к файлу (добавлена вторая попытка чтения).

Прочие улучшения
👉 Добавлен PreferencesFileSerializer — готовый сериализатор для работы с FileStorage.

#Android #Jetpack #DataStore #Kotlin #Java #Guava
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍5
🚀 Lifecycle 2.10.0 вышел в стабильной версии!

Google выпустила мажорное обновление библиотек Lifecycle. Этот релиз сфокусирован на улучшении интеграции с Compose.

⚙️ rememberLifecycleOwner для Compose
Новый композабл позволяет создавать изолированные LifecycleOwner внутри UI. Идеально для компонентов, которым нужно независимое управление состоянием — например, для HorizontalPager, где только активная страница должна быть в состоянии RESUMED.

@Composable
fun MyComposable() {
val lifecycleOwner = rememberLifecycleOwner(
maxLifecycle = Lifecycle.State.RESUMED,
parentLifecycleOwner = LocalLifecycleOwner.current,
)

CompositionLocalProvider(
LocalLifecycleOwner provides lifecycleOwner
) {
// Дочерние композаблы теперь имеют собственный жизненный цикл
}
}


🚀 Интеграция с Navigation 3
Новый артефакт lifecycle-viewmodel-navigation3 предоставляет готовый декоратор для автоматической привязки ViewModel к отдельным экранам в Navigation 3.

NavDisplay(
backStack = backStack,
entryDecorators = listOf(
rememberSaveableStateHolderNavEntryDecorator(),
rememberViewModelStoreNavEntryDecorator(), // Добавляем эту строку
),
entryProvider = entryProvider { /* ... */ }
)


Удобства для разработчиков:
👉 Идиоматичный Kotlin API для создания кастомных CreationExtras

    CreationExtras {
this[MY_CUSTOM_KEY] = "myValue"
}

👉 Метод savedStateHandle.saved() теперь нативно поддерживает nullable типы
👉 Конструкторы SavedStateHandle помечены как @VisibleForTesting

⚠️ Важное изменение
Повышение minSdk с API 21 до API 23 — убедитесь, что ваше приложение соответствует новым требованиям.

#Jetpack #Lifecycle #Compose #Navigation #ViewModel #Kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
16🔥10🤯3👍2🙏1
🚀 Navigation Event 1.0.0 — новая KMP-библиотека для обработки навигации на разных платформах

Что дает библиотека
👉 Единый кроссплатформенный API для замены разрозненных решений
👉 Централизованная система управления всей навигацией в приложении
👉 Базовый слой для будущих навигационных решений Android

Пример использования:
val myHandler = object : NavigationEventHandler<NavigationEventInfo>(
initialInfo = CurrentInfo,
isBackEnabled = true
) {
override fun onBackStarted(event: NavigationEvent) {
// Подготовка к навигации
}

override fun onBackProgressed(event: NavigationEvent) {
// Анимации на основе event.progress
}

override fun onBackCompleted() {
// Завершение навигации
}
}


👉 Готовая интеграция с Compose
val navEventState = rememberNavigationEventState(
currentInfo = CurrentInfo,
backInfo = PreviousInfo
)

NavigationBackHandler(
state = navEventState,
isBackEnabled = true,
onBackCompleted = { /* Действие при завершении */ }
)


👉 Диспетчеры могут образовывать родительско-дочерние цепочки:
// Compose
val childDispatcher = rememberNavigationEventDispatcher(
parent =
LocalNavigationEventDispatcherOwner
.current
.navigationEventDispatcher
)


👉 Нативная поддержка Predictive Back из Android
👉 Библиотека уже используется в Activity 1.12.0 как базовый слой

#Jetpack #Navigation #Compose #KMP #PredictiveBack #Kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍162
This media is not supported in your browser
VIEW IN TELEGRAM
🤯 Android QuickShare теперь может работать с Apple AirDrop

Google самостоятельно сделали работу с AirDrop на всю линейку Pixel 10. Ждем когда раскатят дальше, либо Apple выкатит обновление и закроет возможность 😂

#android #pixel
48🤯29👍10🔥4
🔥 Мечтаете стать востребованным Архитектором ПО?

Знакомьтесь: книга «Фундаментальный подход к программной архитектуре» от гуру Марка Ричардса и Нила Форда! 🚀

Для кого:

👉 Мобильные разработчики, мечтающие вырасти до архитектора.
👉 Начинающие архитекторы
👉 Профессионалы для систематизации знаний.

Внутри руководства вы найдете:

🧩 Архитектурные паттерны (применимо и к мобильным стекам!).
🧱 Четкие определения компонентов и их взаимодействий.
⚙️ Практические приемы построения эволюционных архитектур.
💡 Современный взгляд с учетом последних 10 лет инноваций.
✔️ Универсальные принципы, работающие на любых технологиях.

Архитектура — не фреймворки, а стратегия! Учитесь проектировать системы с масштабируемостью, отказоустойчивостью, эволюционностью — это ваша ценность.

➡️ Промокод на скидку 5% — broadcast на книги в издательстве Питер!

#реклама
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔75👍4🤯1