Комментарии 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😢4
  Автор приводит минусы загрузки данных в 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, которые затронут процесс установки приложений из сторонних источников. Новая система верификации разработчиков может...
😢21❤3👍3
  Обзор 5 малоизвестных Compose компонентов
- TriStateCheckbox
- SegmentedButton
- RangeSlider
- Badge
- Tooltip
#android #compose
https://proandroiddev.com/exploring-5-lesser-known-compose-components-9a5cfd5eb354
  
  - TriStateCheckbox
- SegmentedButton
- RangeSlider
- Badge
- Tooltip
#android #compose
https://proandroiddev.com/exploring-5-lesser-known-compose-components-9a5cfd5eb354
Medium
  
  Exploring 5 Lesser-Known Compose Components
  We explore lesser known components in Compose Material 3 such as TriStateCheckbox, RangeSlider, SegmentedButton, and others.
✍15👍14
  Видео обзор wake lock метрик в Android Vitals 
#android #performance #vitals
https://www.youtube.com/watch?v=-6mEvkLOlno
#android #performance #vitals
https://www.youtube.com/watch?v=-6mEvkLOlno
👍3🤔2
  Обзор Visibility APIs в Jetpack Compose:
- Modifier.onVisibilityChanged
- Modifier.onFirstVisible
#android #compose
https://proandroiddev.com/visibility-apis-in-jetpack-compose-1-9-easier-cleaner-but-not-quite-there-yet-9bbfdb60bd6b
  
  - Modifier.onVisibilityChanged
- Modifier.onFirstVisible
#android #compose
https://proandroiddev.com/visibility-apis-in-jetpack-compose-1-9-easier-cleaner-but-not-quite-there-yet-9bbfdb60bd6b
Medium
  
  Visibility APIs in Jetpack Compose 1.9
  Track the visibility of composables reliably.
👍14
  Ответы на самые распространенные вопросы о недавно анонсированном Android developer verification
#android #developer #verification
https://android-developers.googleblog.com/2025/09/lets-talk-security-answering-your-top.html
  
  #android #developer #verification
https://android-developers.googleblog.com/2025/09/lets-talk-security-answering-your-top.html
Android Developers Blog
  
  Let's talk security: Answering your top questions about Android developer verification
  News and insights on the Android platform, developer tools, and events.
2👍4
  Подробный материал про Stability в Compose
#android #compose
https://github.com/skydoves/compose-stability-inference
  
  #android #compose
https://github.com/skydoves/compose-stability-inference
GitHub
  
  GitHub - skydoves/compose-stability-inference: 📚 A comprehensive study of how the Compose compiler determines type stability for…
  📚 A comprehensive study of how the Compose compiler determines type stability for recomposition optimization. - skydoves/compose-stability-inference
👍7😢1
  Беседа про Journeys. Это новый способ написания end-to-end тестов на человеческом языке с помощью Gemini.
#android #test #ai #gemini
https://www.youtube.com/watch?v=DiqQrSqHyds
#android #test #ai #gemini
https://www.youtube.com/watch?v=DiqQrSqHyds
❤3👍1👏1
  Шутки и веселье в публичном Android API
#android
https://habr.com/ru/articles/919062/
  
  Сегодня я расскажу о методах и других частях публично доступного Android API, которые могут показаться больше смешными, чем полезными. Это пасхальные яйца, шутки, видимые только разработчикам приложений для Android, но не обычным пользователям.
#android
https://habr.com/ru/articles/919062/
Хабр
  
  Шутки и веселье в публичном Android API
  Ранее я рассказывал об относительно малоизвестной и ныне удалённой строке-заполнителе в Android, использовавшейся в качестве пасхалки. Это был выдуманный оператор сотовой связи под названием El Telco...
👍7❤🔥2🔥2🤮2
  Статья с примерами, рассказывающая про использование runCatching вместо try-catch
#android #kotlin
https://proandroiddev.com/kotlin-tips-and-tricks-you-may-not-know-7-goodbye-try-catch-hello-trycatching-7135cb382609
  
  #android #kotlin
https://proandroiddev.com/kotlin-tips-and-tricks-you-may-not-know-7-goodbye-try-catch-hello-trycatching-7135cb382609
Medium
  
  Kotlin Tips and Tricks You May Not Know: #7 — Goodbye try-catch, Hello runCatching!
  A cleaner way to handle exceptions in Kotlin with runCatching.
👍7👎1🔥1