Мобильная разработка за неделю #567 (2 — 8 декабря)
В новом дайджесте уменьшение размера банковского приложения и транзишинометр для Android, вопперы и табы, сертификаты и профили, сколько приложений, из выпущенных в 2024 году, стали успешными, вранье LLM и многое другое. Подключайтесь!
Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Анимируем представления UIKit с помощью анимации SwiftUI
• Как я уменьшил размер банковского приложения для iOS на 50%
• Cursor AI в iOS-разработке. Приложение «Фото с Flickr.com»
• Удобная навигация в SwiftUI для iOS 16 и выше
• Портал, манулы и мячи: опыт разработки для Apple Vision Pro. Часть 2
• Бразильский суд отменил антимонопольное решение по Apple
• Tesla представила приложение для Apple Watch
• Как работает App Store на Новый год
• Как мы внедряли пакетный менеджер и поняли всё про iOS-зависимости
• Как мы сделали внутренний сервис в The Composable Architecture
• ChatGPT in Xcode: is it good?
• Simple state sharing and persistence in Swift
• Why Can«t You Loop Over Ranges of Characters in Swift
• Building a Clone of the Messages app in SwiftUI
• Stretching audio by small amounts using Swift
• Text field enhancements in SwiftUI
• Testing completion handler based code in Swift Testing
• Integrating Live Activity and Dynamic Island in iOS: A Complete Guide
• Leveraging the Power of Generic Protocols in Swift
• Debugging SwiftUI Layouts: Tips, Tricks, and Techniques
• How to Create Dynamic iOS Apps: Remote Styling with SwiftUI
• Singleton in XCode 16
• Why not build Apple Intelligence ourselves?
• How to Limit the Xcode Console Spam with CloudKit and SwiftData
• SwiftUI App Intro Animation«s — Walkthrough Page Animation«s
• Extract UIKit View From SwiftUI View
• Swift Testing 101 — Xcode 16 Tutorial
• SFBAudioEngine — работа с аудио для macOS, iOS и tvOS
• MotionMachine — мощная, элегантная и модульная анимация на Swift
• ATProtoKit — простая работа с AT Protocol
Android
• Пишем транзишинометр для Android. Как понять, что мои экраны открываются быстро?
• Вопперы и табы: как мы сделали меню для Burger King
• Выделение слов в Compose
• От Kotlin до машинного кода
• Изогнутое нижнее меню в Jetpack Compose
• Jetpack Compose как unbundled-библиотека. Скорость UI vs. Гибкость разработки
• Самостоятельная доработка Android APS
• Настройка Sora Editor
• Play Integrity API становится быстрее и надежнее
• Как мы использовали Dynamic Feature Delivery на Android
• Как в Яндекс Музыке пишут визард с помощью Jetpack Compose
• Gradle уже не тот! Мнение билд инженера
• Kotlin trick: writing shared Enum utility code
• Kotlin 2.1.0: Smarter when with Guard Conditions
• Migration Guide from Retrofit and KAPT to Ktor and KSP
• Rich Link Representation in Jetpack Compose
• Android Studio Meerkat | 2024.3.1 Canary
• Top 6 Tips for Starting a Modern Android Codebase From Scratch
• Android Binder Mechanism: The Backbone of IPC in Android
• Build AI-Powered Chatbot Apps for Android Using Firebase
• Clipping and masking | Jetpack Compose Tips
• How to Create a One-Time Password TextField in Jetpack Compose
• Immutable and Persistent Lists
• Hot Reload Magic
• Android 15 for Raspberry Pi 5
• Aerial Views — скринсейвер для Android по мотивам Apple TV
• SVG to Compose — утилиты для конвертации SVG в ImageVector
Кроссплатформа
• Два новых линта в Dart 3.4
• Гайд по кроссплатформенной разработке с использованием React Native
• Пишем golden-тесты для генераторов кода на Dart
• Lessons learned releasing my first Flutter app on iOS
• Building a WatchOS Companion App for Flutter
• Google needs to invest in more Flutter
• Flutter: Simplified Unidirectional Data Flow
• Flutter vs. React Native«s New Architecture: Performance Benchmark
• UUID in Kotlin Multiplatform
• How to Manage Run-Time Permissions in Android and iOS with Compose Multiplatform
Разработка
• Почему не стоит указывать сертификаты в своем профиле
• Особенности использования сторонних сервисов в мобильных приложениях на примере Firebase
• В HarmonyOS нашли виртуальный Android
• Самые высокооплачиваемые вакансии декабря в сфере разработки приложений
• Как повысить свою ценность в ИТ: в поиске новых компетенций
• Карьерный маршрут: от мидла до архитектора ПО
• Построение event-driven приложения с Apache Flink
• От исполнителя до менеджера менеджеров: что поможет, а что не спасет
• PL/SQL — SQL на стероидах: Oracle, энтерпрайз, базы данных
• 4 Ways to Lead Meetings That Work
• Making a trading Gameboy: A pocket exchange and algo trading platform
• Engineers Do Not Get To Make Startup Mistakes When They Build Ledgers
• WASM-4: Build retro games using WebAssembly for a fantasy console
Аналитика, маркетинг и монетизация
• Сколько приложений, из выпущенных в 2024 году, заработало больше $100,000?
• Custom Product Pages: как их внедрить и получить максимальную отдачу от рекламы iOS-приложения
• Сторис в МП — новая боль? Что делает ВкусВилл, Т-Банк, Авито и другие?
• Новогоднее освещение для дока и меню Mac
• Прогнозы Adjust на 2025 год: как мобильный маркетинг трансформируется в новых условиях
• Cameo открывается для всех
• Кто выиграет от продажи Chrome?
• Playtime EMEA 2024
AI, Устройства, IoT
• Что побуждает LLM врать и как этого избежать в своих продуктах
• Малопотребляющий датчик с передачей данных по радиоканалу
• Смарт-очки Samsung дебютируют в январе
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.