Еще одна статья о том, как правильно грузить данные в ViewModel
#android #viewmodel #architecture #bestpractice
https://proandroiddev.com/how-to-load-data-kotlin-898f9add9c6f
#android #viewmodel #architecture #bestpractice
https://proandroiddev.com/how-to-load-data-kotlin-898f9add9c6f
Medium
Stale Data & Leaks were killing my Kotlin apps for 5 years. Here’s the fix.
This is the last article you’ll ever read on loading data in Kotlin.
👍9❤3👎1🤔1
Бета релиз KMP плагина от JetBrains. Но отзывы пока так себе, средняя оценка - 2.8.
#android #kmp #plugin #androidstudio #multiplatform
https://blog.jetbrains.com/kotlin/2025/05/kotlin-multiplatform-tooling-now-in-intellij-idea-and-android-studio/
#android #kmp #plugin #androidstudio #multiplatform
https://blog.jetbrains.com/kotlin/2025/05/kotlin-multiplatform-tooling-now-in-intellij-idea-and-android-studio/
The JetBrains Blog
Kotlin Multiplatform Tooling: Now in IntelliJ IDEA and Android Studio | The Kotlin Blog
The new KMP plugin for IntelliJ IDEA and Android Studio simplifies every part of the KMP experience, from project setup to Compose UI previews.
👍4
Полезные материалы с Google I/O 25
#android #conference #googleio
Обзор анонсов:
https://android-developers.googleblog.com/2025/05/16-things-to-know-for-android-developers-google-io-2025.html
Плейлист видео:
https://www.youtube.com/playlist?list=PLWz5rJ2EKKc86SrjccwTtBzH4Ptu3Mrai
#android #conference #googleio
Обзор анонсов:
https://android-developers.googleblog.com/2025/05/16-things-to-know-for-android-developers-google-io-2025.html
Плейлист видео:
https://www.youtube.com/playlist?list=PLWz5rJ2EKKc86SrjccwTtBzH4Ptu3Mrai
Android Developers Blog
16 things to know for Android developers at Google I/O 2025
Google I/O '25 features 16 key announcements for Android developers, including AI integration, enhancements to design, camera and media, and more.
🔥4👍2❤1
Материалы с Google I/O 25 про использование AI в Android
#android #ai #googleio
https://android-developers.googleblog.com/2025/06/top-3-updates-for-ai-on-android-google-io.html
#android #ai #googleio
https://android-developers.googleblog.com/2025/06/top-3-updates-for-ai-on-android-google-io.html
Android Developers Blog
Top 3 things to know for AI on Android at Google I/O ‘25
Explore the top 3 Google I/O '25 Android AI announcements, making AI development easier and smarter with Gemini Nano, AI Edge, and Firebase AI Logic.
❤3
Небольшая статья о том, почему стоит обратить внимание на новую библиотеку для навигации в Compose - Navigation 3
#android #compose #navigation
https://proandroiddev.com/future-of-android-why-navigation-3-is-a-game-changer-f835f841c17f
#android #compose #navigation
https://proandroiddev.com/future-of-android-why-navigation-3-is-a-game-changer-f835f841c17f
Medium
Future Of Android: Why Navigation 3 is a Game-Changer!
New Navigation Library that fits for all use cases.
👍12❤1
Незаметное ограничение Android 15
#android #background #network
https://habr.com/ru/articles/922100/
О чем речь: если приложение в фоне, то теперь не получится сделать сетевой запрос вне WorkManager или Foreground Service, иначе запрос упадет с UnknownHostException. Я проверил на своем устройстве с недавно прилетевшим Android 15 и выставленным targetSdk = 35 и это действительно так.
#android #background #network
https://habr.com/ru/articles/922100/
Хабр
Незаметное ограничение Android 15
Сейчас Android 15 активно появляется у пользователей. И, как мне кажется, одна его особенность для многих могла остаться незамеченной и даже в документации в описании...
👍10😢7😡5
Автор рассказывает про Scene Strategy в новом Navigation 3, на примере перехода между single pane и dual pane.
#android #compose #navigation
https://proandroiddev.com/custom-scene-strategy-in-navigation-3-make-your-app-flow-your-way-2feffc86ba4b
#android #compose #navigation
https://proandroiddev.com/custom-scene-strategy-in-navigation-3-make-your-app-flow-your-way-2feffc86ba4b
Medium
Custom Scene Strategy in Navigation 3 — Make Your App Flow Your Way
Take Full Control of Screen Transitions in Jetpack Compose with Your Own Scene Strategy
❤3👍2😱1
Как Android-разработчик в iOS погружался: мой опыт внедрения Kotlin Multiplatform
Продукт создавали нативно на каждую платформу, без пересечения кода. В начале года у нас ушло несколько iOS-разработчиков, из-за чего замедлилась поставка новых функций на обеих платформах. Мы решили, что это повод внедрить наконец кроссплатформенную разработку и выровнять поставку фич на обеих платформах. В этом материале расскажу, почему мы остановились на KMP, как погружались в iOS c опытом в Android и как прошло внедрение этого фреймворка. Спойлер: быстрее и проще, чем мы думали.
#android #kmp #ios #crossplatform
https://habr.com/ru/companies/ru_mts/articles/923366/
Продукт создавали нативно на каждую платформу, без пересечения кода. В начале года у нас ушло несколько iOS-разработчиков, из-за чего замедлилась поставка новых функций на обеих платформах. Мы решили, что это повод внедрить наконец кроссплатформенную разработку и выровнять поставку фич на обеих платформах. В этом материале расскажу, почему мы остановились на KMP, как погружались в iOS c опытом в Android и как прошло внедрение этого фреймворка. Спойлер: быстрее и проще, чем мы думали.
#android #kmp #ios #crossplatform
https://habr.com/ru/companies/ru_mts/articles/923366/
Хабр
Как Android-разработчик в iOS погружался: мой опыт внедрения Kotlin Multiplatform
Привет, Хабр! Меня зовут Артем Клименко, я Lead Android-разработчик в МТС Web Services, занимаюсь продуктом Membrana Kids. Продукт создавали нативно на каждую платформу, без пересечения кода. В начале...
🔥13👍3😁1🖕1
Хроника изменений API фоновой работы в Android
Наше приложение выполняет важную задачу — хранит воспоминания пользователей. Для этого необходимо уметь правильно работать с файлами в фоне, чтобы не только надёжно хранить те самые воспоминания, но и быстро их загружать, редактировать и делиться. В этой статье я расскажу о том, как мы пришли к нашим современным методам фоновой работы в Android.
#android #background
https://habr.com/ru/companies/vk/articles/916466/
Наше приложение выполняет важную задачу — хранит воспоминания пользователей. Для этого необходимо уметь правильно работать с файлами в фоне, чтобы не только надёжно хранить те самые воспоминания, но и быстро их загружать, редактировать и делиться. В этой статье я расскажу о том, как мы пришли к нашим современным методам фоновой работы в Android.
#android #background
https://habr.com/ru/companies/vk/articles/916466/
Хабр
Хроника изменений API фоновой работы в Android
Привет! Меня зовут Алексей, я работаю Android-разработчиком в Облаке Mail. Наше приложение выполняет важную задачу — хранит воспоминания пользователей. Для этого необходимо уметь правильно работать с...
👍12
Полезное видео про Couroutines/Flow + Android Lifecycle
#android #kotiln #couroutines #flow $lifecycle #video
https://www.youtube.com/watch?v=qJB5iX2cOu0
#android #kotiln #couroutines #flow $lifecycle #video
https://www.youtube.com/watch?v=qJB5iX2cOu0
👍12🤔1
Комментарии vs. самодокументируемый код: что выбрать?
#android #kotlin #bestpractice
https://habr.com/ru/articles/929600/
#android #kotlin #bestpractice
https://habr.com/ru/articles/929600/
Хабр
Комментарии vs. самодокументируемый код: что выбрать?
Если вы когда-либо сталкивались с чужим кодом (или даже со своим, написанным полгода назад), то знаете, как сложно бывает понять, что именно делает тот или иной фрагмент. В такие моменты особенно...
👍3❤2
Под капотом Android: как создаются, управляются и восстанавливаются процессы приложений в системе
#android #system #process
https://habr.com/ru/companies/psb/articles/931712/
На одном из собеседований мне задали вопрос, про восстановление приложения после смерти, на который я не смог ответить. Мне стало интересно и я решил изучить этот вопрос и в результате появилась эта статья.
Но собрать информацию оказалось не так‑то и просто. И после долгих поисков, запросов к нейросеткам (которые ещё и привирали порой), просмотра документации и анализа всей полученной информации, я получил базовое представление о теме.
Решил сократить и при этом структурировать всё, что нашёл, и поделиться с сообществом — возможно, кому‑то это поможет подготовиться к собеседованию на сеньора и не потерять при этом кучу времени и нервов:)
#android #system #process
https://habr.com/ru/companies/psb/articles/931712/
Хабр
Под капотом Android: как создаются, управляются и восстанавливаются процессы приложений в системе
Эта статья родилась из практической задачи — понять, как устроен Android в общем и целом, как он сохраняет и восстанавливает состояния приложения (помимо БД и файлов)...
👍13❤4
Интересное описание эксперимента, в котором поручили ИИ создать Spring Boot приложение.
Я недавно тоже провел эксперимент - попросил агента в студии интегрировать Pagination вместо простого запроса данных. Мы это делали по шагам - от дата слоя к UI, с подробными промптами и указанием всех необходимых классов, типов и аргументов.
В целом он справился, но часто "забывал" какие классы ему нужны, не заканчивал текущий шаг и пытался перейти к следующему, или просто останавливался и говорил, что больше так не может))
#android #ai #codegeneration #vibecoding
https://martinfowler.com/articles/pushing-ai-autonomy.html
Я недавно тоже провел эксперимент - попросил агента в студии интегрировать Pagination вместо простого запроса данных. Мы это делали по шагам - от дата слоя к UI, с подробными промптами и указанием всех необходимых классов, типов и аргументов.
В целом он справился, но часто "забывал" какие классы ему нужны, не заканчивал текущий шаг и пытался перейти к следующему, или просто останавливался и говорил, что больше так не может))
#android #ai #codegeneration #vibecoding
https://martinfowler.com/articles/pushing-ai-autonomy.html
martinfowler.com
How far can we push AI autonomy in code generation?
An experiment to test the limits of autonomous code generation by LLMs
😁9❤3👍1🖕1
Обзор изменений в Media3 1.8.0
#android #media
- Scrubbing in ExoPlayer
- Live streaming ads with HLS interstitials
- Duration retrieval without playback
- Partial downloads, XR audio routing and more efficient playback
- Playback resumption in demo app and better notification defaults
- Faster trim operations with edit list support
- Chipset specific optimizations with CodecDbLite
- New Composition demo
https://android-developers.googleblog.com/2025/08/media3-180-whats-new.html
#android #media
- Scrubbing in ExoPlayer
- Live streaming ads with HLS interstitials
- Duration retrieval without playback
- Partial downloads, XR audio routing and more efficient playback
- Playback resumption in demo app and better notification defaults
- Faster trim operations with edit list support
- Chipset specific optimizations with CodecDbLite
- New Composition demo
https://android-developers.googleblog.com/2025/08/media3-180-whats-new.html
Android Developers Blog
Media3 1.8.0 - What’s new?
Media3 1.8.0 release features a scrubbing mode in ExoPlayer, live streaming ad support with HLS interstitials, updated MetadataRetriever, and more.
👍4😱1
Обзор обновлений в последнем релизе Compose BOM 2025.08.00
- Shadows
- New Visibility modifiers
- Rich styling in OutputTransformation
- LazyLayout
- Scroll
- Improve crash analysis
- New annotations and Lint checks
- Additional updates
#android #compose
https://android-developers.googleblog.com/2025/08/whats-new-in-jetpack-compose-august-25-release.html
- Shadows
- New Visibility modifiers
- Rich styling in OutputTransformation
- LazyLayout
- Scroll
- Improve crash analysis
- New annotations and Lint checks
- Additional updates
#android #compose
https://android-developers.googleblog.com/2025/08/whats-new-in-jetpack-compose-august-25-release.html
Android Developers Blog
What’s new in the Jetpack Compose August ’25 release
The Jetpack Compose 1.9 release introduces features like advanced shadow modifiers, new visibility modifiers, and enhanced rich styling capabilities.
🔥4👍2
Как мы переписали мобильное приложение с React Native на Flutter
Kotlin Multiplatform показался слишком сырым для полноценной разработки в небольшой команде. Да, бизнес-логику можно было бы переиспользовать, но UI по-прежнему пришлось бы писать отдельно для iOS и Android - а это сильно снижает выигрыш по времени и усилиям. Кроме того, до недавнего времени существовала проблема с фризами, связанные с работой сборщика мусора. А из-за молодого комьюнити выбор готовых библиотек оказался бы ограниченным, и многое приходилось бы реализовывать вручную.
На мой взгляд, KMP отлично подходит для готовых продуктов, которые уже написаны на Kotlin и хотят добавить поддержку iOS с минимальными затратами.
#android #multiplatform #kmp #flutter
https://habr.com/ru/articles/929058/
Kotlin Multiplatform показался слишком сырым для полноценной разработки в небольшой команде. Да, бизнес-логику можно было бы переиспользовать, но UI по-прежнему пришлось бы писать отдельно для iOS и Android - а это сильно снижает выигрыш по времени и усилиям. Кроме того, до недавнего времени существовала проблема с фризами, связанные с работой сборщика мусора. А из-за молодого комьюнити выбор готовых библиотек оказался бы ограниченным, и многое приходилось бы реализовывать вручную.
На мой взгляд, KMP отлично подходит для готовых продуктов, которые уже написаны на Kotlin и хотят добавить поддержку iOS с минимальными затратами.
#android #multiplatform #kmp #flutter
https://habr.com/ru/articles/929058/
Хабр
Как мы переписали мобильное приложение с React Native на Flutter
Когда мы только начинали разработку мобильного приложения, выбор пал на React Native — казалось, это идеальный компромисс между скоростью разработки и кроссплатформенностью. Однако, со временем мы...
👎35🖕10👍6😁3
Как RecyclerView создает магию анимаций: архитектура ItemAnimator под капотом
В основе системы анимаций лежит простая идея: чтобы анимировать изменение, нужно знать состояние "до" и состояние "после". RecyclerView реализует это через трехфазный процесс layout:
1. Pre-Layout (dispatchLayoutStep1) — захват начального состояния
2. Real Layout (dispatchLayoutStep2) — расчет финальных позиций
3. Post-Layout (dispatchLayoutStep3) — сравнение и запуск анимаций
Каждая фаза выполняется последовательно при любом изменении данных. Давайте пройдемся по каждой фазе и посмотрим, что происходит на самом деле.
#android #recyclerview #animation
https://habr.com/ru/articles/939594/
В основе системы анимаций лежит простая идея: чтобы анимировать изменение, нужно знать состояние "до" и состояние "после". RecyclerView реализует это через трехфазный процесс layout:
1. Pre-Layout (dispatchLayoutStep1) — захват начального состояния
2. Real Layout (dispatchLayoutStep2) — расчет финальных позиций
3. Post-Layout (dispatchLayoutStep3) — сравнение и запуск анимаций
Каждая фаза выполняется последовательно при любом изменении данных. Давайте пройдемся по каждой фазе и посмотрим, что происходит на самом деле.
#android #recyclerview #animation
https://habr.com/ru/articles/939594/
Хабр
Как RecyclerView создает магию анимаций: архитектура ItemAnimator под капотом
Введение RecyclerView умеет превращать обычные операции с данными в плавные анимации. Когда вы добавляете элемент в список, остальные элементы плавно расступаются. При удалении — схлопываются. Эта...
👍11❤1
Android Studio теперь каждый месяц получает новую стабильную Feature Drop версию.
#androidstudio #android
https://android-developers.googleblog.com/2025/08/accelerating-development-with-monthly-releases-android-studio-2x-more-than-before.html
#androidstudio #android
https://android-developers.googleblog.com/2025/08/accelerating-development-with-monthly-releases-android-studio-2x-more-than-before.html
👍5😢3
Автор приводит минусы загрузки данных в ViewModel.init и рассматривает Flow-based решение на замену
#android #viewmodel #architecture #bestpractise
https://funkymuse.dev/posts/properly-load-data/
#android #viewmodel #architecture #bestpractise
https://funkymuse.dev/posts/properly-load-data/
FunkyMuse
Android ViewModel Data Loading: Best Practices and Flow-Based Architecture
Architecture discussions in Android development often spark passionate debates—sometimes garnering both praise and criticism. Writing about these topics isn’t easy, but that’s what makes it worthwhile.
1❤9
Google меняет правила игры: верификация разработчиков и ограничения APK в Android
#googleplay #android
https://habr.com/ru/articles/942522/
Google анонсировал радикальные изменения в экосистеме Android, которые затронут процесс установки приложений из сторонних источников. Новая система верификации разработчиков может перевернуть привычный подход к sideload'у APK‑файлов. Давайте разберёмся, что это значит для пользователей, разработчиков и всей экосистемы Android.
#googleplay #android
https://habr.com/ru/articles/942522/
Хабр
Google меняет правила игры: верификация разработчиков и ограничения APK в Android
Google анонсировал радикальные изменения в экосистеме Android, которые затронут процесс установки приложений из сторонних источников. Новая система верификации разработчиков может...
😢15❤2👍2