В новом выпуске понимаем и улучшаем производительность SwiftUI, решаем проблему «деградации» YouTube на Android, определяем потолок в разработке, разбираем большую ложь чистой архитектуры, смотрим на рост цифровой веры и многое другое. Заходите!

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Понимаем и улучшаем производительность SwiftUI
• Автоматическое отслеживание изменений в UIKit и AppKit: функция, о которой Apple забыла упомянуть
• Крупные автопроизводители отказываются от CarPlay Ultra
•
How to support Dynamic Type accessibility in SwiftUI
•
Sparkle: Distribution apps in- and out of the Mac App Store
•
Adding Icon Composer icons to Xcode
•
Apple’s On-Device Foundation Model Is Here… But Is It Any Good?
•
Embedding Godot games in iOS apps is easy now
•
Decoding Swift types that require additional data
•
VIPER vs TCA: What Large iOS Teams Actually Use
•
Sendable in Swift: The Silent Killer of Race Conditions
•
Why I Stopped Using Structs for Everything in Swift
•
SwiftUI Search API (Searchable): All We Need to Know All In One
•
Grouping Liquid Glass components using glassEffectUnion on iOS 26
•
Designing custom UI with Liquid Glass on iOS 26
•
My App Crashed Only in Production
•
Schedule a countdown timer with AlarmKit
•
Redux in SwiftUI: When Web Patterns Meet Apple’s Declarative World
•
SwiftUI State Machines Explained: Manage Complex UI States the Right Way
•
Creating Custom Property Wrappers in Swift: Reduce Boilerplate Code
•
SwiftUI Shimmer Loading Animation: Complete Implementation Guide
•
Build a mobile app using the Home APIs on iOS
•
Dependency Injection in iOS Explained (with SwiftUI)
•
Custom Animated Segmented Control Using SwiftUI
•
Getting Started with Apple’s Foundation Models Framework (On-Device AI Demo!)
•
OAuthKit — event-driven авторизация на Swift
•
ComponentsKit — набор красивых компонентов UIKit и SwiftUI
Android
• NoDPI4Android. Решаем проблему «деградации» YouTube теперь и на Android
• Есть ли «потолок» в [Android] разработке — обсуждение на Reddit
• Пишем 3D-игру для ретро-устройств весом в 600Кб…
• Как Blinkit решил загадку производительности Android-приложения с помощью Droid Dex
• Эффекты в Jetpack Compose, лежащие на поверхности
• Включаем VoLTE на Pixel 9
• Настраиваем CI/CD Android-проекта, часть 3. Автоматизация публикации версий в Play Store
• Сеньоры с LinkedIn или доверяй, но проверяй. Как мы докатились до такого?
• Как мы случайно ускорили релизную сборку в два раза
• Эталонный пример Android приложения от Google
• M*** присоединилась к Kotlin Foundation
•
Boost Android Development with Gemini CLI in 5 Minutes
•
Passkeys & Credential Manager in Android
•
Initial exploration of using Koog for developing Kotlin based AI agents
•
Top announcements to know from Google Play at I/O ‘25
•
Get ready for the next generation of gameplay powered by Play Games Services
•
Reducing App Size: Proguard, R8, App Bundles & Resource Shrinking
•
Kotlin: 6 Advanced Flow Features You Must know
•
Everyday Challenges of an Android Developer — Skeleton Loaders: The Illusion of Speed
•
How I Optimize My Android App from 15MB to under <2MB
•
Managing state across navigation in Jetpack Compose
•
Custom Scene Strategy in Navigation 3 — Make Your App Flow Your Way
•
Best Practices of Retrofit and OkHttp in Android Development
•
Context parameters in Kotlin 2.2
•
Exploring Kotlin (native) compilation
•
Migrating to Jetpack Compose Navigation 3
•
Android Studio Narwhal Feature Drop
•
SIGSEGV to SIGBUS: The Truth Behind Android’s Scariest Native Crashes
•
How I Built Seamless Watch ↔ Phone Handover in Wear OS
•
Embedded Layout Inspector
•
Enable Google Pay in Android WebView
•
Build your own NES Emulator with Kotlin
•
Implementing Compose Hot Reload
•
IoT development with Kotlin
•
Coroutines and Structured Concurrency in Ktor
•
Klibs.io — the dream of creating a Kotlin Package Index
•
Test APIs Without Leaving Android Studio
•
Jetpack Android Starter — шаблон современного Android-приложения
•
Kizzy — менеджер Rich Presence для Discord на Kotlin
Кроссплатформа
• 2D-скролл во Flutter
• Вы не поняли extension types в Dart
• Демо-интервью по Flutter с Middle-разработчиком (+ все собеседования)
•
Why Liquid Glass Is Making Developers Rethink Flutter
•
Flutter’s Biggest Problems: What Google Doesn’t Want You to Know
•
Why Cross-Platform Teams Are Shifting to Native — With Case Studies That Might Surprise You
•
Kotlin’s Funeral Has Been Announced? Apple’s Master Plan Behind Swift for Android
•
“Expect Actual” Mechanism in Kotlin Multiplatform Explained
•
Secrets, Certificates, Local Storage: The Three Risks Every App Ships With
•
Duolingo + KMP: A Case Study in Developer Productivity
•
Koin Annotations In Compose Multiplatform — Beginner’s Guide to Compile-Time Dependency Injection
•
StringBuffer (Technique of the Week)
•
Store — решение для работы с данными на Kotlin Multiplatform
Разработка
• Чистая архитектура — это большая ложь, в которую мы продолжаем верить
• Бенчмарк ИИ-помощников в устранении сбоев мобильных приложений
• BDUI: эволюция динамических интерфейсов
• Как чек-лист на внутреннем портале убил 70% вопросов о релизах — без автоматизации и бюджета
• Открытый и опасный: как снизить риски open-source в приложениях
• Применение KISS для архитектуры автотестов
• Будущее инструментов разработки и опенсорса
• Вычисления на GPU — CUDA, NVidia, AMD
•
What is free trial abuse — and how can you stop it?
•
Don’t Be Ashamed to Say «I Don’t Know»
•
When a PM takes over engineering
•
Challenging projects every programmer should try
•
14 logic-driven UI design tips to improve any interface
•
Saying bye to 4px spacing and hello to Fibonacci
Аналитика, маркетинг и монетизация
• Самые скачиваемые и зарабатывающие приложения в России в июне 2025
• Sri Mandir получает новые инвестиции по мере роста цифровой веры
• VK Реклама представила ИИ редактор рекламных текстов
• Мобильные прилы + EdTech = $$$. Разбор ниши
•
Squad Busters 2.0 and mo.co: What We Learned from Supercell’s Experimental Era
AI, Устройства, IoT
• «Тупой ИИ» с нами надолго. Почему в новых моделях больше галлюцинаций
• Как я пять раз переделывал умный дом — и выкинул половину ненужного
• Новый навык в ИИ — не промпты, а контекст инжиниринг
• GPS в городских джунглях: почему навигатор «прыгает» между небоскрёбами
• Навсегда избавляемся от дребезга и дружим микроконтроллер с кнопкой
• Что не пишут в документации Kotlin Contracts: тёмные закоулки и пасхалки
• Спасаем умный дом на KNX: как быть, если интегратор залочил оборудование
• Нейросеть приближается к опыту профессионального дерматолога
• Доход Cluely удвоился за неделю, но конкуренты наступают
• Умная камера Petlibro использует ИИ для распознавания и описания движений питомцев
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.

