- PVSM.RU - https://www.pvsm.ru -

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября)

В нашем новом выпуске разработка для Авроры, Дубай Молл в смартфоне, тренды UX-дизайна, инструменты HTML5-разработки, доходы 1% топовых издателей, которые получают 93% денег всего рынка приложений. Интересный дайджест у нас получился!

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 1

Наша команда разработала и поддерживает корпоративное мобильное приложение по приёму платежей в рамках платёжной системы для крупного заказчика. Теперь оно используется сотрудниками клиента на устройствах под управлением операционной системы Аврора (ранее Sailfish Mobile OS RUS) в тридцати семи российских регионах. В этом посте я коротко расскажу об этом проекте и более подробно – о самой операционке.

Исходная постановка задачи в упрощённом виде: хочется иметь возможность визуализировать схему этажа в вашем мобильном приложении и уметь показывать на нём местоположение конкретной организации. Хотелось бы ещё и местоположение пользователя видеть, но здесь проблема в технической плоскости — нужно оборудование, которое позволит вам получать координаты устройства внутри помещения. Так что этот аспект оставим за рамками статьи и сосредоточимся на программной части.

Этот дайджест доступен в виде еженедельной рассылки [3]. А ежедневно новости мы рассылаем в Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 4Telegram-канале [4].

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 5 iOS

(+74) Как Apple убивает веб технологии [5]
(+10) Redux — подобные контейнеры состояния в SwiftUI. Основы [6]
(+4) Redux — подобные контейнеры состояния в SwiftUI. Рекомендации [7]
(+3) Swift.assert — жизнь после релиза [8]
Apple расширяет программу Everyone Can Code [9]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 6 On-Demand ресурсы в iOS [10]
Apple назовет лучшие приложения и игры 2 декабря [11]
Вышло приложение Apple Developer [12]
Что делать, если вас копирует Apple [13]
Apple изменит подход к разработке операционных систем из-за ошибок в iOS 13 [14]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 7 Сканер документов для iOS с Vision API [15]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 8 Отладка с Swift Combine Framework [16]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 9 Как создавать обновляемые модели в Core ML 3 [17]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 10 Простой способ реализовать демонстрационный режим в iOS-приложении [18]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 11 iOS 13 Compositional Layouts в CollectionView [19]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 12 Swift на Raspberry Pi [20]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 13 Внедряем темный режим на iOS [21]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 14 Микросервисы SwiftUI [22]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 15 Loady: кнопки с индикаторами загрузки [23]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 16 OpenSwiftUI: открытый SwiftUI [24]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 17 5 iOS-библиотек для анимирования вашего приложения [25]

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 18 Android

(+21) Quality pipelines в мобильной разработке, часть 1: Android [26]
Google предлагает $1 млн. за уязвимости в Android [27]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 19 Android-разработчик в США [28]
Google и Udacity открыли курс “Продвинутый Android в Kotlin” [29]
Магазин приложений Epic Games получил вторую игру [30]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 20 Навигация с динамическими функциональными модулями [31]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 21 Как разместить прогрессивное веб-приложение в магазине Google Play [32]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 22 Kotlin/Native в iOS [33]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 23 Трюки с Dagger: Рефакторинг [34]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 24 Понимаем, как рендерится View в Android [35]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 25 Как сделать корпоративное мобильное приложение единственным на устройстве с помощью Android Management API [36]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 26 Логин в Kotlin через Firebase – Twitter, Facebook, Google, GitHub [37]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 27 Google хочет, чтобы Android использовал обычное ядро Linux [38]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 28 StoryView: сториз для Android [39]

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 29 Разработка

