В нашей новой еженедельной подборке поиск применения App Clip и небезопасности Синглтона, Инструменты Android-разработчика и победа над техдолгом в RuStore, архитектура кроссплатформенного многомодульного приложения, миллионы за считыватели QR-кодов, как мог бы выглядеть Windows Phone в 2024 и многое другое. Подключайтесь!
Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Как мы искали применение App Clip… и нашли?
• Почему паттерн Синглтон небезопасен в iOS-разработке
• Hero анимация в SwiftUI с помощью NavigationTransition
• Как я участвовал в iOS Widget Challenge и что из этого вышло
• Защита iOS-приложений от реверс-инженеринга
• Использование TextRenderer для создания выделенного текста
• Apple нарушает закон ЕС о цифровых рынках
• Apple открывает Translate API
• Xcode 16 потребует 16 Гб для работы Predictive Code Completion
• А так ли нужны акторы в Swift Concurrency?
• Swift 5.9: разбираем интероп и «женим» с С++
• Реактивный Swift Concurrency
• Exploring Translation Framework: Language Availability
• What’s new in SwiftUI for iOS 18
• Extend your Xcode Cloud workflows
• Is it just me or I still find SwiftUI lacking in major areas as my app scales up?
• Running a package from Xcode Build phase
• Using multi-step animations in SwiftUI
• Navigating Accessibility: A SwiftUI vs. UIKit Comparison
• How to quickly run your iOS app in a different language
• iOS 18 TextField Selection API — SwiftUI
• SwiftUI Custom Time Picker Like Apple Timer App
• iOS 18 TextField Selection API — SwiftUI
• Xcode 16 Navigation Shortcuts in 12 Minutes
• InjectionIII — Hot Reloading для Swift
Android
• Инструменты Android-разработчика
• Как мы победили техдолг в RuStore
• Почему умение дебажить один из самых важных навыков для разработчика
• Подробное руководство по Logcat в Android Studio с примерами
• Топ-10 вопросов о корутинах 2024
• Современные способы запуска фоновой работы в Android
• Как мы создали свой инструмент для доставки сборок Android-приложений
• Low performer в Android 2024
• Динамические свайпы с помощью ItemTouchHelper
• Как устроены аннотации в Kotlin. Часть 1
• Android: form builder на старых добрых View
• Эволюция Android тестов с Marathon Test Runner
• What Are Dynamic App Shortcuts?
• Seamless Screenshot Testing for Compose with Screenshotbot
• Using Lists in Compose Previews
• The Starter kit for Android Platform Engineering
• Automatic (almost) resource generation from Figma for Compose
• How Baseline Profile Improve Skeelo Android App Performance
• A robust MVI implementation with Jetpack Compose
• How to Use ViewModel with Jetpack Compose
• Unleashing the Debugging Magic: Cracking Android Native Shared Libraries
• 4 Strategies to Secure API keys in Android Applications
• Now in Android: 108 — Android 15 Beta 3, Google AI Studio, Gemini in Android Studio, and more
• Compose UI for… a Light Switch
• Write your own Kotlin lint checks
• Tap it! Shake it! Fling it! Sheep it! — The Compose Gesture Animations Dance
• Animations with Jetpack Compose
• 7 Features in Kotlin’s Standard Library that You Might Have Overlooked
• 7 Kotlin Stdlib Features You Might Have Overlooked
• Scroll Block — трекер использования социальных сетей для Android
• iCore — модульные компоненты для быстрого создания Android-приложений
Кроссплатформа
• Архитектура кроссплатформенного многомодульного приложения
• Создаем Flutter-приложение для оплаты через СБП без натива
• What can I do with “Extension Types” in Dart?
• Measure and optimize your Flutter app size
• Flutter: Detecting Cyclic Dependencies in a Monorepo
• Kotlin MultiPlatform vs Flutter
• Improve Your Dart Code with Dependency Injection: Understanding Loose and Tight Coupling
• Advanced Theming Techniques in Flutter: Effortless Color Schemes
• How to Share Resources in Compose Multiplatform
• Expect/Actual in Kotlin Multiplatform
• Kotlin Multiplatform Alchemy: Making Gold out of Your Swift Interop
• PeopleInSpace — люди в космосе Kotlin Multiplatform
Разработка
• Как пирамида тестирования уплывает на сторону разработки
• Подключаем GigaCode к мобильной разработке
• Как мог бы выглядеть Windows Phone в 2024
• Все софт скиллы — про преодоление страха и силу воли
• Что дальше после разработчика в Google
• Роль дизайнера в проекте
• From the 80’s to 2024 — how CI tests were invented and optimized
• Programmers Should Never Trust Anyone, Not Even Themselves
• Our Experience with CodeRabbit: A Game-Changer in Automated Code Review
• Software Architecture is Hard
• Getting 100% code coverage doesn’t eliminate bugs
• Aptabase — открытая аналитика для приложений
Аналитика, маркетинг и монетизация
• Directo упрощает прямое бронирование жилья с помощью расширения Chrome
• Маркетологи в мобайле: Ольга Бигбашева (Rendez-Vous)
• RuStore станет обязательным
• 6 шагов успешного продвижения e-commerce приложения — кейс Технопарк и Rocket10
• Google приостанавливает распространение игр на реальные деньги в Play Store
• Владельцы iPhone платят миллионы за считыватели QR-кодов
• Как я развиваю свое приложение для хранения прочитанных книг?
AI, Устройства, IoT
• Как быстро растут нейросети: прогресс Stable Diffusion за все время
• KC868-M16v2: мечта ардуинщика (16 токовых каналов, 3 канала напряжения, SD, LAN, POE, дисплей, RTC и SH3x)
• Сборка и отладка прошивки IoT-модуля: Python, make, апельсины и чёрная магия
• LLM Compiler оптимизирует код и компиляторы
• Уязвимость в Rabbit R1 позволяет третьим лицам просматривать ответы ИИ
• 8 микрокомпьютеров для работы с искусственным интеллектом
• Google анонсирует новые Pixel 13 августа
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Как мы искали применение App Clip… и нашли?
• Почему паттерн Синглтон небезопасен в iOS-разработке
• Hero анимация в SwiftUI с помощью NavigationTransition
• Как я участвовал в iOS Widget Challenge и что из этого вышло
• Защита iOS-приложений от реверс-инженеринга
• Использование TextRenderer для создания выделенного текста
• Apple нарушает закон ЕС о цифровых рынках
• Apple открывает Translate API
• Xcode 16 потребует 16 Гб для работы Predictive Code Completion
• А так ли нужны акторы в Swift Concurrency?
• Swift 5.9: разбираем интероп и «женим» с С++
• Реактивный Swift Concurrency
• Exploring Translation Framework: Language Availability
• What’s new in SwiftUI for iOS 18
• Extend your Xcode Cloud workflows
• Is it just me or I still find SwiftUI lacking in major areas as my app scales up?
• Running a package from Xcode Build phase
• Using multi-step animations in SwiftUI
• Navigating Accessibility: A SwiftUI vs. UIKit Comparison
• How to quickly run your iOS app in a different language
• iOS 18 TextField Selection API — SwiftUI
• SwiftUI Custom Time Picker Like Apple Timer App
• iOS 18 TextField Selection API — SwiftUI
• Xcode 16 Navigation Shortcuts in 12 Minutes
• InjectionIII — Hot Reloading для Swift
Android
• Инструменты Android-разработчика
• Как мы победили техдолг в RuStore
• Почему умение дебажить один из самых важных навыков для разработчика
• Подробное руководство по Logcat в Android Studio с примерами
• Топ-10 вопросов о корутинах 2024
• Современные способы запуска фоновой работы в Android
• Как мы создали свой инструмент для доставки сборок Android-приложений
• Low performer в Android 2024
• Динамические свайпы с помощью ItemTouchHelper
• Как устроены аннотации в Kotlin. Часть 1
• Android: form builder на старых добрых View
• Эволюция Android тестов с Marathon Test Runner
• What Are Dynamic App Shortcuts?
• Seamless Screenshot Testing for Compose with Screenshotbot
• Using Lists in Compose Previews
• The Starter kit for Android Platform Engineering
• Automatic (almost) resource generation from Figma for Compose
• How Baseline Profile Improve Skeelo Android App Performance
• A robust MVI implementation with Jetpack Compose
• How to Use ViewModel with Jetpack Compose
• Unleashing the Debugging Magic: Cracking Android Native Shared Libraries
• 4 Strategies to Secure API keys in Android Applications
• Now in Android: 108 — Android 15 Beta 3, Google AI Studio, Gemini in Android Studio, and more
• Compose UI for… a Light Switch
• Write your own Kotlin lint checks
• Tap it! Shake it! Fling it! Sheep it! — The Compose Gesture Animations Dance
• Animations with Jetpack Compose
• 7 Features in Kotlin’s Standard Library that You Might Have Overlooked
• 7 Kotlin Stdlib Features You Might Have Overlooked
• Scroll Block — трекер использования социальных сетей для Android
• iCore — модульные компоненты для быстрого создания Android-приложений
Кроссплатформа
• Архитектура кроссплатформенного многомодульного приложения
• Создаем Flutter-приложение для оплаты через СБП без натива
• What can I do with “Extension Types” in Dart?
• Measure and optimize your Flutter app size
• Flutter: Detecting Cyclic Dependencies in a Monorepo
• Kotlin MultiPlatform vs Flutter
• Improve Your Dart Code with Dependency Injection: Understanding Loose and Tight Coupling
• Advanced Theming Techniques in Flutter: Effortless Color Schemes
• How to Share Resources in Compose Multiplatform
• Expect/Actual in Kotlin Multiplatform
• Kotlin Multiplatform Alchemy: Making Gold out of Your Swift Interop
• PeopleInSpace — люди в космосе Kotlin Multiplatform
Разработка
• Как пирамида тестирования уплывает на сторону разработки
• Подключаем GigaCode к мобильной разработке
• Как мог бы выглядеть Windows Phone в 2024
• Все софт скиллы — про преодоление страха и силу воли
• Что дальше после разработчика в Google
• Роль дизайнера в проекте
• From the 80’s to 2024 — how CI tests were invented and optimized
• Programmers Should Never Trust Anyone, Not Even Themselves
• Our Experience with CodeRabbit: A Game-Changer in Automated Code Review
• Software Architecture is Hard
• Getting 100% code coverage doesn’t eliminate bugs
• Aptabase — открытая аналитика для приложений
Аналитика, маркетинг и монетизация
• Directo упрощает прямое бронирование жилья с помощью расширения Chrome
• Маркетологи в мобайле: Ольга Бигбашева (Rendez-Vous)
• RuStore станет обязательным
• 6 шагов успешного продвижения e-commerce приложения — кейс Технопарк и Rocket10
• Google приостанавливает распространение игр на реальные деньги в Play Store
• Владельцы iPhone платят миллионы за считыватели QR-кодов
• Как я развиваю свое приложение для хранения прочитанных книг?
AI, Устройства, IoT
• Как быстро растут нейросети: прогресс Stable Diffusion за все время
• KC868-M16v2: мечта ардуинщика (16 токовых каналов, 3 канала напряжения, SD, LAN, POE, дисплей, RTC и SH3x)
• Сборка и отладка прошивки IoT-модуля: Python, make, апельсины и чёрная магия
• LLM Compiler оптимизирует код и компиляторы
• Уязвимость в Rabbit R1 позволяет третьим лицам просматривать ответы ИИ
• 8 микрокомпьютеров для работы с искусственным интеллектом
• Google анонсирует новые Pixel 13 августа
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.