• Понимаем и улучшаем производительность SwiftUI
• Автоматическое отслеживание изменений в UIKit и AppKit: функция, о которой Apple забыла упомянуть
• Крупные автопроизводители отказываются от CarPlay Ultra
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• NoDPI4Android. Решаем проблему «деградации» YouTube теперь и на Android
• Есть ли «потолок» в [Android] разработке — обсуждение на Reddit
• Пишем 3D-игру для ретро-устройств весом в 600Кб…
• Как Blinkit решил загадку производительности Android-приложения с помощью Droid Dex
• Эффекты в Jetpack Compose, лежащие на поверхности
• Включаем VoLTE на Pixel 9
• Настраиваем CI/CD Android-проекта, часть 3. Автоматизация публикации версий в Play Store
• Сеньоры с LinkedIn или доверяй, но проверяй. Как мы докатились до такого?
• Как мы случайно ускорили релизную сборку в два раза
• Эталонный пример Android приложения от Google
• M*** присоединилась к Kotlin Foundation
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• 2D-скролл во Flutter
• Вы не поняли extension types в Dart
• Демо-интервью по Flutter с Middle-разработчиком (+ все собеседования)
•

•

•

•

•

•

•

•

•

•


• Чистая архитектура — это большая ложь, в которую мы продолжаем верить
• Бенчмарк ИИ-помощников в устранении сбоев мобильных приложений
• BDUI: эволюция динамических интерфейсов
• Как чек-лист на внутреннем портале убил 70% вопросов о релизах — без автоматизации и бюджета
• Открытый и опасный: как снизить риски open-source в приложениях
• Применение KISS для архитектуры автотестов
• Будущее инструментов разработки и опенсорса
• Вычисления на GPU — CUDA, NVidia, AMD
•

•

•

•

•

•


• Самые скачиваемые и зарабатывающие приложения в России в июне 2025
• Sri Mandir получает новые инвестиции по мере роста цифровой веры
• VK Реклама представила ИИ редактор рекламных текстов
• Мобильные прилы + EdTech = $$$. Разбор ниши
•


• «Тупой ИИ» с нами надолго. Почему в новых моделях больше галлюцинаций
• Как я пять раз переделывал умный дом — и выкинул половину ненужного
• Новый навык в ИИ — не промпты, а контекст инжиниринг
• GPS в городских джунглях: почему навигатор «прыгает» между небоскрёбами
• Навсегда избавляемся от дребезга и дружим микроконтроллер с кнопкой
• Что не пишут в документации Kotlin Contracts: тёмные закоулки и пасхалки
• Спасаем умный дом на KNX: как быть, если интегратор залочил оборудование
• Нейросеть приближается к опыту профессионального дерматолога
• Доход Cluely удвоился за неделю, но конкуренты наступают
• Умная камера Petlibro использует ИИ для распознавания и описания движений питомцев
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.