В новом дайджесте быстродействие прокрутки в 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 — один из крупнейших в мире датасетов для развития рекомендательных систем
• Умный дом на вырост

← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.