В новом дайджесте быстродействие прокрутки в SwiftUI и выразительные анимации, сахар для UI-тестирования и красота Android, NativePHP, анатомия энергопотребления, небольшое изменение в интерфейсе Duolingo, которое меняет все и многое другое. Заходите!

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Для чего я написал собственный аудиопроигрыватель
• Быстродействие прокрутки в SwiftUI — в погоне за 120 кадрами в секунду
• Rafinad: сахар для UI-тестирования iOS-приложений
• SmartCaptcha Yandex на iOS: инструкция по внедрению
• Tuist. Как перенести проект
• Ускоряем приложение эффективно
• Swift Concurrency в iOS SDK Яндекс Доставки
• Как мы доверили качество наших приложений AI
• Вадим Чистяков — Global Talent Visa, переезд в Лондон, работа в IT
• Как писать игры на Swift для Playdate
• Мок-собеседование iOS-разработчика. SwiftUI •
• Макросы Swift: проще, чище, быстрее
• Мы решили все проблемы работы в модульном проекте. Хотите так же?
• Apple запустит iOS 26 и macOS 26 в рамках крупного ребрендинга
• Apple Watch и Apple TV получат серьезные изменения в дизайне на WWDC наряду с iOS 19
• Что такое static в Swift — вопросы с собеседований
•
Ever heard of .contextMenu()?
•
Drawing graphics with Canvas
•
Reading Piped Input in Swift Executables
•
Creating Xcode source editor extensions
•
Making your iOS app more accessible with dynamic type
•
Microapps architecture in Swift. Scaling.
•
Creating shapes using Path in the SwiftUI Canvas view
•
Billing Grace Period Explained: How It Works and Why It Matters
•
Turning Singleton Usage into Testable Code
•
How to easily inspect and modify network traffic
•
SwiftUI: Pass Through Gestures on Transparent Image Pixel (Without UIImageView)
•
How We Decomposed Tinder’s Monolith
•
Build an iOS app faster than ever with xtool
•
Swift 6 Refactoring in a Camera App
•
SwiftUI Caching: Key to Optimize Performance
•
Integrating App Intents with Control Action
•
Mastering Swift Concurrency: A Practical Guide
•
iOS Interview Question: Build a World Clock App in SwiftUI
•
6 Useful SwiftUI Modifiers — Xcode 16
•
How to Run Automated UI Tests in iOS with XCUITest
•
Elevate Your SwiftUI Lists with iOS 18’s New Container Features
•
SwiftUI iOS Localization Tutorial: Master String Catalogs in Xcode 16
•
How Task Cancellation Really Works in Swift (Behind the Scenes)
•
Re-creating iMessage Morph-Menu Effect Using SwiftUI
•
ObservableDefaults — интеграция SwiftUI, Observation и UserDefaults/iCloud Key-Value
•
SUICoordinator — навигация на Координатор для SwiftUI
•
DebugSwift — набор инструментов отладки для iOS-приложений
Android
• Советы для публикации в RuStore: альфа-тестирование, AAB и автоматизация с помощью API
• Большинство приложений для Android нарушают это правило чистого кода!
• Как создать кастомный угловой бейдж в Jetpack Compose
• Станет ли Android наконец красивым?
• Выразительные анимации для всех
• Создание кастомного тултипа Jetpack Compose
• FCM для Android и Backend на Kotlin
• Автоматизация проверки стиля кода с помощью KtLint в Android проекте
• Индикация клика на стероидах в Compose: пишем свою IndicationNodeFactory
• История одного бизнес-желания
• Наглядный пример, когда не следовать best practices for coroutines от Google
• Кто является Senior разработчиком?
• Оптимизация Compose: проблемы, опыт, тактика, стратегия
•
Deep dive into annotations in Jetpack Compose
•
5 strategies to address Android emulator instability during automated testing
•
From Gradle Plugin to CLI — A More Flexible Way to Distribute Android Apps with Firebase App Distribution
•
What’s new in Watch Faces
•
In-App Ratings and Reviews for TV
•
What’s new in Wear OS 6
•
Configuring Gradle Memory Usage
•
Understanding Android Architecture and Exploiting Vulnerabilities in the DIVA APK
•
Better Previews in Compose with State Hoisting + MVI template
•
Avoid using var in the data class constructor in Kotlin – now with Jetpack Compose
•
What Actually Happens Inside Koin (And Why It’s Not Black Magic)
•
How Does Mocking Work Internally? A Deep Dive into MockK Internals
•
Saving the UI State in a Compose Multiplatform App
•
Android Studio Meerkat Feature Drop
•
Material 3 Expressive: Rethinking Emotion, Accessibility & Modern UX
•
Better Previews in Compose with State Hoisting + MVI template
•
What’s new in Jetpack Compose
•
Google Home APIs, tools, and Gemini capabilities for your apps
•
KotlinConf’25 — Keynote
•
Everything you need to know about NEW Navigation 3
•
Path animations in Jetpack Compose
•
Pixel Weather App — погодное приложение в пиксель-арт
Кроссплатформа
• NativePHP: создать невозможное и заработать $100 тыс. за первые три месяца
• Нативная мощь: Flutter SDK на C++ ядре. Часть 2
• Борьба с лишним весом, или Методы оптимизации размеров Flutter-приложений
• 5 лет с Flutter: эволюция кроссплатформенности
• Flutter-диета. Как сбросить вес, выпиливая модули
•
How to force users to update your Flutter app
•
MVIKotlin in Practice: A Modern Architecture framework for Android and KMP
•
Gemini in Android Studio now speaks fluent Flutter
•
Flutter’s path towards seamless interop
•
Why Await? Futures in Dart & Flutter
•
8 Flutter Shortcuts That Feel Like Cheating
•
Hot Reload In Compose Multiplatform (CMP) — THIS Is All You Have to Know
•
Vibe Lander — ретро-игра на KMP
Разработка
• Фронтенд и бэкенд больше не будут общаться как прежде: создаём конструктор сценариев на базе Backend Driven UI
• Анатомия энергопотребления
• От J2ME до супераппов: 20 лет разработки глазами техдиректор
• Мнемотехника: запомнить всё — развитие памяти, насмотренность, саморазвитие
• Прокачиваем Code Review: как выжать максимум?
•
Practical AI techniques for daily engineering work
•
When a team is too big
•
Robust Database Backup Recovery at Uber
•
Don’t solve problems you don’t have. You’re literally creating problems.
•
Announcing Gemma 3n Preview: Powerful, Efficient, Mobile-First AI
•
Learn Python for Data Science – Full Course for Beginners
•
Firebase at Google I/O 2025
Аналитика, маркетинг и монетизация
• Небольшое изменение в интерфейсе Duolingo, которое меняет все
• LoveJack — приложение для знакомств, позволяющее найти любовь с помощью пяти слов
• App Store в США в 2024 обеспечил продажи на $406 млрд
• Как Apple боролась с мошенничеством в App Store в 2024
• Институциональные покупки: понимание и обнаружение
• Apple купила первую игровую студию
• Adjust Growth Copilot — AI-инструмент нового поколения для роста мобильных приложений
• Увеличиваем средний чек и количество повторных покупок с помощью мобильного приложения: кейсы ритейла 2025
• Как продвигать сервис продажи билетов, когда никто не путешествует
• Кейс Airba Fresh и Bidease: как за 4 месяца увеличить количество первых покупок в In-App в 5 раз
AI, Устройства, IoT
• Исследователи Яндекса выложили Yambda — один из крупнейших в мире датасетов для развития рекомендательных систем
• Умный дом на вырост
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

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

