Мобильная разработка за неделю #565 (18 — 24 ноября)
В новом дайджесте реверс-инжиниринг новой функции iOS Inactivity Reboot и поиск Золотого пути к устойчивой Android-разработке, шапочный разбор с CoordinatorLayout и взрослая анатомия крэшей на iOS, приложения для HarmonyOS Next, лучший квартал экономики приложений, большая битва платформ и многое другое. Подключайтесь!
Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Реверс-инжиниринг новой функции iOS Inactivity Reboot
• Исследуем интерактивный Bottom Sheet в SwiftUI
• Об анатомии крэшей на iOS «по-взрослому»
• Apple убивает Swift
• Дебаг на максимум: секретные настройки Xcode, которые должен знать каждый разработчик
• Портал, манулы и мячи: опыт разработки для Apple Vision Pro. Часть 1
• Дейтинг, Swift и Формула-1: от первых шагов в IT до победы в хакатоне
• iOS разработка с нуля
• Exploring Apple Intelligence: Writing Tools
• Mastering TextEditor in SwiftUI: Features, Limitations, and Tips
• Creating a macOS Screensaver in SwiftUI
• Map Models Made Easy
• Concurrency in Swift 6
• How to use a Connectable publisher in Combine
• Proper Navigation in SwiftUI with Coordinators
• Static, Dynamic, Mergeable, oh, my!
• Swift 6 suitable notification observers in iOS
• Using Transactions Instead of Save in SwiftData and Core Data
• From Noida to the USA: An iOS Developer«s Journey
• Detecting faces in images with the Vision framework
• Optimizing compilation and test runs with Xcode projects
• Getting consistent temperature preferences on iOS
• Asserting state with #expect in Swift Testing
• Disintegration Effect (Thanos Snap Effect) | SwiftUI
• Recreating Mail App«s Tab bar | SwiftUI
• Fix iOS 18 Gesture Problems With ScrollViews | SwiftUI
• How to save data to local storage — iOS File System and Sandboxing
• Apple«s Official Method to Learn Swift and iOS
• SwiftUI Tutorial: Build a Real App! Payment Calculator
• RichEditorSwiftUI — WYSIWYG редактор для SwiftUI
• Revertible — версионирования состояний для замены UndoManager
• Swift PNG — декодирование, проверка, редактирование и кодирование PNG
Android
• Поиск нашего Золотого пути к устойчивой Android-разработке
• Работа с CoordinatorLayout: шапочный разбор
• Вышла Developer Preview версия Android 16
• Избавляемся от Android в api-модулях
• Пишем Android приложение для фильтрации спам-звонков
• Кроссплатформенная архитектура ядра приложения. Простая. Линейная. Масштабируемая
• Такие разные Android AppLinks, WebLinks, DeepLinks. Разбираемся и пытаемся сломать
• Code Review: вы не поверите, насколько распространены эти ошибки в коде Android-проектов
• Google отменил выпуск Pixel Tablet 2
• Микрооптимизация, которая вам никогда не понадобится
• Google замещает ChromeOS на Android, чтобы конкурировать с iPad
• Android Interview Series 2024 — Part 1 (Android basics)
• A Curious Case of Mistake\n Identity: How Lambdas Break Data Class Hashing
• Not a Phase — Text with Compose and Canvas
• A Micro-optimization You Will Never Need
• How I Passed the Google Android Engineer Hiring Assessment: My Journey
• Don«t use Kotlin«s removeFirst () and removeLast () when using compileSdk 35
• A Comprehensive Guide to ADB (Android Debug Bridge)
• System Design of Netflix Android App: A Detailed Breakdown
• Android Studio Ladybug Feature Drop
• Finding Our Golden Path to Sustainable Android Development
• Benchmark Insights: Direct State Propagation vs. Lambda-based State in Jetpack Compose
• Kotlin Platform Types will break your apps
• Introducing Restore Credentials: Effortless account restoration for Android apps
• Test smarter, not harder: new testing strategies documentation
• Graphics layers | Jetpack Compose Tips
• Open Health Stack
• How to Deserialize Inconsistent JSON Data With a Custom Kotlinx Serializer
• Anonymous Functions Aren«t Lambdas
• Animating Your World with Doris Liu — Dive into Jetpack Compose Animations
• Focus Launcher — минималистичный лаунчер для Android
• Composable Screens — примеры экранов на Compose
Кроссплатформа
• Кроссплатформа, зови меня победителем
• Стили, темы и адаптивная верстка в React Native
• A Developer«s Roadmap to Mastering Kotlin Multiplatform
• Introducing Native Integrations for Gravatar Mobile SDK
• Flutter Openworld Gaming Engine
• Writing iOS code in Kotlin Multiplatform
• Add React Native to the Signal open source app
• State Management in Flutter with Provider
• Flutter Möbius Strip
• Flutter web loading screen
• Building a Clean, Multi-Module Application with Compose Multiplatform
• The Compose Multiplatform Crash Course for 2025 — Build a Clean Code Book App
• Platform Integrations With Russel Wolf
• From Sprite Sheets to Stunning Animations in Jetpack Compose! KMP Library
• Building a Clean, Multi-Module Application with Compose Multiplatform
Разработка
• Huawei уходит от Android. Придётся ли бизнесу делать приложения для HarmonyOS Next
• Selenium с Robot Framework — тест пользовательского интерфейса
• Подборка книг для мобильных разработчиков: от начинающего до продвинутого уровня
• Сложный интерфейс: Рисуем состояния экрана без помощи системного аналитика
• iOS vs Android: большая битва платформ — что лучше для разработчика, бизнеса и простого пользователя
• Всё о лицензиях библиотек, что необходимо знать разработчику
• Niantic использует данные игроков для создания «большой геопространственной модели»
• Минюст заставит Google продать Chrome, чтобы разрушить монополию на поиск
• Why Years of Experience Don«t Matter — How to Keep Your Skills Relevant in Tech
• Simple Time Management Hacks for Software Developers
• Socratic Questioning — «Meetings are a waste of time»
• Playground Wisdom: Threads Beat Async/Await
Аналитика, маркетинг и монетизация
• Рынок приложений в 3 квартале 2024 — новый рекорд потребительских расходов
• Статистика: доходы AFK Journey
• Apple начала продавать рекламу в Apple News
• Лучшие приложения и игры в Google Play 2024
• Что произойдет, если удвоить цену на приложение?
AI, Устройства, IoT
• Самодельная платформа для робототехники из бюджетного смартфона
• Пишем свою Diffusion модель с нуля
• Реализация подобия Apple Vision Pro
• Первое «умное» кольцо Casio повторяет классические часы
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.