(+28) Цепи Маркова для процедурной генерации зданий [40]
(+19) Extension в Dart (Flutter) [41]
(+19) Нескучный матчмейкинг без дисбаланса и очередей: практическое руководство [42]
(+12) За какими трендами UX-дизайна следить в 2020 году [43]
(+11) Как работает Flutter [44]
(+11) Дизайн система Societe Generale: Гармония дизайна и разработки [45]
(+8) Проверка идеи будущего приложения. Претотип. Или как сэкономить много денег [46]
Почему вам стоит бояться призрачных кнопок [47]
Все инструменты, которые мы использовали для создания популярной HTML5-игры Curious Expedition [48]
Звуковые эффекты, голоса и музыка в Humble Bundle [49]
В Firebase Authentication заработал Sign in with Apple [50]
Как заработать на приложении во время праздников? [51]
Платформа Miro запустила конкурс приложений [52]
В России создадут приложение для оценки состояния двигателя по звуку [53]
Microsoft закрывает приложения Cortana [54]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 30 Видео MobileOptimized 2019 [55]
Опрос: Инструменты дизайна и прототипирования приложений [56]
Руководство по дизайну мобильных приложений под iOS и Android. Основные различия платформ [57]
Как использовать сценарии в разработке мобильных приложений [58]
Организация пространства в дизайне. Отступы, сетки и лейауты [59]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 31 Простой 3D-движок во Flutter [60]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 32 Как улучшить свою работу junior-разработчика [61]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 33 Лучший отзыв в Code Review из всех, что я получал [62]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 34 Ваше следующее приложение может не иметь серверной части [63]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 35 Распространенные ошибки, которые делают программисты. Даже хорошие. [64]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 36 Лучшие шаблоны и темы для мобильных приложений 2019 [65]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 37 Делайте аннотации, они сделают ваших разработчиков счастливыми [66]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 38 20 шорткатов VS Code  для быстрого программирования [67]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 39 Лучшие практики UX: регистрация [68]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 40 Использование библиотеки Device_Calendar во Flutter для связи с календарем в Android/iOS [69]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 41 Принятие кроссплатформенной стратегии для мобильных приложений [70]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 42 8 причин отказаться от разработки гибридных приложений [71]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 43 Мерджим работу 1000+ разработчиков [72]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 44 11 основных концепций мета-знаний, необходимых для ускорения программирования [73]
Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 45 OpenDiablo2: открытый движок Diablo 2 [74]

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 46 Аналитика, маркетинг и монетизация

(+36) Локализация приложения за 10 шагов [75]
(+10) Как я начал уметь в маркетинг [76]
(+2) Кейс от Narcade: разработчики из Турции рассказывают о локализации мобильных игр и турецком игровом рынке [77]
Россия станет третьим по величине рынком для видеоигр в Европе [78]
Топ 1% издателей получает 80% установок и 93% доходов всего рынка приложений [79]
Тейн Лайман (Wargaming): игры, с которыми есть эмоциональная связь [80]
myTarget запускает маркетплейс рекламных приложений [81]
Ocean Engine охватывает треть мировой мобильной аудитории [82]
Clumio получает $186 млн. на облачное резервное копирование [83]
SmartNews: лучший способ читать новости [84]
Приложения для покупок поставили рекорд по загрузкам [85]
WeWork запускает в России программу развития стартапов [86]
Доходы платных игр в App Store постоянно снижаются [87]
Яндекс.Деньги выпустили игру в формате чат-квеста [88]
Wire: самый безопасный мессенджер [89]

Дайджест интересных материалов для мобильного разработчика #323 (18 — 24 ноября) - 47 AI, Устройства, IoT

(+11) Этапы внедрения моделей машинного обучения на крупных предприятиях [90]
(+10) Новый бесплатный онлайн-курс от Samsung по анализу текста при помощи нейросетей [91]
(+7) 10 лайфхаков разработки рекомендательных систем [92]
(+5) Разработка IoT-шлюза на базе Raspberry CM3+ [93]

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

Автор: DigitalEcosystems

Источник [96]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/razrabotka-pod-ios/337731

Ссылки в тексте:

[1] Как мы разрабатывали мобильное приложение на ОС Аврора (Sailfish Mobile OS RUS): https://habr.com/ru/company/lanit/blog/475652/

[2] Дубай Молл в смартфоне, или как добавить поэтажный план здания в своё приложение: https://habr.com/ru/company/2gis/blog/476816/

[3] рассылки: http://apptractor.us3.list-manage2.com/subscribe?u=fbdb52f18301080a3cc983f4b&id=bb7bc0a9c0

[4] Telegram-канале: https://t.me/apptractor

[5] Как Apple убивает веб технологии: https://habr.com/ru/company/edison/blog/476698/

[6] Redux — подобные контейнеры состояния в SwiftUI. Основы: https://habr.com/ru/post/476398/

