Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• 10 хаков для оптимизации производительности iOS-приложений
• Соединяем две точки с помощью отрезков прямых линий и закругленных углов в SwiftUI
• Дивный мир Swift Concurrency
• Задачи с собеседований: Leetcode — Недостающее число
• Разработка под Apple Vision Pro
• Размещение UI-компонентов в пределах отступов Safe Area
• Как встроить в TextField индикатор загрузки и кастомную View
• Евросоюз заставит Apple полностью раскрыть функции iPhone сторонним разработчикам
• Rendering Pixel Art with SwiftUI
• How to Seamlessly Use Swift Package Manager (SPM) and CocoaPods (POD) Together with the Same SDK
• Parsing JSON using the Codable Protocol
• TabletopKit tutorial
• Identifying individual sounds in an audio file
• Exploring The LabeledContent View In SwiftUI
• Performing your app actions with Siri through App Shortcuts Provider
• SwiftUI: Simple Workout App with HealthKit
• Using Proxyman to Intercept and Simulate iPhone App Network Requests
• Interview Experience for SDE-II iOS at Flipkart
• Access Modifiers in Swift
• Dynamically adapting to available space with ViewThatFits
• Don’t rely on BGAppRefreshTask for your app’s business logic
• Vibe Coding with Cursor AI
• Why The Composable Architecture is Overrated
• Animated Async Button With Custom Spinner Using SwiftUI
• Master SwiftUI Layout With EASY Spacing And Padding
• ChatGPT Pro for iOS Devs: HONEST Review
• Create Custom Tab Bars in SwiftUI – An Alternative to Default Tabs
• VisionOS Style Menus for iOS Using SwiftUI
• Soundscape — 3D-звук для всех
• Go Cycling — велотрекер для iOS
Android
• Demeter в опенсорсе: реактивное профилирование Android-приложений
• Создаём многомодульную библиотеку на Android: как же собрать fat-aar?
• Protobuf против JSON для Android-разработки
• Передача данных от ESP32 по Bluetooth LE к Android
• Ликбез по разрешениям в Android
• Кастомные лейауты в Jetpack Compose
• Мапим данные из domain в ui модуль в многомодульном проекте
• Поиск Google и Play Store так же нарушают DMA, считает ЕС
• Why Visual Testing Is Critical for Mobile App Quality
• Using the Android Context and Manifest to Unveil the Android System Mechanics
• Enhancing Dropdown Menus in Jetpack Compose: Implementing Searchable Selection
• How to Develop Firebase Genkit Flows
• Unit Testing Lifecycle and State in ViewModels
• 12 tips to mastering Kotlin Coroutines
• Kotlin for Seniors: Stop Writing Code, Start Crafting it. Infix.
• System Design for Airbnb’s Android Application
• Kotlin 2 Guard Condition
• Material3 Color System Basics for Android Developers
• Bump’s Journey into Delightful Experiences on Android with Jetpack Compose
• Android Studio Meerkat Feature Drop
• Avoiding Memory Leaks in Android: Best Practices for Context Usage
• Kotlin for Seniors: 3 Powerful Features You Should Know
• Android Studio Narwhal Canary 1 now available
• Firebender: Most powerful, privacy-first coding assistant for Android Studio
• Kotlin 2.1.20 Released
• Full 2025 Kotlin Crash Course For Beginners
• Create Boilerplate Files With ONE Click With Multi-File Templates In Android Studio
• Mastering UI Events and States in Jetpack Compose
• Parsing XML namespaces and trying not to lose our minds
• Fighting the Elephant — Gradle Convention Plugins
• Shader Ripple Effect Playground — библиотека шейдерных AGSL эффектов
• HandWriting — все для рисования
• OpenNote — Markdown редактор и блокнот для Android на Compose
Кроссплатформа
• Полезные библиотеки для React-приложений в 2025 году: на что обратить внимание
• Кроссплатформенные фреймворки поставили рекорд по распространению в 2024
• 5 причин плохого настроения. История одного Flutter-проекта, который заставил нас поломать голову
• Рецепт приготовления кроссплатформенного мобильного видеоредактора
• How to Use Swift Packages in Kotlin Multiplatform using Koin
• Fastlane in Kotlin Multiplatform projects
• No macros in Dart, how to replace freezed?
• The final word on Flutter architecture
• Sharing Data and Files In Compose Multiplatform
• Implementing Keyboard Accessibility in Flutter
• Build a Video Streaming App like YouTube
Разработка
• Зумеры не просто слушают — они хотят, чтобы их слушали. Как баг изменил наш взгляд на продукт
• 20 идей из интервью с Питером Левелсом: про создание стартапов в одиночку, минимализм и жизнь цифрового кочевника
• Интерфейсы: к вопросу о размерах пальцев и кнопочек
• Что написание кода искусственным интеллектом значит для стартапов?
• Выжимаем максимум из код-ревью и спасаем нервные клетки
• Сделай удобно: подборка UI/UX-кейсов из цифровых и нецифровых продуктов (#10)
• Javascript для бэкенда – отличная идея: Node.js, NPM, Typescript
• Собеседование по System Design: проектируем клон Авито
• TurinTech исправляет последствия «вайб кодинга»
• Discord запустил Social SDK
• Cursor сказал человеку, чтобы тот сам писал свой код
• Systems Ideas that Sound Good But Almost Never Work
• Career advice in 2025
• Software Development Has Too Much Software In It
• Building MCP with Kotlin: Claude Desktop Controls My Smart Home Lights
• Cursor Talk to Figma MCP — создание дизайна в Figma с помощью ИИ
Аналитика, маркетинг и монетизация
• Приложения с подпиской 2025 — отчет RevenueCat
• В Adapty выпустили FunnelFox — конструктор Web2App воронок
• Рост мобильного гейминга возобновляется: ИИ, гибридная монетизация и новые стратегии привлечения пользователей
• Galaxy Store снижает комиссию
• Самые скачиваемые и зарабатывающие приложения в мире в феврале 2024
• Merge Mansion: +50% Revenue to Reclaim the Top Spot
AI, Устройства, IoT
• Как я победил в RAG Challenge: от нуля до SoTA за один конкурс
• Как машинное обучение увеличило доход Duolingo на миллионы долларов
• Machine learning на ESP32
• Tasmota + Алиса = любовь. Протокол Matter в самодельных и перепрошитых устройствах умного дома
• Тестируем YandexGPT-5. Когда хотелось быть ChatGPT, но в душе всё ещё Алиса
• Дедупликация объявлений: как мы боремся с одинаковыми размещениями
• Умный домофон SmartIntercom. Ещё один… ДВА
• Демистифицируем машинное обучение – из разработчика в ML-инженеры
• Новая ИИ-модель Roblox может генерировать 3D-объекты
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Автор: RoboForm