• Для чего я написал собственный аудиопроигрыватель
• Быстродействие прокрутки в SwiftUI — в погоне за 120 кадрами в секунду
• Rafinad: сахар для UI-тестирования iOS-приложений
• SmartCaptcha Yandex на iOS: инструкция по внедрению
• Tuist. Как перенести проект
• Ускоряем приложение эффективно
• Swift Concurrency в iOS SDK Яндекс Доставки
• Как мы доверили качество наших приложений AI
• Вадим Чистяков — Global Talent Visa, переезд в Лондон, работа в IT
• Как писать игры на Swift для Playdate
• Мок-собеседование iOS-разработчика. SwiftUI •
• Макросы Swift: проще, чище, быстрее
• Мы решили все проблемы работы в модульном проекте. Хотите так же?
• Apple запустит iOS 26 и macOS 26 в рамках крупного ребрендинга
• Apple Watch и Apple TV получат серьезные изменения в дизайне на WWDC наряду с iOS 19
• Что такое static в Swift — вопросы с собеседований
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Советы для публикации в RuStore: альфа-тестирование, AAB и автоматизация с помощью API
• Большинство приложений для Android нарушают это правило чистого кода!
• Как создать кастомный угловой бейдж в Jetpack Compose
• Станет ли Android наконец красивым?
• Выразительные анимации для всех
• Создание кастомного тултипа Jetpack Compose
• FCM для Android и Backend на Kotlin
• Автоматизация проверки стиля кода с помощью KtLint в Android проекте
• Индикация клика на стероидах в Compose: пишем свою IndicationNodeFactory
• История одного бизнес-желания
• Наглядный пример, когда не следовать best practices for coroutines от Google
• Кто является Senior разработчиком?
• Оптимизация Compose: проблемы, опыт, тактика, стратегия
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• NativePHP: создать невозможное и заработать $100 тыс. за первые три месяца
• Нативная мощь: Flutter SDK на C++ ядре. Часть 2
• Борьба с лишним весом, или Методы оптимизации размеров Flutter-приложений
• 5 лет с Flutter: эволюция кроссплатформенности
• Flutter-диета. Как сбросить вес, выпиливая модули
•

•

•

•

•

•

•

•


• Фронтенд и бэкенд больше не будут общаться как прежде: создаём конструктор сценариев на базе Backend Driven UI
• Анатомия энергопотребления
• От J2ME до супераппов: 20 лет разработки глазами техдиректор
• Мнемотехника: запомнить всё — развитие памяти, насмотренность, саморазвитие
• Прокачиваем Code Review: как выжать максимум?
•

•

•

•

•

•

•


• Небольшое изменение в интерфейсе Duolingo, которое меняет все
• LoveJack — приложение для знакомств, позволяющее найти любовь с помощью пяти слов
• App Store в США в 2024 обеспечил продажи на $406 млрд
• Как Apple боролась с мошенничеством в App Store в 2024
• Институциональные покупки: понимание и обнаружение
• Apple купила первую игровую студию
• Adjust Growth Copilot — AI-инструмент нового поколения для роста мобильных приложений
• Увеличиваем средний чек и количество повторных покупок с помощью мобильного приложения: кейсы ритейла 2025
• Как продвигать сервис продажи билетов, когда никто не путешествует
• Кейс Airba Fresh и Bidease: как за 4 месяца увеличить количество первых покупок в In-App в 5 раз

• Исследователи Яндекса выложили Yambda — один из крупнейших в мире датасетов для развития рекомендательных систем
• Умный дом на вырост
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.