[7] Redux — подобные контейнеры состояния в SwiftUI. Рекомендации: https://habr.com/ru/post/476924/

[8] Swift.assert — жизнь после релиза: https://habr.com/ru/post/476792/

[9] Apple расширяет программу Everyone Can Code: https://apptractor.ru/learn/everyone-can-code.html

[10] On-Demand ресурсы в iOS: https://apptractor.ru/develop/ios-on-demand-resources.html

[11] Apple назовет лучшие приложения и игры 2 декабря: https://apptractor.ru/info/conferences/apple-loved-by-millions.html

[12] Вышло приложение Apple Developer: https://apptractor.ru/info/apps/apple-developer.html

[13] Что делать, если вас копирует Apple: https://apptractor.ru/info/articles/sherlocked-by-apple.html

[14] Apple изменит подход к разработке операционных систем из-за ошибок в iOS 13: https://vc.ru/tech/93789-bloomberg-apple-izmenit-podhod-k-razrabotke-operacionnyh-sistem-iz-za-oshibok-v-ios-13

[15] Сканер документов для iOS с Vision API: https://techhype.io/?story=ios-vision-text-document-scanner

[16] Отладка с Swift Combine Framework: https://www.vadimbulavin.com/debugging-with-combine-swift-framework/

[17] Как создавать обновляемые модели в Core ML 3: https://medium.com/better-programming/how-to-create-updatable-models-using-core-ml-3-cc7decd517d5

[18] Простой способ реализовать демонстрационный режим в iOS-приложении: https://infinum.com/the-capsized-eight/easy-way-to-implement-demo-mode-in-ios-apps

[19] iOS 13 Compositional Layouts в CollectionView: https://medium.com/better-programming/ios-13-compositional-layouts-in-collectionview-90a574b410b8

[20] Swift на Raspberry Pi: https://lickability.com/blog/swift-on-raspberry-pi/

[21] Внедряем темный режим на iOS: https://medium.com/flawless-app-stories/implementing-dark-mode-on-ios-d195cac098de

[22] Микросервисы SwiftUI: https://medium.com/better-programming/swiftui-microservices-c7002228710

[23] Loady: кнопки с индикаторами загрузки: https://apptractor.ru/info/github/loady-2.html

[24] OpenSwiftUI: открытый SwiftUI: https://apptractor.ru/info/github/openswiftui.html

[25] 5 iOS-библиотек для анимирования вашего приложения: https://medium.com/better-programming/5-ios-libraries-to-animate-your-app-ff8b39761472

[26] Quality pipelines в мобильной разработке, часть 1: Android: https://habr.com/ru/company/jugru/blog/476624/

[27] Google предлагает $1 млн. за уязвимости в Android: https://apptractor.ru/info/news/google-android-security-rewards.html

[28] Android-разработчик в США: https://androiddev.apptractor.ru/android-razrabotchik-v-ssha/

[29] Google и Udacity открыли курс “Продвинутый Android в Kotlin”: https://apptractor.ru/learn/advanced-android-in-kotlin.html

[30] Магазин приложений Epic Games получил вторую игру: https://apptractor.ru/info/news/epic-games-android-game-store.html

[31] Навигация с динамическими функциональными модулями: https://techhype.io/?story=navigation-with-dynamic-feature-modules

[32] Как разместить прогрессивное веб-приложение в магазине Google Play: https://itnext.io/how-to-get-a-progressive-web-app-into-the-google-play-store-2aef6fff43e3

[33] Kotlin/Native в iOS: https://medium.com/quick-code/kotlin-native-ios-e6480299e02f

[34] Трюки с Dagger: Рефакторинг: https://www.zacsweers.dev/dagger-party-tricks-refactoring/

[35] Понимаем, как рендерится View в Android: https://medium.com/better-programming/understand-how-view-renders-in-android-763f0adfb95c

[36] Как сделать корпоративное мобильное приложение единственным на устройстве с помощью Android Management API: https://vc.ru/dev/93454-kak-sdelat-korporativnoe-mobilnoe-prilozhenie-edinstvennym-na-ustroystve-s-pomoshchyu-android-management-api

[37] Логин в Kotlin через Firebase – Twitter, Facebook, Google, GitHub: https://ahsensaeed.com/kotlin-android-firebase-all-social-login/

