В нашем новом дайджесте приключения белорусских разработчиков в App Store, один iOS-техрадар и несколько трендов Android-разработки 2022, игра мечты, автоматическая модерация сообщений и многое другое!
![](https://habrastorage.org/r/w1560/webt/fy/mq/gg/fymqgginqjb1-s38tf7ujqj6g98.png)
У нас есть Telegram-канал Mobile Insights, где подборки статей и новостей выходят каждый день, а так же AppFiles с библиотеками и самыми интересными статьями о мобильной разработке!
iOS
• Apple забанила и разбанила беларусских разработчиков
• Чему мы научились, используя KMM для iOS
• Apple разрешила распространение приложений по прямой ссылке
• 4,5 года из жизни iOS-команды в пяти историях и одном техрадаре
• Эволюция UI-тестов в iOS-приложении
• В iOS 15.4 появились веб-уведомления и WebXR API
• Память в Swift (куча, стек, ARC)
• Swift TableManager
• GraphQL в мобильной разработке. Пишем клиент для iOS
• iOS Community Meetup: видео и материалы встречи
•
Как отправлять изображения в полезной нагрузке уведомлений — Firebase
•
Исследуем время сборки Xcode с пользовательскими SF символами
•
5 простых вещей, которые я делаю, чтобы стать iOS-инженером
•
Повысьте скорость развертывания iOS-приложений с помощью Feature Flag библиотеки
•
Как создать игру Wordle с помощью SwiftUI
•
Сокращаем время запуска iOS-приложения
•
Анимация плавающих сердечек в SwiftUI
•
Справочник разработчика iOS по Code Review
•
Быстрые клавиши Xcode для работы только с клавиатурой
•
Как использовать Feature Flag в приложении iOS [с примерами кода]
•
Основные вопросы и ответы по основам iOS с собеседования
•
Старого пса не научить SwiftUI и Xcode
•
Интеграция Apollo на iOS
•
Как порядок файлов сокращает время запуска приложения
•
ReadabilityKit: превью для страниц
•
Siren: уведомление о выходе новой версии приложения
Android
• Android Broadcast: тренды Android-разработки 2022
• Авторефакторинг и View Binding
• ExoPlayer для IPTV приложений. Быстрый старт проигрывания
• Визуальная защита контента Android приложения
• Реактивное программирование или сопрограммы: между молотом и наковальней?
•
Ускорение рисования Мандельброта на Android в Jetpack Compose
•
Динамическое изменение Backend среды в рантайме
•
Беспроводная ADB отладка с Android Studio Bumblebee
•
Каждый Composable заслуживает ViewModel
•
Kotlin Multiplatform Mobile и как сделать общую ViewModel: предложение по архитектуре
•
почти) реальными примерами на Java ( Принципы SOLID с
•
Непрерывная доставка мультиплатформенной библиотеки Kotlin
•
Отслеживание сообщений основного потока
•
Преобразование файлов локализации iOS для Android
•
Полное руководство по LiveData и Flow: почему, где, когда и что именно
•
Я занялся Android-разработкой в 40 лет
•
Высокая производительность с идиоматическим Kotlin
•
Приложение с одной Activity на Jetpack Compose
•
Все о Proto DataStore
•
Accompanist: необходимое для Jetpack Compose
•
SpotiFlyer: загрузчик музыки на KMM
•
Lucilla: полнотекстовый поиск в Kotlin
Разработка
• Игра мечты, которую я делаю вместе с женой
• Soviet Project — Хоррор игра о недалеком прошлом
• Unity «Best» Practices
• Flutter vs Native: почему мы переходим с первого на второй
• Как проходит интервью мобильных разработчиков в Тинькофф
• GitHub дает «Спонсорам» закрытые репозитории
• Не совсем очевидные тренды развития рынка приложений, как к ним подготовиться мобильному разработчику?
• QA-тренды в 2022 году
• Каково быть тестировщиком: 4 истории о боли и радости
• Podlodka #253: Platform as a Service (PaaS)
• Вышел Flutter 2.10 с поддержкой Windows
• Flutter Dev Podcast #33: Roadmap 2022
• Дизайн приложений: примеры для вдохновения #70
•
Уроки и статистика после шести лет работы инди-разработчиком
•
Как решить, когда пора прекратить проектирование и начать программировать
•
Как справляться с техническим долгом в масштабе суперприложения
•
Backend driven UI в Flo Health
•
Состояние разработки приложений 2021
•
Почему вы должны использовать шрифт разработчика
•
Шаблон проектирования MVC+S во Flutter
•
5 причин, по которым большинство продвинутых курсов для разработчиков не работают
•
Измените способ обучения и роста в качестве программиста
•
7 интересных расширений VS Code, выпущенных в январе 2022
Аналитика, маркетинг и монетизация
• Предсказуемый успех. Почему мобильным играм нужен маркетинг в софтлонч и как его использовать с наибольшей выгодой
• IronSource запускает App Analytics
• Комитет Сената США одобрил Закон об открытых рынках приложений
• $30 млн: Flip — приложение для «полевых» сотрудников
• $71 млн в Серии C: Jellyfish — разработка в бизнес-контексте
• Quan: выгорание сотрудников
• The New York Times покупает Wordle
• Маскот в приложении: кто это и зачем он нужен
AI, Устройства, IoT
• Kincony KC868-A4: ультимативный гайд. Часть 2. Программирование компонентов
• ИИ AlphaCode от DeepMind решает задачи как средний программист
• Microsoft отменила HoloLens 3 и не знает, что делать с AR
• 35 реальных рисков, убивающих data- и machine learning проекты
• Автоматическая многоязычная модерация сообщений для миллионов пользователей
• Подборка багов в IoT: теперь вся наша жизнь может быть ошибкой
• Как стать дата сайентистом не потратив ни рубля
• Pinterest добавляет примерку мебели в дополненной реальности
•
Руководство по самостоятельному изучению основ науки о данных за 20 недель
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
![](https://habrastorage.org/webt/fy/mq/gg/fymqgginqjb1-s38tf7ujqj6g98.png)
У нас есть Telegram-канал Mobile Insights, где подборки статей и новостей выходят каждый день, а так же AppFiles с библиотеками и самыми интересными статьями о мобильной разработке!
![](https://habrastorage.org/getpro/habr/post_images/f19/30a/c49/f1930ac4945596eb9707bc7a01bc5bdc.png)
• Apple забанила и разбанила беларусских разработчиков
• Чему мы научились, используя KMM для iOS
• Apple разрешила распространение приложений по прямой ссылке
• 4,5 года из жизни iOS-команды в пяти историях и одном техрадаре
• Эволюция UI-тестов в iOS-приложении
• В iOS 15.4 появились веб-уведомления и WebXR API
• Память в Swift (куча, стек, ARC)
• Swift TableManager
• GraphQL в мобильной разработке. Пишем клиент для iOS
• iOS Community Meetup: видео и материалы встречи
•
![](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)
• Android Broadcast: тренды Android-разработки 2022
• Авторефакторинг и View Binding
• ExoPlayer для IPTV приложений. Быстрый старт проигрывания
• Визуальная защита контента Android приложения
• Реактивное программирование или сопрограммы: между молотом и наковальней?
•
![](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/getpro/habr/post_images/708/1c6/34e/7081c634ec176ab6b953d9d19e82a09a.png)
• Игра мечты, которую я делаю вместе с женой
• Soviet Project — Хоррор игра о недалеком прошлом
• Unity «Best» Practices
• Flutter vs Native: почему мы переходим с первого на второй
• Как проходит интервью мобильных разработчиков в Тинькофф
• GitHub дает «Спонсорам» закрытые репозитории
• Не совсем очевидные тренды развития рынка приложений, как к ним подготовиться мобильному разработчику?
• QA-тренды в 2022 году
• Каково быть тестировщиком: 4 истории о боли и радости
• Podlodka #253: Platform as a Service (PaaS)
• Вышел Flutter 2.10 с поддержкой Windows
• Flutter Dev Podcast #33: Roadmap 2022
• Дизайн приложений: примеры для вдохновения #70
•
![](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/509/dc9/bde/509dc9bde69347ecbe0c21ff2973d7e7.jpg)
• Предсказуемый успех. Почему мобильным играм нужен маркетинг в софтлонч и как его использовать с наибольшей выгодой
• IronSource запускает App Analytics
• Комитет Сената США одобрил Закон об открытых рынках приложений
• $30 млн: Flip — приложение для «полевых» сотрудников
• $71 млн в Серии C: Jellyfish — разработка в бизнес-контексте
• Quan: выгорание сотрудников
• The New York Times покупает Wordle
• Маскот в приложении: кто это и зачем он нужен
![](https://habrastorage.org/getpro/habr/post_images/853/812/9f5/8538129f5e7b404a720121cb9c3814db.jpg)
• Kincony KC868-A4: ультимативный гайд. Часть 2. Программирование компонентов
• ИИ AlphaCode от DeepMind решает задачи как средний программист
• Microsoft отменила HoloLens 3 и не знает, что делать с AR
• 35 реальных рисков, убивающих data- и machine learning проекты
• Автоматическая многоязычная модерация сообщений для миллионов пользователей
• Подборка багов в IoT: теперь вся наша жизнь может быть ошибкой
• Как стать дата сайентистом не потратив ни рубля
• Pinterest добавляет примерку мебели в дополненной реальности
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.