В нашем новом дайджесте анимации и расстановка приоритетов, комфортные WebView и удобные бенчмарки, все откладывающая победа PWA, рабочие процессы, шаринг еды, снижение доходов приложений и многое другое!
Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.
![](https://habrastorage.org/webt/qa/qo/jc/qaqojcy09jwzkhvr_s0uta5ceyu.jpeg)
iOS
• Логи в iOS, эпизод 2: os_signpost
• Как мы улучшали функциональность онлайн-кинотеатра на tvOS
• Создание анимаций для навигации в iOS
• Zillow использует Look Around из Apple Maps для выбора жилья
• Планирование приложений — руководства Apple
•
What are Sendable and @Sendable closures in Swift?
•
Mastering Dynamic Island in SwiftUI
•
Discover the MVVM Architecture in less than 90 seconds
•
Drag & Drop in SwiftUI
•
PencilKit: Building a complete drawing app with a few lines of code
•
How to Build a Voice Assistant App for iOS?
•
Use a Base Class or a Protocol In Swift?
•
iOS Realtime Video Streaming App Tutorial
•
Show progress of the task using SwiftUI ProgressView
•
Accordion in SwiftUI – DisclosureGroup Explorations
•
The Problems with Singletons and Why You Should Use DI Instead
•
State Restoration in SwiftUI
•
How iOS Apps Adapt to the various iPhone 14 Screen Sizes
•
Infinite Marquee Animation with SwiftUI
•
Scale Animation With Anchor in SwiftUI
•
Create Multi-Steps View in SwiftUI
•
The Problems with Singletons and Why You Should Use DI Instead
•
ConfettiSwiftUI: конфетти на SwiftUI
•
NetNewsWire: открытый RSS-ридер
Android
• Расстановка приоритетов в стабильности приложений — работа над производительностью в Lyft
• Неочевидное про Fragment API. Часть 3. Навигация
• DI в Android в 2022
• Добавляем комфорта в работу с WebView
• Разработка лаунчера для Android: интервью с разработчиком Яндекс.Лончер
• Lensa — разработка оффлайн фоторедактора на Android
• Jetpack Compose Layouts
• Удобный бенчмаркинг с Jetpack Benchmark Library. Макро- и микробенчмарки
• Deep Dive Into Deep Link. Часть 2. Проблемы: устройство, версия ОС
•
Collect useful logs in production using Crashlytics, File logging and Timber
•
Adaptive UI with Jetpack Compose
•
Building A Jetpack Compose Window With AbstractComposeView
•
Jetpack Compose Popup — Master It!
•
Build a Custom Design System Using Jetpack Compose
•
Android’s Unlikely Success
•
Performance in Jetpack Compose
•
Jetpack Compose Clean Navigation
•
Exploring “select” expression of Kotlin coroutines
•
Understand Kotlin Reified and Type Erasure
•
Loading Shimmer in Compose
•
Android Dev Summit ‘22: Coming to you, online and around the world!
•
Jetpack Glance AppWidget — Developing Location Checker App widget
•
How to secure your Android apps
•
A full-fledged guide about GraphQL for Android
•
Jetpack compose: Cool Button Click Effects
•
Whetstone: DI фреймворк для Android
Кроссплатформа
• Почему PWA еще не победили нативные приложения?
• Преобразование текста в аудио в Unity-проектах (используя Google Cloud)
• Kotlin Multiplatform: как превратить нативное приложение в кроссплатформенное
•
The Art of Multiplatform Programming: The Secret to Maximizing Shared Code
•
Put Flutter to Work
•
Flutter: FCM — How to Navigate to a Particular Screen After Tapping on Push Notification
•
Zero To Hero in KMM with Compose and SwiftUi
•
React Native Infinite Scrolling with React Query
•
Google Flutter versus Microsoft .NET MAUI
•
7 Useful Flutter Packages You Should Use in Your Next Project
•
Responsive Flutter apps will no longer be a nightmare: Let’s simplify the process
•
Web socket in Flutter
•
MVI implementation in Kotlin Multiplatform using the Reaktive library
Разработка
• Прогулка по изнанке «Спортмастера»: ножками и в приложениях
• Как мы приложение факультета писали
• Серебро и бронза: как мобильная разработка ПСБ попала в топ-3 отрасли
• Рабочий процесс в команде UX писателей: от создания команды до влияния на ключевые метрики
• Мы создали два курса по мобильной разработке, и вот чем они интересны
• Такси для незрячего
• $2 млн: Klikit — SaaS-платформа для ресторанов
• $87.4 млн в Серии Д: onX — карты для внедорожных путешествий
• $80 млн в Серии Д: Tally — ИИ для выплат по кредитным картам
• Работа в мобильной разработке 2022 — опрос RayWenderlich.com
• Задачи с собеседований: Leetcode — Сумма двух
• Каждый шестой программист хулиганил в школе
• Вы не самозванец — все разработчики притворяются
• Спрос на обучающие курсы для взрослых упал на 10–30%
•
$150,000 Amazon Engineer vs. $300,000 Google Engineer
•
Facts about State Machines
•
A Product Engineering Skill That No One Talks About
•
The Coders Programming Themselves Out of a Job
•
The Anti-Pattern that Sees the Disempowerment of Engineering Organisations Everywhere
•
Radio buttons, checkboxes, toggle switches, and dropdown lists: design tips for using selection controls
•
Charts Anatomy by Apple
•
Sharing: шаринг файлов для iOS и Android
•
Stark: решение проблем с доступностью
Аналитика, маркетинг и монетизация
• 163 факта из статистики рынка мобильных игр 2021-2022 года
• Fizz: социальная сеть для колледжей
• Recelery запустил шаринг еды
• Duolingo купила студию анимации
• Canva становится одним из самых зарабатывающих приложений в США
• Telegram вдвое снизил стоимость подписки в Индии
• Доходы рынка приложений в 3 квартале снизились на 5%
AI, Устройства, IoT
• Как купить девайс для умного дома и попасть в команду разработчиков + Часть 2
• Сжатие изображений при помощи модели Stable Diffusion
• Lavritech V7.1 Lite: открываем ящик Пандоры
• Тенденции технологии IoT в 2023 году
• Horizon Worlds страдает от сбоев и даже разработчики мало используют его
• Опубликован единый стандарт Matter 1.0 для IoT-устройств
• Amazon, Apple, Microsoft, Meta и Google улучшат распознавание речи для людей с ограниченными возможностями
• Google Japan показал клавиатуру в виде палки
• Google представил смартфоны Pixel 7 и Pixel 7 Pro на собственном чипе Tensor G2 и первые часы Pixel
•
Data Science is Dying?
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.
![](https://habrastorage.org/webt/qa/qo/jc/qaqojcy09jwzkhvr_s0uta5ceyu.jpeg)
![](https://habrastorage.org/getpro/habr/post_images/f19/30a/c49/f1930ac4945596eb9707bc7a01bc5bdc.png)
• Логи в iOS, эпизод 2: os_signpost
• Как мы улучшали функциональность онлайн-кинотеатра на tvOS
• Создание анимаций для навигации в iOS
• Zillow использует Look Around из Apple Maps для выбора жилья
• Планирование приложений — руководства Apple
•
![](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)
• Расстановка приоритетов в стабильности приложений — работа над производительностью в Lyft
• Неочевидное про Fragment API. Часть 3. Навигация
• DI в Android в 2022
• Добавляем комфорта в работу с WebView
• Разработка лаунчера для Android: интервью с разработчиком Яндекс.Лончер
• Lensa — разработка оффлайн фоторедактора на Android
• Jetpack Compose Layouts
• Удобный бенчмаркинг с Jetpack Benchmark Library. Макро- и микробенчмарки
• Deep Dive Into Deep Link. Часть 2. Проблемы: устройство, версия ОС
•
![](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/webt/ma/lx/8h/malx8hbgozt6lee8rmxmg96_s6a.png)
• Почему PWA еще не победили нативные приложения?
• Преобразование текста в аудио в Unity-проектах (используя Google Cloud)
• Kotlin Multiplatform: как превратить нативное приложение в кроссплатформенное
•
![](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/getpro/habr/post_images/708/1c6/34e/7081c634ec176ab6b953d9d19e82a09a.png)
• Прогулка по изнанке «Спортмастера»: ножками и в приложениях
• Как мы приложение факультета писали
• Серебро и бронза: как мобильная разработка ПСБ попала в топ-3 отрасли
• Рабочий процесс в команде UX писателей: от создания команды до влияния на ключевые метрики
• Мы создали два курса по мобильной разработке, и вот чем они интересны
• Такси для незрячего
• $2 млн: Klikit — SaaS-платформа для ресторанов
• $87.4 млн в Серии Д: onX — карты для внедорожных путешествий
• $80 млн в Серии Д: Tally — ИИ для выплат по кредитным картам
• Работа в мобильной разработке 2022 — опрос RayWenderlich.com
• Задачи с собеседований: Leetcode — Сумма двух
• Каждый шестой программист хулиганил в школе
• Вы не самозванец — все разработчики притворяются
• Спрос на обучающие курсы для взрослых упал на 10–30%
•
![](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/509/dc9/bde/509dc9bde69347ecbe0c21ff2973d7e7.jpg)
• 163 факта из статистики рынка мобильных игр 2021-2022 года
• Fizz: социальная сеть для колледжей
• Recelery запустил шаринг еды
• Duolingo купила студию анимации
• Canva становится одним из самых зарабатывающих приложений в США
• Telegram вдвое снизил стоимость подписки в Индии
• Доходы рынка приложений в 3 квартале снизились на 5%
![](https://habrastorage.org/getpro/habr/post_images/853/812/9f5/8538129f5e7b404a720121cb9c3814db.jpg)
• Как купить девайс для умного дома и попасть в команду разработчиков + Часть 2
• Сжатие изображений при помощи модели Stable Diffusion
• Lavritech V7.1 Lite: открываем ящик Пандоры
• Тенденции технологии IoT в 2023 году
• Horizon Worlds страдает от сбоев и даже разработчики мало используют его
• Опубликован единый стандарт Matter 1.0 для IoT-устройств
• Amazon, Apple, Microsoft, Meta и Google улучшат распознавание речи для людей с ограниченными возможностями
• Google Japan показал клавиатуру в виде палки
• Google представил смартфоны Pixel 7 и Pixel 7 Pro на собственном чипе Tensor G2 и первые часы Pixel
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.