[38] Google хочет, чтобы Android использовал обычное ядро Linux: https://www.androidpolice.com/2019/11/19/google-wants-android-to-use-regular-linux-kernel-potentially-improving-updates-and-security/

[39] StoryView: сториз для Android: https://apptractor.ru/info/github/storyview.html

[40] Цепи Маркова для процедурной генерации зданий: https://habr.com/ru/post/475764/

[41] Extension в Dart (Flutter): https://habr.com/ru/post/476930/

[42] Нескучный матчмейкинг без дисбаланса и очередей: практическое руководство: https://habr.com/ru/company/pixonic/blog/475548/

[43] За какими трендами UX-дизайна следить в 2020 году: https://habr.com/ru/post/476888/

[44] Как работает Flutter: https://habr.com/ru/post/476018/

[45] Дизайн система Societe Generale: Гармония дизайна и разработки: https://habr.com/ru/post/475870/

[46] Проверка идеи будущего приложения. Претотип. Или как сэкономить много денег: https://habr.com/ru/post/476876/

[47] Почему вам стоит бояться призрачных кнопок: https://apptractor.ru/develop/design/pochemu-vam-stoit-boyatsya-prizrachnyih-knopok.html

[48] Все инструменты, которые мы использовали для создания популярной HTML5-игры Curious Expedition: https://apptractor.ru/info/articles/html5-game-dev-tools.html

[49] Звуковые эффекты, голоса и музыка в Humble Bundle: https://apptractor.ru/info/news/humble-music-and-sound-effects-for-games-films-and-content-creators-bundle.html

[50] В Firebase Authentication заработал Sign in with Apple: https://apptractor.ru/info/news/firebase-authentication-sign-in-with-apple.html

[51] Как заработать на приложении во время праздников?: https://apptractor.ru/info/articles/kak-zarabotat-na-prilozhenii-vo-vremya-prazdnikov.html

[52] Платформа Miro запустила конкурс приложений: https://apptractor.ru/info/conferences/miro-platform-contest.html

[53] В России создадут приложение для оценки состояния двигателя по звуку: https://apptractor.ru/info/apps/auto-shazam.html

[54] Microsoft закрывает приложения Cortana: https://apptractor.ru/info/news/microsoft-cortana-out.html

[55] Видео MobileOptimized 2019: https://apptractor.ru/info/media/mobileoptimized-2019.html

[56] Опрос: Инструменты дизайна и прототипирования приложений: https://docs.google.com/forms/d/e/1FAIpQLSdQ8L91U2_hB8qEHReUx7tET_W6ocwnJw_uuFBLty2KTvavsA/viewform

[57] Руководство по дизайну мобильных приложений под iOS и Android. Основные различия платформ: https://ux.pub/rukovodstvo-po-dizaynu-mobilnyh-prilozheniy-pod-ios-i-android-osnovnye-razlichiya-platform/

[58] Как использовать сценарии в разработке мобильных приложений: https://vc.ru/design/93576-kak-ispolzovat-scenarii-v-razrabotke-mobilnyh-prilozheniy

[59] Организация пространства в дизайне. Отступы, сетки и лейауты: https://ux.pub/organizatsiya-prostranstva-v-dizayne-otstupy-setki-i-leyauty/

[60] Простой 3D-движок во Flutter: https://levelup.gitconnected.com/a-simple-3d-engine-in-flutter-cc4a7edc943e

[61] Как улучшить свою работу junior-разработчика: https://medium.com/better-programming/how-to-step-up-your-game-as-a-junior-developer-d5f5abb95490

[62] Лучший отзыв в Code Review из всех, что я получал: https://medium.com/better-programming/the-best-code-review-feedback-i-ever-received-43313a503517

[63] Ваше следующее приложение может не иметь серверной части: https://medium.com/better-programming/your-next-app-may-not-have-a-backend-aacc728bd032

[64] Распространенные ошибки, которые делают программисты. Даже хорошие.: https://medium.com/better-programming/common-mistakes-programmers-make-e333cdbd0708

[65] Лучшие шаблоны и темы для мобильных приложений 2019: https://medium.com/swlh/best-mobile-app-templates-themes-of-2019-da76398a374f

[66] Делайте аннотации, они сделают ваших разработчиков счастливыми: https://uxdesign.cc/design-annotations-that-will-make-your-developers-happy-d376d4453d9d

