В нашем новом дайджесте виджеты iOS 18 и шаблоны проектирования SwiftUI, Flappy Bird на Си для Android и заблуждение UseCase, магия ссылок, нативный Swift на Android, крадем впрок как художники и многое другое. Подключайтесь!
Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Готовый компонент UI свайп-панели c добавлением scrollView, и других элементов ui. (iOS Swift)
• Шаблоны проектирования для SwiftUI
• Использование трейтов для аннотирования и настройки поведения тестов
• Виджеты iOS 18: добавляем поддержку tint color
• ЕС укажет Apple, как обеспечить совместимость с DMA
• The weirdest Core Data crash I have seen
• Efficient Multithreading in iOS with Swift
• Notifications Your App can use to Increase Activation and Retention
• Thread safety with Mutex in Swift 6
• Optimizing Your iOS Project Setup with Xcodegen and SwiftGen
• Using Traits to annotate and customize test behavior
• +The Power of Custom ShapeStyle for SwiftUI Theming
• Recreating Readable Content Guide Sizing in SwiftUI
• What’s New in SwiftUI for iOS 18
• Announcing Swift 6
• Mastering Data Binning with Swift Charts
• Discovering app features with TipKit. Groups
• AVAudioEffectNode: painless low level audio effects written in Swift
• Integrating 3rd-Party AI on Apple Platforms
• Building Intelligent Apps with Apple AI Models
• Let’s Create Chips UI With iOS 18 APIs
• So, Let’s create a Splash Screen | SwiftUI
• Discover 3 new features of Xcode 16
• SwiftData Previews: PreviewModifier in SwiftUI (iOS 18)
• Color Mixing in iOS 18
• Enhance App UI Animations with these 4 Modifiers
• AppState — эффективное управление состоянием и инъекция зависимостей для Swift 6
• LinkNavigator — простая и мощная навигация для SwiftUI
• AnimatedImage — анимация изображений в Swift и SwiftUI
Android
• Flappy Bird на Си для Android весом APK всего 92 Килобайта
• Заблуждение UseCase: что нужно знать Android-разработчикам
• Магия ссылок Системы быстрых платежей
• Создаем мерцающий текст в Jetpack Compose
• Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах
• Взаимодействие с клавиатурой в Compose: особенности и подводные камни
• Улучшаем автокомплит в смешанных Java-Kotlin проектах
• Приложение, идентичное натуральному: 7 способов прокачать свой pet-проект
• Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях
• Нативные библиотеки для Android
• Заработок на Open Source. Decompose. Будущее KMP. Аркадий Иванов
• Бессмертное приложение
• Укрощаем UDF state-based архитектуры. Реальные кейсы в больших приложениях
• Exploring Lifecycle-Aware Service and FirebaseMessagingService on Android
• Android 15: New Features for Android Developers
• Top 10 MVVM Mistakes We All Have Made
• How to build fully custom Jetpack Compose Bottom Sheets without using Material Compose
• Android: Catching NDK crashes
• RxJava to Kotlin Coroutines: The Ultimate Migration Guide
• View State Management & Coordination with Compose on Android
• Forecasting weather with Open-Meteo API using Jetpack Compose
• Clean Strings Handling in Android
• Design Server-Driven UI with Jetpack Compose and Firebase
• Android App Security Checklist for Developers
• How We Managed to Send Events Sequentially with Rate Limiting And Controlling Each Event?
• Complement your media editing pipeline with Jetpack Media3
• Android 15 Launch, a special guest spotlight, and more — Google Developer News September 2024
• The ONLY Correct Way to Load Initial Data In Your Android App?
• Save User Credentials With the Google Credential Manager — Android Studio Tutorial
• Overcoming Unsecurities in WebViews
• Beyond The Success Of Kotlin
• Jetpack Compose For Beginners — Crash Course 2024
• Accrescent — безопасный магазин приложений для Android
• Measure — мониторинг мобильных приложений.
Кроссплатформа
Нативный Swift на Android: установка, компиляция, запуск и тестирование
• Анализ InheritedWidget'а в Flutter
• Flutter Hot Reload: Что под капотом?
• Compute — волшебная пилюля?
• Ещё одна статья про макросы. Часть 2 + Часть 1
• React Native Splash Screen — поддержка разных тем
• Упрощение управления формами во Flutter с помощью пакета FForm
• Flutter Dev Podcast #47: CrossConf Awards
• How to Add a Splash Screen to a Compose Multiplatform App
• Garbage Collector in KMP
• Flutter vs Native: Why Flutter Wins for TV App Development
• Garbage Collector in KMP
• A Startup Guide to Ship Mobile App Faster Using Flutter
• Exploring Kotlin Multiplatform: A Visual Guide
• KMP (Kotlin Multiplatform) AndroidX Room setup and more
• Building A Custom Design System in Compose Multiplatform
• 10 Common Flutter Mistakes and How to Avoid Them
• Extracting Original Values from CValue in Kotlin Multiplatform: The Power of memScope
Разработка
• Основы BDUI для продуктовых дизайнеров. Шпаргалка
• Вашей компании нужны junior разработчики
• Как следить за состоянием мобильного приложения?
• Реализация push-уведомлений из web в мобильное приложение для новичков
• Что можно улучшить в приложении? Часть 3. Крадем как художники у Впрок
• Почему надо «проектировать дважды»
• Грейд в IT
• Как устроен Yandex Mobile Ads SDK
• Паттерны SDUI
• Почему мы продолжаем срывать сроки проектов
• Какая JVM лучшее всех? Java, JVM Architecture, GraalVM, HotSpot JVM
• Using feature flags in GraphQL
• Decoding Mobile Crashes: A Comparative Guide for Android and iOS
• Good software development habits
• You’ve only added two lines — why did that take two days!
• Should we decompose our monolith?
• How to Measure Progress in a Software Project
• Stop Designing Your Web Application for Millions of Users When You Don’t Even Have 100
• How Optimizations made Mario 64 SLOWER
• Securing API Servers Course
Аналитика, маркетинг и монетизация
• Photon Library за $5 возвращает старые «Фото» для iOS
• Nurture обучает детей важным жизненным навыкам с помощью интерактивных игр и развлечений
• SocialAI — ИИ-социальная сеть для одного человека
• Продвижение побочных проектов с помощью контент-ориентированной разработки
• Soundiiz — простой инструмент для передачи плейлистов между музыкальными сервисами
• Самые скачиваемые и зарабатывающие приложения в мире в августе 2024
• Как не заблудиться в четырех соснах: выбираем способ найти причинно-следственную связь без экспериментов
• How to Improve Retention: The Ultimate Guide for Product Managers and Leaders
AI, Устройства, IoT
• Как эволюционировало машинное зрение автономного транспорта. Доклад Яндекса
• Bluetooth-маяки, есть ли от них польза?
• Mistral запускает бесплатный уровень для разработчиков
• Новые очки Spectacles стали немного ближе к хорошему AR
• Slack превращается в хаб для ИИ-агентов
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Готовый компонент UI свайп-панели c добавлением scrollView, и других элементов ui. (iOS Swift)
• Шаблоны проектирования для SwiftUI
• Использование трейтов для аннотирования и настройки поведения тестов
• Виджеты iOS 18: добавляем поддержку tint color
• ЕС укажет Apple, как обеспечить совместимость с DMA
• The weirdest Core Data crash I have seen
• Efficient Multithreading in iOS with Swift
• Notifications Your App can use to Increase Activation and Retention
• Thread safety with Mutex in Swift 6
• Optimizing Your iOS Project Setup with Xcodegen and SwiftGen
• Using Traits to annotate and customize test behavior
• +The Power of Custom ShapeStyle for SwiftUI Theming
• Recreating Readable Content Guide Sizing in SwiftUI
• What’s New in SwiftUI for iOS 18
• Announcing Swift 6
• Mastering Data Binning with Swift Charts
• Discovering app features with TipKit. Groups
• AVAudioEffectNode: painless low level audio effects written in Swift
• Integrating 3rd-Party AI on Apple Platforms
• Building Intelligent Apps with Apple AI Models
• Let’s Create Chips UI With iOS 18 APIs
• So, Let’s create a Splash Screen | SwiftUI
• Discover 3 new features of Xcode 16
• SwiftData Previews: PreviewModifier in SwiftUI (iOS 18)
• Color Mixing in iOS 18
• Enhance App UI Animations with these 4 Modifiers
• AppState — эффективное управление состоянием и инъекция зависимостей для Swift 6
• LinkNavigator — простая и мощная навигация для SwiftUI
• AnimatedImage — анимация изображений в Swift и SwiftUI
Android
• Flappy Bird на Си для Android весом APK всего 92 Килобайта
• Заблуждение UseCase: что нужно знать Android-разработчикам
• Магия ссылок Системы быстрых платежей
• Создаем мерцающий текст в Jetpack Compose
• Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах
• Взаимодействие с клавиатурой в Compose: особенности и подводные камни
• Улучшаем автокомплит в смешанных Java-Kotlin проектах
• Приложение, идентичное натуральному: 7 способов прокачать свой pet-проект
• Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях
• Нативные библиотеки для Android
• Заработок на Open Source. Decompose. Будущее KMP. Аркадий Иванов
• Бессмертное приложение
• Укрощаем UDF state-based архитектуры. Реальные кейсы в больших приложениях
• Exploring Lifecycle-Aware Service and FirebaseMessagingService on Android
• Android 15: New Features for Android Developers
• Top 10 MVVM Mistakes We All Have Made
• How to build fully custom Jetpack Compose Bottom Sheets without using Material Compose
• Android: Catching NDK crashes
• RxJava to Kotlin Coroutines: The Ultimate Migration Guide
• View State Management & Coordination with Compose on Android
• Forecasting weather with Open-Meteo API using Jetpack Compose
• Clean Strings Handling in Android
• Design Server-Driven UI with Jetpack Compose and Firebase
• Android App Security Checklist for Developers
• How We Managed to Send Events Sequentially with Rate Limiting And Controlling Each Event?
• Complement your media editing pipeline with Jetpack Media3
• Android 15 Launch, a special guest spotlight, and more — Google Developer News September 2024
• The ONLY Correct Way to Load Initial Data In Your Android App?
• Save User Credentials With the Google Credential Manager — Android Studio Tutorial
• Overcoming Unsecurities in WebViews
• Beyond The Success Of Kotlin
• Jetpack Compose For Beginners — Crash Course 2024
• Accrescent — безопасный магазин приложений для Android
• Measure — мониторинг мобильных приложений.
Кроссплатформа
Нативный Swift на Android: установка, компиляция, запуск и тестирование
• Анализ InheritedWidget'а в Flutter
• Flutter Hot Reload: Что под капотом?
• Compute — волшебная пилюля?
• Ещё одна статья про макросы. Часть 2 + Часть 1
• React Native Splash Screen — поддержка разных тем
• Упрощение управления формами во Flutter с помощью пакета FForm
• Flutter Dev Podcast #47: CrossConf Awards
• How to Add a Splash Screen to a Compose Multiplatform App
• Garbage Collector in KMP
• Flutter vs Native: Why Flutter Wins for TV App Development
• Garbage Collector in KMP
• A Startup Guide to Ship Mobile App Faster Using Flutter
• Exploring Kotlin Multiplatform: A Visual Guide
• KMP (Kotlin Multiplatform) AndroidX Room setup and more
• Building A Custom Design System in Compose Multiplatform
• 10 Common Flutter Mistakes and How to Avoid Them
• Extracting Original Values from CValue in Kotlin Multiplatform: The Power of memScope
Разработка
• Основы BDUI для продуктовых дизайнеров. Шпаргалка
• Вашей компании нужны junior разработчики
• Как следить за состоянием мобильного приложения?
• Реализация push-уведомлений из web в мобильное приложение для новичков
• Что можно улучшить в приложении? Часть 3. Крадем как художники у Впрок
• Почему надо «проектировать дважды»
• Грейд в IT
• Как устроен Yandex Mobile Ads SDK
• Паттерны SDUI
• Почему мы продолжаем срывать сроки проектов
• Какая JVM лучшее всех? Java, JVM Architecture, GraalVM, HotSpot JVM
• Using feature flags in GraphQL
• Decoding Mobile Crashes: A Comparative Guide for Android and iOS
• Good software development habits
• You’ve only added two lines — why did that take two days!
• Should we decompose our monolith?
• How to Measure Progress in a Software Project
• Stop Designing Your Web Application for Millions of Users When You Don’t Even Have 100
• How Optimizations made Mario 64 SLOWER
• Securing API Servers Course
Аналитика, маркетинг и монетизация
• Photon Library за $5 возвращает старые «Фото» для iOS
• Nurture обучает детей важным жизненным навыкам с помощью интерактивных игр и развлечений
• SocialAI — ИИ-социальная сеть для одного человека
• Продвижение побочных проектов с помощью контент-ориентированной разработки
• Soundiiz — простой инструмент для передачи плейлистов между музыкальными сервисами
• Самые скачиваемые и зарабатывающие приложения в мире в августе 2024
• Как не заблудиться в четырех соснах: выбираем способ найти причинно-следственную связь без экспериментов
• How to Improve Retention: The Ultimate Guide for Product Managers and Leaders
AI, Устройства, IoT
• Как эволюционировало машинное зрение автономного транспорта. Доклад Яндекса
• Bluetooth-маяки, есть ли от них польза?
• Mistral запускает бесплатный уровень для разработчиков
• Новые очки Spectacles стали немного ближе к хорошему AR
• Slack превращается в хаб для ИИ-агентов
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.