Маркетинг и монетизация
Мобильная разработка за неделю #463: как не забросить построение инфраструктуры
В новом выпуске любовь и терпение Swift и Objective-C, подводные камни тестирования и построение инфраструктуры, универсальные пуши, чтобы править всеми, подписки в App Store и многое другое.

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



iOS


- Swift и Objective-C в одном SDK. Стерпится, слюбится
- Примеры анимации SF-символов в SwiftUI
- Анализ производительности для ускорения сборок в Xcode
- Как не забросить свой пет-проект. Мой кейс запуска приложения в App Store
- Проверяем ваш код на API, использование которых нужно будет объяснять
- Подводные камни тестирования кода в Swift Concurrency
- Эластичная анимация
- Декларативная навигация в iOS-приложении
- История «Сбербанк Онлайн» на iOS
- Вопросы с собеседований: классы и структуры в Swift
Getting Started with Xcode Server: A Practical Guide for Simplifying CI/CD for iOS Apps Improve the build times of your SPM Packages and your apps How to Automate Memory Leak Detection in Your Swift Code with XCTest iOS app setup for remote push notifications Adapting an App to visionOS Scrollable lists using Protocol-Oriented Programming and UICollectionViewFlowLayout Swift 6: Preparing your Xcode projects for the future Add Live Activities to your iOS app in 4 steps Elm architecture in iOS Developing Apps for iOS — Stanford course CS193p Learn how to utilize the Scan and Reduce operators in SwiftUI with Combine Xcode Breakpoints 101 Mastering iOS Code Quality: 12 Essential Strategies for Developers Use Periphery to find unused code How to set up Gitlab CI/CD with Fastlane for iOS-project on a Mac mini Mastering StoreKit 2. SubscriptionStoreView in SwiftUI Stop prefixing your UserDefaults keys SwiftUI — Circular Loader Animation Beyond Basics: Can SwiftUI Handle the Challenge of Complex macOS Apps? Debugging Macros in Swift with the AST Explorer Accessibility in Swift: Dynamic Colors Creating Bottom Sheets like in the «Find My» app using SwiftUI Parallax Carousel Scroll Animation Using SwiftUI iOS 17 Data Flow with Observation Framework English Pronunciation App: изучение английских слов и их произношения Braze: криптовалюты с SwiftUI и MVVM



Android


- Как тестировщики с помощью пользовательского десктопа и видеокарты инфраструктуру строили
- Миграция приложения на Jetpack Compose
- Ускоряем сборку за счёт миграции с kapt на ksp
- Как узнать кто вызывал функцию? StackTrace стек вызовов в Kotlin & Java
- Универсальные пуши для Android. FCM, HMS и RuStore в одном месте
- Добавляем анимации встряхивания в Composable
NetMock: простой подход к тестированию HTTP-запросов в Java, Android и Kotlin Multiplatform Kotlin and Java interoperability: Useful annotations Let Kotlin do the code for you — Part II: Retrofit and Proxy Unleashing Creativity with Custom Modifiers in Android Jetpack Compose Kotlin Exhaustive when Migrate your Android Build from Groovy to Version Catalog Script for auto-build Android applications Solving the mystery of recompositions in Compose’s LazyList Jetpack Compose Tricks: Conditionally Applying Modifiers for Dynamic UIs Ultron — simple, stable, maintainable Android UI tests Walkthrough Kotlin Flows and Channels with Message Bubbles Latest ARTwork on hundreds of millions of devices Introducing Konsist: A Cutting-Edge Kotlin Linter Unleashing Creativity with Custom Modifiers in Android Jetpack Compose Implementing Advanced RecyclerView Techniques for Efficient List Rendering SOLID Design Principles with Kotlin Android Best practices for error handling in Kotlin FloatingActionButton with Sub Floating Items in Jetpack Compose Profile your build Now in Android: 89 — Android 14 Beta 5, Compose for Wear OS, WebGPU, and more! Full Guide to Bottom Sheets — UX With Material3 Konsist: тестирование архитектуры и соглашений языка Kotlin JsonTree: красивый Json в Compose



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


- Одно PWA, чтоб править всеми
- Фишки React Native для реализации личного кабинета
- Под капотом анимаций в React Native. Часть 2/2: Reanimated and JSI
- Flutter 3.13. Что нового?
Building Offline-First React Native Apps with React Query and TypeScript How I became a Google Developer Expert in Flutter Demystifying Code Splitting in React: Improving Performance and User Experience A new way of listening to the app lifecycle events in Flutter Building a Chrome Extension with Flutter: A Step-by-Step Guide Creating Custom Dropdowns with OverlayPortal in Flutter Better with bloc Hive Database in Flutter: Building a Simple Movie App 3 Flutter Open Source Projects That Improve Your Skills Simplify Your iOS Brownfield Integration with React Native Host Home Automation in Flutter Appyx: навигация + UI компоненты для Compose Multiplatform



Разработка


- Мобильное приложение для сотрудников: спорт, игрушечное казино и собственный Twitter
- Рецепт юзабилити-тестирования
- Как отдать технический долг
- Trunk based development в мобильной разработке
- В Excel появляется Python
The Next Next Job, a framework for making big career decisions Fuzz Testing Is the Best Thing To Happen to Our Application Tests Slack’s Migration to a Cellular Architecture The Future is Now: Integrating AI in Software Development Why Scrum Fails