В новом выпуске дайджеста альтернативный магазин приложений для iOS и тонкости публикации в старом Google Play, фреймворк автотетсирования и кодлабы по Kotlin, спрайтовые персонажи и 6 подкастов за неделю, гиперточные карты и тонкости дейтинга.
Опубликовать приложение, не нарушив ни чьих прав, стало непростой задачей. За последние пару лет в Google Play добавилось множество новых правил и ограничений, причем некоторые из них действуют только в определенных регионах, и бремя отслеживания, какие ограничения и правила распространяются на каждого конкретного юзера, ложится на плечи разработчиков.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• (+18) Никогда не поздно новый путь начинать
• (+3) Чат на iOS: используем сокеты
• AltStore: альтернативный магазин приложений для iOS
• Apple скрывает Arcade от аналитики?
• Apple выпускает iOS 13.1 и iPadOS: чего ожидать?
• Играем с Combine: сетка изображений на SwiftUI
• Многооконная разработка для iPadOS
• Операторы преобразования в среде Swift Combine: Map vs FlatMap vs SwitchToLatest
• Создание динамического UI через считывание эмоций с помощью ARKit
• Как сделать анализатор отзывов на фильме на Swift
• Как уменьшить потребление памяти вашим приложением
• AppStore Clone: дизайн магазина приложений
• NSVLocalizationKit: локализация из Storyboard
• 5 iOS-библиотек, которые сделают ваше приложение лучше
Android
• (+16) Kaspresso: фреймворк для автотестирования, который вы ждали
• (+10) События на базе LiveData Android
• (+9) Топ 20 навигационных фич в IntelliJ IDEA. Часть 2
• (+8) Управление зависимостями в многомодульном проекте на Gradle
• (+7) Альтернативный подход к отображению загрузки во время пагинации
• (+6) Трансформация кода в Android
• (+5) Как стать Android-разработчиком
• Google выпускает Android 10 (Go edition)
• Стриминг игр Microsoft xCloud стартует в октябре на Android
• Google запустил Play Pass
• Опубликованы Android Kotlin Codelab
• Android Dev Podcast #104: ML в приложениях ABBYY
• Dagger 2: от одного модуля к модульному приложению
• Безболезненное юнит-тестирование с Kotlintest и Mockk
• Как сделать Копировать/Вставить в Android с помощью TextView
• Android Samples: примеры кода Google для Android
Разработка
• (+20) Модульные спрайтовые персонажи и их анимация
• (+18) Циклическая генерация подземелий на примере Unexplored
• (+14) Реализация анимации в React Native
• (+8) Тестирование Flutter-приложений. Начало
• (+3) Мой magnum opus от мира мобильного гейминга
• Flutter Dev Podcast #7: Всё про кроссплатформу
• Android Dev Podcast #104: ML в приложениях ABBYY
• Podlodka #129: Как работает поиск
• Podlodka #130: Тестирование
• Firebase Summit: Extensions, App Distribution и другие обновления платформы
• Как стать продюсером игровой разработки
• Harmony Studio: IDE для Harmony OS
• Microsoft запустила бесплатный видеокурс по Python для начинающих
• Сколько платят разработчикам стартапы? На 40% меньше обычного!
• Тот, кто сделал VLC свободным
• 7 правил создания хороших CTA-кнопок
• Запрашивать базу данных Firebase напрямую или использовать Cloud Functions?
• Руководство по созданию “хлебных крошек” (Breadcrumbs)
• Кроссплатформенный интерфейс для машинного обучения на устройстве
• Что такое компонентно-ориентированное программирование?
• Как Lyft создает гиперточные карты из карт с открытым исходным кодом и данных в реальном времени
• Обязательные расширения VS Code для работы с Flutter
• Почему я не хочу делать минимально жизнеспособный продукт
• Как повысить вашу производительность как разработчика
• Темный режим во Flutter
• Firebase App Distribution, Fastlane, Docker, Bitbucket Pipelines, Telegram и весь этот джаз
• 100+ вопросов из интервью программистов
• Appwrite: собственный бэкенд
• KotlinMultiPlatform: кроссплатформенная погода
Аналитика, маркетинг и монетизация
• (+8) Политика открытости: как пользователи влияют на проект
• Uber хочет стать “операционной системой для жизни”
• Подкаст LOVEMOBILE #01: ASO
• App Annie делает ребрендинг
• Match.com обвиняют в искусственном нагнетании подписок
• В myTracker появилась аналитика по подпискам в мобильных приложениях
• Kik Messenger закрывается
• Tulip: конструктор приложений для производств
• Механики монетизации в геймдизайне
• Groww: простые инвестиции
• Unity купила DeltaDNA
• Как реклама «Установите приложение» убивает UX на сайтах электронной коммерции
• Сколько установок мне принесла статья на vc.ru
• Как вдвое увеличить органические установки: что делает вашу игру уникальной? [Изучаем ASO]
• Выбираем правильную ценовую модель для MVP
AI, Устройства, IoT
• (+41) Ультимативное сравнение embedded платформ для AI
• (+23) Нейросеть для классификации спутниковых снимков помощью Tensorflow на Python
• (+17) Робот-танк на Raspberry Pi с Intel Neural Computer Stick 2
• (+12) О важности подтверждения управляющих команд на примере Делимобиля
• (+10) Интернет в «Умном» городе
• Новая социальная сеть в виртуальной реальности – Facebook Horizon
• Amazon представил новые устройства и сервисы
• Как начать свой собственный проект машинного обучения
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Автор: DigitalEcosystems