[67] 20 шорткатов VS Code  для быстрого программирования: https://medium.com/better-programming/20-vs-code-shortcuts-for-fast-coding-cheatsheet-10b0e72fd5d

[68] Лучшие практики UX: регистрация: https://uxdesign.cc/ux-best-practices-registration-500e55284f82

[69] Использование библиотеки Device_Calendar во Flutter для связи с календарем в Android/iOS: https://itnext.io/using-device-calendar-library-in-flutter-to-communicate-with-android-ios-calendar-95b2d8c77b40

[70] Принятие кроссплатформенной стратегии для мобильных приложений: https://medium.com/vmware-end-user-computing/adopting-a-cross-platform-strategy-for-mobile-apps-59495ffa23b0

[71] 8 причин отказаться от разработки гибридных приложений: https://medium.com/swlh/why-we-abandoned-the-hybrid-app-development-b03a2ef1518f

[72] Мерджим работу 1000+ разработчиков: https://engineering.shopify.com/blogs/engineering/successfully-merging-work-1000-developers

[73] 11 основных концепций мета-знаний, необходимых для ускорения программирования: https://medium.com/better-programming/a-comprehensive-guide-on-the-meta-knowledge-you-need-to-accelerate-your-code-creation-process-d0f5f3b67473

[74] OpenDiablo2: открытый движок Diablo 2: https://apptractor.ru/info/github/opendiablo2.html

[75] Локализация приложения за 10 шагов: https://habr.com/ru/post/461587/

[76] Как я начал уметь в маркетинг: https://habr.com/ru/post/476394/

[77] Кейс от Narcade: разработчики из Турции рассказывают о локализации мобильных игр и турецком игровом рынке: https://habr.com/ru/company/alconost/blog/476984/

[78] Россия станет третьим по величине рынком для видеоигр в Европе: https://apptractor.ru/info/analytics/russia-video-games-2019.html

[79] Топ 1% издателей получает 80% установок и 93% доходов всего рынка приложений: https://apptractor.ru/measure/app-store-analytics/top-1.html

[80] Тейн Лайман (Wargaming): игры, с которыми есть эмоциональная связь: https://apptractor.ru/info/interview/thaine-lyman-wargaming-interview.html

[81] myTarget запускает маркетплейс рекламных приложений: https://apptractor.ru/marketing-monetization/ad-networks/mytarget-app-marketplace.html

[82] Ocean Engine охватывает треть мировой мобильной аудитории: https://apptractor.ru/marketing-monetization/ad-networks/ocean-engine.html

[83] Clumio получает $186 млн. на облачное резервное копирование: https://apptractor.ru/info/news/clumio-186.html

[84] SmartNews: лучший способ читать новости: https://apptractor.ru/info/github/smartnews.html

[85] Приложения для покупок поставили рекорд по загрузкам: https://apptractor.ru/measure/app-store-analytics/shopping-apps-record.html

[86] WeWork запускает в России программу развития стартапов: https://apptractor.ru/info/news/wework-labs.html

[87] Доходы платных игр в App Store постоянно снижаются: https://apptractor.ru/measure/app-store-analytics/premium-game-revenue-2019.html

[88] Яндекс.Деньги выпустили игру в формате чат-квеста: https://apptractor.ru/info/news/moneylandia.html

[89] Wire: самый безопасный мессенджер: https://apptractor.ru/info/techhype/wire.html

[90] Этапы внедрения моделей машинного обучения на крупных предприятиях: https://habr.com/ru/company/jetinfosystems/blog/476478/

[91] Новый бесплатный онлайн-курс от Samsung по анализу текста при помощи нейросетей: https://habr.com/ru/company/samsung/blog/476468/

[92] 10 лайфхаков разработки рекомендательных систем: https://habr.com/ru/post/476224/

[93] Разработка IoT-шлюза на базе Raspberry CM3+: https://habr.com/ru/post/476686/

[94] Предыдущий дайджест: https://habr.com/ru/company/digital-ecosystems/blog/476174/

[95] почту: mailto:lbogolubov@gmail.com

[96] Источник: https://habr.com/ru/post/477202/?utm_source=habrahabr&utm_medium=rss&utm_campaign=477202