Очередной дайджест для мобильных разработчиков — рассказываем про бесконечный скролл, про ошибочную привязку карт, про обновления и потери, A/B-тестирование и сокращение рекламных доходов.



Каждый разработчик под мобильные платформы постоянно сталкивается с задачей, которая не решается одним единственным способом. Всегда есть несколько путей, — какие-то быстрые, какие-то сложные, — и у каждого свои достоинства и недостатки.

Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.

iOS

(+13) Ошибка – это не UIAlertController
(+10) Оптимизация времени сборки — Часть 1
(+6) AppCode 2020.1: улучшения быстродействия, автодополнение до конца индексации, генерация документации и многое другое
(+3) CoreData модель из кода. Или «Как обойтись без .XCDataModel» (Часть 1)
(0) Валидация полей iOS — быстро и просто
В iOS обнаружены 2 критические уязвимости
Все, что вы хотели знать о функции Sign in with Apple
Новый iPhone SE вызвал ажиотажный спрос
Эффектная радужная анимация на SwiftUI
Как сделать многострочное текстовое поле в SwiftUI
Коллекция слайдеров для SwiftUI
Использование TensorFlow.js в iOS-приложении для обнаружения объектов
Баннер уведомления на SwiftUI
Function Builders в Swift и SwiftUI
Возвращаем пользователей в приложение: глубокие ссылки в iOS
Распространение скомпилированных статических Swift-библиотек и статических фреймворков Swift
GraphQL, Combine и SwiftUI
Инъекция зависимостей в iOS на Swift с Swinject и SwinjectStoryboard
Proton: лучший UITextView

Android

(+4) ПШЕ AndroidStudio
(+4) Android в промышленном контроллере
(+3) Backend-Driven UI с помощью виджетов
(+3) Получаем и переключаем WebVTT субтитры в ExoPlayer
Встраиваем In-App Updates в приложение
Вышла третья превью-версия Android 11
Android Broadcast #14: Android инфраструктура Авито в Open Source
Android Broadcast #13: Android SafetyNet. Надежно ли?
Яндекс выпустил свой Android TV
Как мы использовали Kotlin для создания приложения для мобильного дизайна
Android Dev Podcast #112: Новости. Subscriptions best practices. Merge Adapter. LayoutInspector 3D. CameraX
Google потребовала от разработчиков приложений чётко показывать стоимость и условия отмены подписки
Сканирование QR с помощью CameraX
Realtime Database против Firestore: 9 основных отличий
Database Inspector
One Tap sign in для Android-приложений
Создаем плеер YouTube на Kotlin
Как настроить биометрическую аутентификацию в Android
Отмены в корутинах
Кастомные Listener-ы в Android
ProtonMail: защищенная почта
Uber Car Animation Android: анимация машины
Kiwi Browser: быстрый браузер для Android

Разработка

(+53) Яндекс автоматически привязывает карту к другому аккаунту
(+25) Рассказы разработчиков ваших любимых игр о том, чем они гордятся
(+23) Как изгонять вирусов на Corona SDK
(+19) Оптимизация рендера под Mobile, часть 2. Основные семейства современных мобильных GPU
(+15) Создание интерфейса для игры
(+12) Hive — быстрая локальная база для Flutter, Dart
(+8) Ошибки, которые погубят проект любой сложности. Опыт менеджеров Redmadrobot
(+4) Как тестировать на удаленке, чтобы не запороть продукт и свою жизнь
Podlodka #160: Машинный перевод
500,000 разработчиков использует Flutter каждый месяц
IT-отрасль может сократиться на 18–20 тыс. программистов
Google объявил о доступности Cloud Healthcare API
Как я потратил полгода на обновление приложения и потерял 10 тысяч пользователей
Как сделать красивый Low Poly арт для игры (Blender, Unity)
Если бы языки программирования имели честные слоганы
Firebase Realtime Database и логин в систему для Android и iOS
7 шагов к тому, чтобы стать Моцартом программирования до конца карантина
Миграция Flutter приложения в Web
Audio Player for Flutter: плеер в стиле Apple Music
33 GitHub-репозитория для разработчиков мобильных приложений

Аналитика, маркетинг и монетизация

(+44) Как перестать беспокоиться и начать верить A/B-тестам
(+6) Большой гайд по A/B-тестированию
(+6) Postman — Автотестирование метрики в AppMetrica
(+3) 9 идей A/B-тестирования роликов для мобильных игр
Суперпозиция аналитика: Парадоксы и когнитивные искажения. Как аналитику маневрировать в потоке данных.
App Annie назвала самые популярные приложения среди россиян в период с января по апрель 2020 года
В Epic Games сдались — Fortnite вышел в Google Play
OneSignal запустил Advanced Analytics
FunCorp: доходы от мобильной рекламы в марте упали на 50%
Houseparty: видеоконференции с играми
Откровенная история российского стартапа, который привлёк более $1 млн в приложение для детей
Как продвигать приложение: полное руководство 2020

AI, Устройства, IoT

(+57) Боремся с пробками в маленьком городе за небольшой бюджет: результаты 6 месяцев проекта
(+18) Artefact: AR в музее глазами разработчика, аналитика, искусствоведа
(+13) Базы данных в IIoT-платформе: как Mail.ru Cloud Solutions работают с петабайтами данных от множества устройств
(+12) Object Detection. Распознавай и властвуй. Часть 2
(+5) Ошибки при проектировании интерфейса VR, VR для дизайнеров интерфейсов
(+4) Часто задаваемые вопросы о VR шлемах и играх
Magic Leap увольняет половину сотрудников и уходит с потребительского рынка
Искусственный интеллект Accenture, Sulubaii и Intel помогает сохранять коралловый риф
Падение на рынке смартфонов в третьем квартале 2020 года составит не менее 40%

< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.