В новом выпуске ускоряем прохождение UI-тестов и заведуем стейт-машинами, внедряем платежи и готовим открытый API для UWB, разбираем кроссплатформу, перепридумываем иллюстрации, делимся виджетами и многое другое!
![](https://habrastorage.org/r/w1560/webt/m_/oy/qt/m_oyqti3rm1mq9cm6knzfxb54y0.png)
У нас есть Telegram-канал Mobile Insights, где подборки статей и новостей выходят каждый день, а так же AppFiles с библиотеками и самыми интересными статьями о мобильной разработке!
iOS
• Обновляем контент, не проходя повторное ревью в сторах
• Создана рабочая группа по совместимости Swift и C++
• Делаем разделы UITableView с вложенными типами
• Ускоряем прохождение iOS UI-тестов. Часть 1. Запускаем тесты без сборки проекта
• Следы RealityOS нашли в репозиториях и App Store
• Раннер Emcee. Всем айосерам по тестовой ферме
• Видео iOS Community Meetup
• Стейт-машины в iOS
• Apple запускает обучающие доклады по App Store
• Apple запускает прием платежей Tap to Pay на iPhone
• Специальные эффекты в SwiftUI: размытие, смешивание и др.
• Видео iOS Conf SG 2022
•
CoreData: бремя прошлого
•
Создаем свой собственный «Driving» режим в iOS
•
Слишком много зависимостей в iOS? Используйте шаблон Composition Root
•
Как использовать центр уведомлений в SwiftUI
•
Вызов асинхронных API Firebase из Swift
•
Создаем модульное iOS-приложение в Xcode 13
•
Как начать работу с Voice Over на iOS
•
Создаем змейку в SwiftUI с помощью GeometryReader
•
Уведомления в Симуляторе iOS за 10 простых шагов
•
Обнаружение объектов с помощью Create ML: изображения и набор данных
•
Когда следует использовать Decimal вместо Double в Swif
•
Неоморфные кнопки в SwiftUI
•
Как избежать отказов в App Store
•
Шаблон Адаптера на практике в Swift
•
Комбинирование протоколов в Swift
•
BubbleTabBar: нижнее меню
•
Wizard’s Pal: счетчик жизней
Android
• Как мы перешли с kotlinx.synthetics на Android View Binding
• 8 вещей, которые мы узнали, внедрив платежи в Android-приложение DoorDash
• Вышла первая Developer Preview версия Android 13
• Google готовит открытый API для UWB
• Сравниваем кривые линии по форме
• Часть 2. Создание и настройка проекта, работа в редакторах microStudio
• Вышел стабильный Compose 1.1
•
Использование Google Maps в приложении Jetpack Compose
•
Как использовать Hilt для создания Solid архитектуры в Android
•
8 вещей, которые мы узнали, внедрив платежи в Android-приложение DoorDash
•
Улучшение качества кода Android-приложений с помощью SonarQube и Gradle Detekt
•
Встречайте Microsoft Snippet — библиотеку Android для измерения времени выполнения кода
•
3 Android-технологии, которые исчезнут в 2022 году
•
Изучение и создание виджетов в Android с помощью Glance API
•
Создание перехода для FAB с помощью Jetpack Compose
•
Google закрыл нашу учетную запись в Google Play и убил источник дохода моей семьи
•
Освоение рефакторинга
•
5 главных уроков, извлеченных из создания продакшен приложения на Jetpack Compose
•
Хорошие, плохие и уродливые интерфейсы в мобильной разработке
•
Где вы должны хранить свои секретные ключи в Android?
•
Compose Navigation Reimagined: навигация в Jetpack Compose
•
BubbleTabBar: нижнее меню
•
Maps Compose: Google Maps для Compose
Разработка
• Устану ли я играть, нужно ли уметь кодить и чем вообще занимаются QA в геймдеве
• Dart, Flutter и кроссплатформа: небольшой разбор на практике
• Как и зачем создавать собственный игровой движок
• Что у ECS под капотом
• Лучшая работа из мира IT 2022 по версии Glassdoor
• 100 символов, или Как влияет длина строки на читаемость текста
• Сколько дизайн-систем нужно для счастья?
• «Старые нельзя, а новых ещё нет». Как мы перепридумали иллюстрации для приложения СберМаркета за 3 месяца
• Неожиданные результаты в ожидаемых A/B-тестах
• Почему «осмысленное тестирование» – это важно?
• Элементарное тестирование, или тестирование Elementary
• Знакомство Unity с FMOD за пять минут
• Поиск случайной точки на PolygonCollider2D Unity
• Дизайн приложений: примеры для вдохновения #71
• Podlodka #254: антивирусы
• Специалисты в сфере IT-технологий чаще других работают удаленно
• Chrome меняет логотип
• Как проявляется эстетика в интерфейсе
• Как клиенты помогают улучшать мобильное приложение банка
• Навыки продакт-менеджера. Что и зачем он делает
•
Netflix: культура обучения
•
Почему большинству программистов не удается стать Senior-разработчиками
•
2 вопроса на собеседовании, на которых проваливается 90% разработчиков
•
Почему наш исходный код является уязвимостью: более 6000 данных учетных записей в исходниках Twitch
•
5 простых UI-взаимодействий в Principle, которые сделают ваш дизайн выдающимся
•
Усиливаем разработку на Flutter через чистую архитектуру и Test-Driven подход
•
6 алгоритмов, которые должен знать каждый разработчик
•
Как программисту эффективно проводить совещания
•
Навигация во Flutter с AutoRoute
Аналитика, маркетинг и монетизация
• Виджет NoteIt в топе App Store
• Tinder запустил «Свидания вслепую»
• Sēkr: цифровизация кемпинга
• $330 млн в Серии F: Branch — мобильная аналитика
• Новый закон о персональных данных в Китае: что важно знать разработчикам
• Apple купила AI Music
• Apple будет брать 27% с покупок через сторонние платежные системы
• Как я решил заработать на Wordle
AI, Устройства, IoT
• Игры, в которые играют машины
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
![](https://habrastorage.org/webt/m_/oy/qt/m_oyqti3rm1mq9cm6knzfxb54y0.png)
У нас есть Telegram-канал Mobile Insights, где подборки статей и новостей выходят каждый день, а так же AppFiles с библиотеками и самыми интересными статьями о мобильной разработке!
![](https://habrastorage.org/getpro/habr/post_images/f19/30a/c49/f1930ac4945596eb9707bc7a01bc5bdc.png)
• Обновляем контент, не проходя повторное ревью в сторах
• Создана рабочая группа по совместимости Swift и C++
• Делаем разделы UITableView с вложенными типами
• Ускоряем прохождение iOS UI-тестов. Часть 1. Запускаем тесты без сборки проекта
• Следы RealityOS нашли в репозиториях и App Store
• Раннер Emcee. Всем айосерам по тестовой ферме
• Видео iOS Community Meetup
• Стейт-машины в iOS
• Apple запускает обучающие доклады по App Store
• Apple запускает прием платежей Tap to Pay на iPhone
• Специальные эффекты в SwiftUI: размытие, смешивание и др.
• Видео iOS Conf SG 2022
•
![](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)
• Как мы перешли с kotlinx.synthetics на Android View Binding
• 8 вещей, которые мы узнали, внедрив платежи в Android-приложение DoorDash
• Вышла первая Developer Preview версия Android 13
• Google готовит открытый API для UWB
• Сравниваем кривые линии по форме
• Часть 2. Создание и настройка проекта, работа в редакторах microStudio
• Вышел стабильный Compose 1.1
•
![](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)
• Устану ли я играть, нужно ли уметь кодить и чем вообще занимаются QA в геймдеве
• Dart, Flutter и кроссплатформа: небольшой разбор на практике
• Как и зачем создавать собственный игровой движок
• Что у ECS под капотом
• Лучшая работа из мира IT 2022 по версии Glassdoor
• 100 символов, или Как влияет длина строки на читаемость текста
• Сколько дизайн-систем нужно для счастья?
• «Старые нельзя, а новых ещё нет». Как мы перепридумали иллюстрации для приложения СберМаркета за 3 месяца
• Неожиданные результаты в ожидаемых A/B-тестах
• Почему «осмысленное тестирование» – это важно?
• Элементарное тестирование, или тестирование Elementary
• Знакомство Unity с FMOD за пять минут
• Поиск случайной точки на PolygonCollider2D Unity
• Дизайн приложений: примеры для вдохновения #71
• Podlodka #254: антивирусы
• Специалисты в сфере IT-технологий чаще других работают удаленно
• Chrome меняет логотип
• Как проявляется эстетика в интерфейсе
• Как клиенты помогают улучшать мобильное приложение банка
• Навыки продакт-менеджера. Что и зачем он делает
•
![](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)
• Виджет NoteIt в топе App Store
• Tinder запустил «Свидания вслепую»
• Sēkr: цифровизация кемпинга
• $330 млн в Серии F: Branch — мобильная аналитика
• Новый закон о персональных данных в Китае: что важно знать разработчикам
• Apple купила AI Music
• Apple будет брать 27% с покупок через сторонние платежные системы
• Как я решил заработать на Wordle
![](https://habrastorage.org/getpro/habr/post_images/853/812/9f5/8538129f5e7b404a720121cb9c3814db.jpg)
• Игры, в которые играют машины
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.