Live Updates на Android: где макеты врут, a SDK ставит границы
#android #notifications #liveupdates
https://habr.com/ru/companies/dododev/articles/969810/
Live Updates — это режим повышенной видимости. Его можно включить не только для отображения прогресса, но и для других системных шаблонов, например, звонков (CallStyle) или навигации. Как я уже и говорил, фича работает и без progress-centric. Если использовать подходящий системный стиль, Android закрепит карточку сверху, добавит чип в статус-баре и выведет на заблокированный экран уведомление, которое будет работать даже в режиме Always-On-Display, что клёво
#android #notifications #liveupdates
https://habr.com/ru/companies/dododev/articles/969810/
Хабр
Live Updates на Android: где макеты врут, a SDK ставит границы
Привет, Хабр! Меня зовут Сергей Орлов, я — Android-разработчик в Dodo Engineering. В этой статье я расскажу, как и зачем мы в приложение Додо Пиццы Live Updates завозили. Сразу скажу, что вы не...
👍4🔥1
Подборка новостей из мира Kotlin
- Kotlin 2.3.0-RC is out!
- A fresh look for Kotlin docs
- Join the Kotlin team for an AMA on Reddit
- Kotlin Multiplatform: Level up before 2026!
- How Android devs can advance their career with KMP – livestream (December 3)
- KotlinConf’26 Black Friday special
- The KotlinConf’26 Call for Speakers is closing soon
- Kotlin adoption guide
- Your Ktor experience counts – tell us about it
- Getting closer to Exposed 1.0.0!
- Google Summer of Code 2025: What our contributors built
- Quick poll for Android devs
#kotlin #kmp #android
https://blog.jetbrains.com/kotlin/2025/11/kodees-kotlin-roundup-november-edition
- Kotlin 2.3.0-RC is out!
- A fresh look for Kotlin docs
- Join the Kotlin team for an AMA on Reddit
- Kotlin Multiplatform: Level up before 2026!
- How Android devs can advance their career with KMP – livestream (December 3)
- KotlinConf’26 Black Friday special
- The KotlinConf’26 Call for Speakers is closing soon
- Kotlin adoption guide
- Your Ktor experience counts – tell us about it
- Getting closer to Exposed 1.0.0!
- Google Summer of Code 2025: What our contributors built
- Quick poll for Android devs
#kotlin #kmp #android
https://blog.jetbrains.com/kotlin/2025/11/kodees-kotlin-roundup-november-edition
The JetBrains Blog
Kodee’s Kotlin Roundup: Too Much News to Keep Quiet About | The Kotlin Blog
Kodee has gathered the latest Kotlin highlights for you — from the Kotlin Reddit AMA and documentation updates to learning programs and Google Summer of Code 2025 projects.
👍3
Видео Navigation 3 API overview
- Nav3 basics
- Defining content with NavEntry and entryProvider
- API basics - coding walkthrough
- Multi-module Navigation
- Modularization - coding walkthrough
- Animating between screens
- Animations - coding walkthrough
- Adaptive layouts using Scenes
- Adaptive layouts - coding walkthrough
- Recap
#android #navigation
https://www.youtube.com/watch?v=6L6GfvlmKj8
- Nav3 basics
- Defining content with NavEntry and entryProvider
- API basics - coding walkthrough
- Multi-module Navigation
- Modularization - coding walkthrough
- Animating between screens
- Animations - coding walkthrough
- Adaptive layouts using Scenes
- Adaptive layouts - coding walkthrough
- Recap
#android #navigation
https://www.youtube.com/watch?v=6L6GfvlmKj8
YouTube
Navigation 3 API overview | Spotlight Week
Learn Jetpack Navigation 3, Google's new library for building navigation in Android apps. Discover how to use keys to represent navigable content, manage your back stack, and create `NavEntry`s to contain your Composable content.
Learn how to modularize…
Learn how to modularize…
👍6🔥3❤1
Что нового в Jetpack Compose December '25
Performance improvements
- Pausable composition in lazy prefetch
New features
- Retain
- Material 1.4
New animation features
- Dynamic shared elements
- Modifier.skipToLookaheadPosition()
- Initial velocity in shared element transitions
- Veiled transitions
Upcoming changes
- Deprecation of Modifier.onFirstVisible
- Coroutine dispatch in tests
Tools
#android #compose
https://android-developers.googleblog.com/2025/12/whats-new-in-jetpack-compose-december.html
Performance improvements
- Pausable composition in lazy prefetch
New features
- Retain
- Material 1.4
New animation features
- Dynamic shared elements
- Modifier.skipToLookaheadPosition()
- Initial velocity in shared element transitions
- Veiled transitions
Upcoming changes
- Deprecation of Modifier.onFirstVisible
- Coroutine dispatch in tests
Tools
#android #compose
https://android-developers.googleblog.com/2025/12/whats-new-in-jetpack-compose-december.html
Android Developers Blog
What's new in the Jetpack Compose December '25 release
News and insights on the Android platform, developer tools, and events.
👍6❤3
Всё, что нужно знать о публикации в Google Play
#android #googleplay
https://habr.com/ru/articles/974016/
Этой статьей хочу внести больше ясности в процесс и уберечь других разработчиков от лишней траты времени, которая часто возникает из-за ошибок на разных этапах. Расскажу о подводных камнях, частых ошибках и о том, как бесплатно и быстро набрать тестировщиков. Вся информация, описанная в этой статье, получена на собственном опыте, а также из обсуждения с участниками сообщества по взаимному тестированию
#android #googleplay
https://habr.com/ru/articles/974016/
Хабр
Всё, что нужно знать о публикации в Google Play
Недавно я решил опубликовать приложение в Google Play, думая, что это не так сложно. Под эту задачу написал небольшое приложение-счетчик и стал погружаться во все тонкости процесса публикации. Почти...
👍11
Переводим проекты на Android Gradle Plugin 9.0
#kotlin #android #gradle
https://blog.jetbrains.com/kotlin/2026/01/update-your-projects-for-agp9/
#kotlin #android #gradle
https://blog.jetbrains.com/kotlin/2026/01/update-your-projects-for-agp9/
The JetBrains Blog
Update your Kotlin projects for Android Gradle Plugin 9.0 | The Kotlin Blog
Learn how to migrate your projects to AGP 9.0 by moving to built-in Kotlin and the new Android KMP library plugin.
👍3
Ниже расскажу, как паттерн Memento реализуется в Android через CustomView, SavedStateHandle, Compose и навигацию. Основное внимание уделю CustomView — недооцененному способу сохранения состояния, который позволяет держать экраны легкими. View сама знает, что сохранять и как восстанавливать, без необходимости тащить все в Activity или Fragment. Также рассмотрю типичные ошибки, ограничения Bundle и методы тестирования восстановления после process death.
#android #state
https://habr.com/ru/articles/990568/
Хабр
Паттерн Memento в Android: полный разбор сохранения состояния
Привет, Хабр! На связи Алина, старший Android-разработчик в команде Инвестиций компании «Совкомбанк Технологии». Мы разрабатываем, поддерживаем и улучшаем приложение «Совкомбанк Инвестиции». Если вы...
❤11👍5💩2
Несмотря на недостатки, я считаю возможным оставить SP в проекте, если он используется в нескольких местах приложения, не используется в Compose, лишние данные очищаются, нет работы с большими объектами, а так же проект сам по себе не перегружен другими операциями. Как только одно из условий нарушается, работа с SP может хоть и не испортить ситуацию самостоятельно, но сыграть роль накопителя нагрузки. Если вы видите у себя в проекте странные ANR , связанные с SP, а так же ваш проект подходит под описание выше, то данные видимые проблемы становятся аргументами для переходу на Datastore.
#android #preferences #datastore
https://habr.com/ru/companies/alfa/articles/991556/
Хабр
Ахиллесова пята SharedPreferences и стоит ли внедрять Datastore как альтернативу
В этой статье я расскажу то, о чём не спрашивают на собесeдованиях и не рассказывают на курсах по Android-разработке — о неявной особенности Android, которая влияет на деградацию производительности и...
👍5👎1
Я работаю на проекте Android приложения Альфа-банка для физических лиц. Для нашего большого проекта это время — больная тема, так как у нас около 800 модулей и большая часть кода полностью покрыта unit тестами (за некоторыми исключениями, например, view классы). Сейчас у нас почти 6000 spec (тест-классов) в которых 37 000 тест-кейсов.
Общее время прогона всех тестов на CI превышало 3 часа. Локально все тесты прогнать вообще было утопией, так как вероятнее всего сборка просто падала от нехватки оперативной памяти.
Сейчас все тесты проекта мы научились прогонять за честные 12 минут и я расскажу что для этого потребовалось.
#android #gradle #performance
https://habr.com/ru/companies/alfa/articles/993352/
Хабр
37 000 unit-тестов против Gradle: как мы добились 12-минутного прогона
Привет я Федотов Михаил, технический лидер по Android-разработке в Альфа-Банке. Сегодня хочу поговорить про performance (ускорение) unit-тестов. Я работаю на проекте Android приложения Альфа-банка для...
❤11💩4🔥3👍2
Вышла первая бета Android 17
What's new:
Orientation and resizability restrictions
- Key Changes for SDK 37
- Exemptions and User Control
- Updates to configuration changes
Performance
- Lock-free MessageQueue
- Generational garbage collection
- Static final fields now truly final
- Custom Notification View Restrictions
- New performance debugging ProfilingManager triggers
Media and Camera
- Dynamic Camera Session Updates
- Logical multi-camera device metadata
- Versatile Video Coding (VVC) support
- Constant Quality for Video Recording
- Background Audio Hardening
Privacy and Security
- Deprecation of Cleartext Traffic Attribute
- HPKE Hybrid Cryptography
Connectivity and Telecom
- Enhanced VoIP Call History
- Wi-Fi Ranging and Proximity
Developer Productivity and Tools
- Updates for companion device apps
#android #beta #release
https://android-developers.googleblog.com/2026/02/the-first-beta-of-android-17.html
https://android-developers.googleblog.com/2026/02/prepare-your-app-for-resizability-and.html
What's new:
Orientation and resizability restrictions
- Key Changes for SDK 37
- Exemptions and User Control
- Updates to configuration changes
Performance
- Lock-free MessageQueue
- Generational garbage collection
- Static final fields now truly final
- Custom Notification View Restrictions
- New performance debugging ProfilingManager triggers
Media and Camera
- Dynamic Camera Session Updates
- Logical multi-camera device metadata
- Versatile Video Coding (VVC) support
- Constant Quality for Video Recording
- Background Audio Hardening
Privacy and Security
- Deprecation of Cleartext Traffic Attribute
- HPKE Hybrid Cryptography
Connectivity and Telecom
- Enhanced VoIP Call History
- Wi-Fi Ranging and Proximity
Developer Productivity and Tools
- Updates for companion device apps
#android #beta #release
https://android-developers.googleblog.com/2026/02/the-first-beta-of-android-17.html
https://android-developers.googleblog.com/2026/02/prepare-your-app-for-resizability-and.html
Android Developers Blog
The First Beta of Android 17
News and insights on the Android platform, developer tools, and events.
❤8👍4🔥2
В подкасте Android Developers Backstage обсуждают R8
Chapters:
0:00 - Intro
0:23 - What is R8?
1:16 - R8 vs D8
1:40 - Tree Shaking & Dead Code
4:14 - Handling Reflection
10:10 - Performance Co-Optimization
13:03 - Kotlin-Specific Gains
16:22 - Real-World Impact
41:50 - Jetpack Compose & R8
50:51 - Keep annotations
1:03:49 - The "Free Hardware Upgrade"
#android #build #r8
https://adbackstage.libsyn.com/whats-so-great-about-r8
https://www.youtube.com/watch?v=0B07A_c45_o
Chapters:
0:00 - Intro
0:23 - What is R8?
1:16 - R8 vs D8
1:40 - Tree Shaking & Dead Code
4:14 - Handling Reflection
10:10 - Performance Co-Optimization
13:03 - Kotlin-Specific Gains
16:22 - Real-World Impact
41:50 - Jetpack Compose & R8
50:51 - Keep annotations
1:03:49 - The "Free Hardware Upgrade"
#android #build #r8
https://adbackstage.libsyn.com/whats-so-great-about-r8
https://www.youtube.com/watch?v=0B07A_c45_o
Libsyn
Android Developers Backstage: What’s so great about R8?
Join hosts Tor and Romain as they sit down with Søren Gjesse, Chris Craik, and Shai Barack. This week, the team dives into R8, the whole-program optimizer that handles the "last mile" of your code before it runs on a device. Learn why implementing R8 is effectively…
👍2❤1