В новом выпуске Dynamic Island и Live Activities, MVI и State Machine, сложные интерфейсы, подготовка к собеседованиям, маркетинг приложений в кризис, реверс инжиниринг кормушки для кошек и многое другое!
Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.
![](https://habrastorage.org/r/w780q1/webt/_b/a3/tf/_ba3tfmppgeqtv-ukln37auuewe.jpeg)
iOS
• Использование Apple Swift и SwiftUI в iOS 16
• Начало работы с Dynamic Island и Live Activities в iOS 16.1
• Введение в Swift Runtime
• Unstoppable iOS App
• Видео NSSpain X
• Apple запустила серию консультаций для разработчиков Ask Apple
• Конкурс Telegram для iOS-разработчиков
•
What the measurement type is and why you should be using it
•
Platform specific code in Swift Packages
•
Cool Swift Features That Are Rarely Used
•
HMS ML Kit: Real-Time Translation (iOS — Swift)
•
Opacity Animation in SwiftUI
•
Path Animation in SwiftUI
•
6 YouTube channels that every iOS developer should subscribe
•
Setting Up Live Activities for the Dynamic Island in SwiftUI
•
Expandable and dynamic sized Table Header View and Table Footer View
•
Apple introduces Ask Apple for developers
•
How to Find All Fully Visible Cells in Table and Collection View
•
The Layout Protocol in iOS 16
•
How To Create a Button With Loading Indicator in iOS
•
Is Swift Combine Dead?
•
Creating a Login Screen in SwiftUI
•
5 iOS Libraries to Make Your App Special
•
A Self-Avoiding Walker in SwiftUI
•
A Disaster Named NSHashTable
•
How to use NotificationCenter in SwiftUI with example
•
Alternate App Icon Configuration in Xcode
•
Protocol Oriented Programming in Swift
•
Fusion: простое внедрение зависимостей для Swift
•
Inject: Hot reloading для UIKit
Android
• MVI и State Machine — объединяем концепции. Визуализация и анализ диаграммы состояний в Android и KMM проектах
• Android Debug Bridge для тестировщика без SMS и регистрации
• Найдите 10 отличий. Тестируем сравнением снимков экрана с образцом
• Принимаем TRON USDT на Java
• Deep Dive Into Deep Link. Часть 3. Оболочка ОС, приложение
•
Application-as-a-Function Thinking
•
Collapsing toolbar with parallax effect and curved motion in Jetpack Compose
•
Compose Tooling
•
Jetpack Compose Side Effects – With Examples
•
Measuring Jank in Android Apps
•
Transforming Kotlin Collections – Functions with Examples
•
State hoisting vs Defer reads
•
Best Practices in Kotlin
•
Jetpack Compose for Wear OS — Building Weather App
•
Bringing passkeys to Android & Chrome
•
Jetpack Compose Swipe To Refresh
•
Dynamic Environment Switching on Android
•
Android BottomSheetDialogFragment with Callbacks to parent Fragment and transparent layer
•
Jetpack Microbenchmark: Code Performance Testing
•
The Ultimate Guide to Android Subscription Testing
•
Let’s investigate a Gradle IntelliJ memory leak!
•
Long-running tasks in parallel with Kotlin Flow
•
Compose RatingBar: панель оценок
•
Text Flow: обтекание текста в Jetpack Compose,
•
Expandable Compose Calendar: календарь Jetpack Compose
Кроссплатформа
• Создаем сложные интерфейсы и спецэффекты на базе Qt. Часть I
• Kotlin Multiplatform Mobile теперь в бета-версии
• Google выпустил превью библиотек Jetpack Multiplatform
• Наводим мосты между Flutter и нативными библиотеками
• Unity WebGL + React
• Deeplinks и Flutter
•
Pass Data Between Screens-Flutter
•
Monorepo for iOS and Android Project
•
Flutter: The power of DI and Injectable
•
Build Collision-Based Game Using Flame in Flutter
•
How to draw in Flutter — The Complete Crash Course
•
7 Most-Starred React Native Libraries You Should Know
•
7 Flutter Open Source Projects to Become a Better Flutter Developer
•
NFC with Flutter
•
MultiThreading with Flutter Isolate
Разработка
• Памятка для UX-дизайнера на все случаи жизни: как взяться за задачу и довести ее до конца
• Готовимся к собеседованиям в западных компаниях — курсы и обучающие материалы
• Как создать игру в 2022. Моя история создания игр
• 6 вещей, о которых обычно забывают UI/UX-дизайнеры
• Allure TestOps: «Нестандартный» сценарий использования
• Podlodka #288: Nim, часть 2
• Публичное собеседование по System design
• Россия создаст свой GitHub
• Советы Junior-разработчикам
• Fleet вышел в Public Preview
• $100 млн в Серии B: Homa — Аналитика для игр
•
Designing a finance tracker app
•
6 things UI/UX designers forget to design
•
The Legendary and Highest-Paid Software Engineer From Google
•
What It’s Like to Be a Mobile Team in a Desktop-First Company
•
How I made 70k reputation on StackOverflow while helping people understand Kotlin
•
The End of Programming
•
I Coded a Tinder Bot to Automate My Dating Life. Here’s What Happened
•
I Worked with a Newbie Programmer Who Pretended like a Senior
•
Toyota Suffered a Data Breach by Accidentally Exposing A Secret Key Publicly On GitHub
Аналитика, маркетинг и монетизация
• Работа с ASO: как тестировать тренды и не получить иск
• Вышел AppsFlyer Performance Index 15 — Маркетинг в кризис
• RuStore представил обновления для разработчиков
• VK продлила программу поддержки разработчиков приложений в RuStore
• SubHub Podcast #16: Игорь Кузнецов (vivid money)
• 87% подростков в США владеют iPhone
• Новые возможности Play Store для отображения приложений
• Казуальные игры AirConsole появятся в автомобилях BMW
• Количество установок BeReal превысило 50 млн
• Загрузки приложений для знакомств резко выросли после нескольких лет стагнации
• Самые зарабатывающие приложения США в сентябре
AI, Устройства, IoT
• Realtime-матчинг: находим матчи за считанные минуты вместо 24 часов
• Пробую российский софт для умного дома. Он правда работает?
• Реверс инжиниринг кормушки для кошек для повышения производительности разработки
• Lavritech V7.1 Lite: программируем ESP32 и Wirenboard модули
• Как купить девайс для умного дома и попасть в команду разработчиков (часть 3, окончательная)
• ИИ Yummy создает рецепты с едой
• AirBell — велосипедный звонок с AirTag
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.
![](https://habrastorage.org/webt/_b/a3/tf/_ba3tfmppgeqtv-ukln37auuewe.jpeg)
![](https://habrastorage.org/getpro/habr/post_images/f19/30a/c49/f1930ac4945596eb9707bc7a01bc5bdc.png)
• Использование Apple Swift и SwiftUI в iOS 16
• Начало работы с Dynamic Island и Live Activities в iOS 16.1
• Введение в Swift Runtime
• Unstoppable iOS App
• Видео NSSpain X
• Apple запустила серию консультаций для разработчиков Ask Apple
• Конкурс Telegram для iOS-разработчиков
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
•
![](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
![](https://habrastorage.org/getpro/habr/post_images/e1a/3cf/2a8/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png)
• MVI и State Machine — объединяем концепции. Визуализация и анализ диаграммы состояний в Android и KMM проектах
• Android Debug Bridge для тестировщика без SMS и регистрации
• Найдите 10 отличий. Тестируем сравнением снимков экрана с образцом
• Принимаем TRON USDT на Java
• Deep Dive Into Deep Link. Часть 3. Оболочка ОС, приложение
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
•
![](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
•
![](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
![](https://habrastorage.org/webt/ma/lx/8h/malx8hbgozt6lee8rmxmg96_s6a.png)
• Создаем сложные интерфейсы и спецэффекты на базе Qt. Часть I
• Kotlin Multiplatform Mobile теперь в бета-версии
• Google выпустил превью библиотек Jetpack Multiplatform
• Наводим мосты между Flutter и нативными библиотеками
• Unity WebGL + React
• Deeplinks и Flutter
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
![](https://habrastorage.org/getpro/habr/post_images/708/1c6/34e/7081c634ec176ab6b953d9d19e82a09a.png)
• Памятка для UX-дизайнера на все случаи жизни: как взяться за задачу и довести ее до конца
• Готовимся к собеседованиям в западных компаниях — курсы и обучающие материалы
• Как создать игру в 2022. Моя история создания игр
• 6 вещей, о которых обычно забывают UI/UX-дизайнеры
• Allure TestOps: «Нестандартный» сценарий использования
• Podlodka #288: Nim, часть 2
• Публичное собеседование по System design
• Россия создаст свой GitHub
• Советы Junior-разработчикам
• Fleet вышел в Public Preview
• $100 млн в Серии B: Homa — Аналитика для игр
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
![](https://habrastorage.org/getpro/habr/post_images/509/dc9/bde/509dc9bde69347ecbe0c21ff2973d7e7.jpg)
• Работа с ASO: как тестировать тренды и не получить иск
• Вышел AppsFlyer Performance Index 15 — Маркетинг в кризис
• RuStore представил обновления для разработчиков
• VK продлила программу поддержки разработчиков приложений в RuStore
• SubHub Podcast #16: Игорь Кузнецов (vivid money)
• 87% подростков в США владеют iPhone
• Новые возможности Play Store для отображения приложений
• Казуальные игры AirConsole появятся в автомобилях BMW
• Количество установок BeReal превысило 50 млн
• Загрузки приложений для знакомств резко выросли после нескольких лет стагнации
• Самые зарабатывающие приложения США в сентябре
![](https://habrastorage.org/getpro/habr/post_images/853/812/9f5/8538129f5e7b404a720121cb9c3814db.jpg)
• Realtime-матчинг: находим матчи за считанные минуты вместо 24 часов
• Пробую российский софт для умного дома. Он правда работает?
• Реверс инжиниринг кормушки для кошек для повышения производительности разработки
• Lavritech V7.1 Lite: программируем ESP32 и Wirenboard модули
• Как купить девайс для умного дома и попасть в команду разработчиков (часть 3, окончательная)
• ИИ Yummy создает рецепты с едой
• AirBell — велосипедный звонок с AirTag
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.