В новом выпуске 136 уровней вложенности XCUITest и Android Runtime под капотом, как Tinder сократил холодные старты на 47% и новые условия распространения приложений в Евросоюзе, от Event-Driven UI к State-Driven UI, что нового в Dart, как сделать MCP удобными и действительно полезными, уменьшение трения в приложениях и многое другое. Заходите!

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

iOS

• Как мы научили XCUITest тапать в контролы на глубине 136 уровней вложенности
• JS-инъекция для iOS-тестов: как подружить WKWebView и XCTest
• Apple обновила условия распространения приложений в Евросоюзе
• Немецкие регулирующие органы меняют Apple App Tracking Transparency
• Наушники AirPods от Apple с камерой подтверждены в macOS Tahoe
• Почему ваше приложение выглядит дёшево (и дело не в цветах)
• Apple предлагает взимать 15% с покупок, совершаемых вне App Store
• En Controlling Orphans in SwiftUI Text: Uncovering the Undocumented avoidsOrphans
• En How to stream SSE with URLSession in Swift
• En iOS 27: Media Intelligence Framework
• En NSTextTable in Swift
• En Why Two Weak References Can Still Leak Memory
• En iOS 27: StateReporter
• En Modern Swift Patterns Every iOS Developer Should Know
• En Everything You Need to Know About Apple Pencil in SwiftUI & UIKit: PencilKit, Gestures & More
• En Why Every Serious iOS App in 2026 Is Going Modular
• En More incredible tales of App Store curation
• Video SwiftUI in motion
• Video AllTrails: Momentum without a rewrite
• Video Flow data through SwiftUI
• Video SwiftUI essentials
• Video A guide to layout in SwiftUI
• Video Design with SwiftUI
• Video Reorderable Modifier | Multi-Item Reordering | Section Reordering | SwiftUI
• Video Prominent Action Custom Tab Bar | SwiftUI
• Video Device Hub Explained — What Every Apple Developer Should Know
• GH Stitch — инъекция зависимостей для SwiftUI
• GH SurfaceForge — отражающие поверхности, реагирующие на наклон устройства

Android

• Как Tinder сократил холодные старты на 47%, благодаря R8 Configuration Analyzer
• Подготовьте ваше приложение к более широким ограничениям объема памяти
• Android Runtime под капотом
• Android Skills — что выпустил Google и почему большинство разработчиков используют навыки неправильно
• Архитектура Android переходит от Event-Driven UI к State-Driven UI
• En Two Bugs, One Setting: How DKA Silently Broke Our Fragments
• En AI, Meet App: Testing Android App Functions
• En Enhance your app for the new Pixel lineup: Unveiled at Made by Google
• En Kotlin 2.4 Compiler Deep Dive: What Actually Changed Under the Hood
• En I Received an Android Take-Home & Here’s How I Built It as a Senior Developer
• En 13 Jetpack Compose Mistakes That Are Still Killing Your App’s Performance in 2026
• En Jetpack XR SDK core libraries reach beta: The next milestone for Android XR
• En Your Coroutine Tests Are Flaky Because You Have Two Clocks Running
• En SavedStateHandle in the Navigation 3 Era: It’s Time to Rethink Your ViewModel
• En The Great Android Stack Reset: A History of Mobile System Design
• Video The Multi-Agent Code Review Workflow For My Production Android Apps
• Video Vertical vs. Horizontal Slicing — The ONLY Right Way to Split Down Your App
• Video A tale of the Gradle DSLs
• GH Boxlore — умный плеер подкастов для Android
• GH ZeroDroid — инструменты для анализа сетей, сигналов и безопасности
• GH Bridge — фоновый рантайм для Android, который переживает завершение процесса и умеет объяснять своё состояние

Кроссплатформа

Dart 3.13 — что нового в Dart?
• En Exploring Compose HTML for Server Side Rendering
• En AI Extensions for a KMP Developer
• En Try Flutter Web with WebAssembly Week
• En I’ve been a Flutter GDE for 8 years (from day one). Here is the ground truth on «Flutter is Dying».
• En I Wanted to Build Flutter Apps Faster — So I Changed the Way I Develop
• En I Stopped Passing Raw JSON Everywhere — Here’s Why I Started Using Models in Flutter
• Video SwiftPM support for Kotlin Multiplatform
• Video All platforms are unique but some platforms are more unique than others
• Video KMP at Scale in Kuaishou Super App for over 700M users

Разработка1

• Эх, невизуальная доступность, как же тебя наладить
• Senior инженеры замолчали, и вот почему это плохой знак
• Как мы переводили страницу объявления на Beduin в мобильной версии Авито
• История создания звонилки без номера: месяц, миллионы токенов и грабли, которые легли в основу этого цикла статей
• Выпрямляем руки агентов: как сделать MCP удобными и действительно полезными
• DesignOps: операционная система команды, которая работает на вас
• Дизайн для программиста: пробую Claude Design
• En Building scalable backend apps in Swift
• En You Don’t Have a Design System
• En Maximizing the value of your Claude Code sessions
• En Curvature Beziers: Improving on a timeless recipe
• En Music theory for programmers
• Video Build a live translation broadcast app with the Gemini Live API and LiveKit
• Video Go Get It, with Kotlin Lessons Learned Evolving Uber’s Java Backend

Аналитика, маркетинг и монетизация

• Я убрал кнопку «Начать тренировку» из приложения для изучения иностранных слов. Кажется, она мешала людям учиться
• Маркетологи в мобайле: Евгений Ушаков (руководитель направления платного привлечения, Whoosh)
• Один «+», восемь дверей и борщ: уменьшаем трение в приложениях
• En We studied 3,500+ AI-powered apps to see why some retain users better than others
• En Good Onboarding Isn’t Just a tutorial. It’s Hospitality.

AI, Устройства, IoT 

Хайп вокруг ИИ: реальное состояние дел и будущее
• Почему ИИ так и не заменил разработчиков (и вряд ли заменит)
• Когда электросчетчик некуда поставить: как организовали биллинг для арендаторов
• Мой первый KitRover: попытка сделать машинку с управлением по сети. (часть 1)
• Как определить местоположение людей по Wi-Fi
• ZBFun: архитектура для ZigBee без обязательного облака на Python
• Интеграция Wiren Board в Carrier часть 2
• OpenAI открыла ультрабыстрый доступ к API

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