Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
- Все, что вы хотели знать о флагах в эмодзи (но не знали, что вам это нужно)
- Как я решал задачу получения доступа к данным банковских приложений на iOS
- Дружим iPhone и ESP32. Часть 1. ESP Arduino Core
- Как встроить распознавание звуков в ваше iOS приложение на Swift с использованием SoundAnalysis
- Время сборки и верификация модулей
- Поваренная книга SwiftUI: списки и навигация — Часть 1
- Я получил новый iPhone, но мой аккаунт в социальных сетях заблокирован
- Apple забанила аккаунт компании победителя WWDC
- Темная сторона однонаправленных архитектур Swift
JavaScript to Swift and back: Bridging location services in WKWebView SwiftData’s new Index and Unique macros Elevate Your Testing Game with Swift Testing Limit Swift Concurrency’s cooperative pool Custom hover effects in SwiftUI Backport SwiftUI modifiers Hiding A SwiftUI View From Switch Control Animating SF Symbols on iOS 18 The AirDrop Conundrum: Passing Custom Models From and To Your App SwiftUI Modifiers Deep Dive: containerRelativeFrame How-to: Symbolicate MetricKit Crashdiagnostics Walmart Software Engineer III — IOS (IN3) My Interview Experience SwiftUI Custom Popups — iOS 17 & 18 SwiftUI TextRenderer SwiftUI Reorderable Scroll View — Custom Drag & Drop With Scroll Detection — iOS 18 Create Modular iOS Apps with Swift Packages: Step-by-Step Guide! SwiftUI — Reorder a List (2 Ways) Fix This Problem with SwiftUI Lists Verge — надежный фреймворк управления состоянием Swift AST Explorer — визуализация абстрактного синтаксического дерева SSNeumorphicView — неоморфизм для UIKit и SwiftUI
Android
- Интересные приёмы, взятые из исходников Android
- Создаем атомный лоадер на Jetpack Compose
- Композим иконки. Улучшаем семантику и скорость отрисовки
- NFC на Android: создание системы предоплаты с использованием NDEF меток
- Фокус в Android TV
- Многопоточность в Android: тогда и сейчас
- Советы по обработке Insets для обеспечения edge-to-edge на Android 15
- Как я разрушил свои стереотипы об автотестах, или Мой путь от Appium до Kaspresso
- Защита мобильных приложений. Записки охотника: Почему Appdome иногда такой себе Dome
- Организация кода в проекте — в какой пакет положить Kotlin класс
- Android 15 опубликован в AOSP
String vs StringBuffer vs StringBuilder Coroutine Testing — Never ending tests & backgroundScope Avoiding unintentional device exclusion in an Android app Android Studio Koala Feature Drop is Stable! Transforming Figma UI Designs into Jetpack Compose Code with Google AI Studio: A Step-by-Step Guide Composable-scoped ViewModel: An interesting experiment Loading Initial Data in LaunchedEffect vs. ViewModel How to Provide Photos to the Gallery for Running UI Automated Tests Mastering Navigation in Jetpack Compose: A Guide to Using the inclusive Attribute How to Create an Atomic Loader in Jetpack Compose Insets handling tips for Android 15’s edge-to-edge enforcement Kotlin KSP — how to automate everything in the world Best way to keep state in a ViewModel Unlock Android Jetpack Components: Hidden Tricks to Build Successful App Android Compose Videos with ExoPlayer Android dev very overengineered and difficult to get into? Anti-Pattern: Stop Leaking Kotlin Flow Collectors in Your Android ViewModel Building for the future of Android What’s new in Android Studio Koala Master Kotlin Coroutines & Flows Build your own compiler with KSP Applying the State Pattern in Kotlin Voice — минималистичный плеер аудиокниг aDp — масштабирование дизайна Compose для разных экранов
Кроссплатформа
- Flutter Web. Часть 1
Writing a Kotlin Multiplatform App from Start to Store Using Native iOS Navigation from Compose Multiplatform The 5 Design Patterns For Every Flutter Engineer 5 Essential Design Patterns Every Flutter Engineer Should Master Shrink Your KMP Build: The Power of ‘Internal’ Functions Flutter State Management & Design Patterns: Do You Really Need Them? Build an Animated Search Bar in Flutter
Разработка
- Следим за производительностью SDK. Доклад Яндекса
- Оставляйте что-нибудь на завтра
- Анализируй-сокращай. Как мы перешли от вендоров на инхаус и как это сказалось на UX и архитектуре
- Новый подход к редизайну: как мы создаем удобный интерфейс для главного экрана платежей и переводов
- SkillStaff: рынок ИТ-аутстаффинга вырастет до 265 млрд к концу 2024 год
- Самые высокооплачиваемые вакансии августа в сфере разработки приложений
- Архитектурное собеседование — по обе стороны баррикад •
- Backend-Driven UI и конструкторы. Благо или зло?
- Открытое собеседование — технический руководитель: разбор кейса
- Как работает авторизация и аутентификация — OAuth, JWT, webauthn, RBAC, ABAC
AI development and agile don’t mix well, study shows Synchronizing pong to music with constrained optimization Explicit is better than implicit The Boolean Trap
Аналитика, маркетинг и монетизация
- AppsFlyer представил Attribution Reporting API для Android Privacy Sandbox
- Почему и как мы платим за свою же органику в сторах
- Маркетологи в мобайле: Всеволод Самсонов (Flowwow)
- Hello Wonder — браузер с ИИ для детей
- Пуш-уведомления. Интересны, временами непонятны
Key languages for localization: Here’s how demand changed in 2023 Hacking sales as an introvert