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

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

В новом дайджесте мы обсуждаем подготовку приложений к iOS 13 и Android Q, работу протокола QUIC, отсутствие инновационных приложений в Google Play и в целом его работу, магазин приложений от Huawei и многое другое. Присоединяйтесь!

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

С момента выхода iOS 13 вышло бесчисленное количество обзоров, в которых уже рассказано о новых фишках системы для пользователей. Сегодня мы не будем подробно останавливаться на этом, но зато поговорим о том, что меняет iOS 13 для разработчика приложений.

Речь не про малую инфраструктуру, базирующуюся в условном гараже, а про Uber, который работает почти по всему миру. Как инженеры компании пришли к решению использовать QUIC в продакшене, как проводили тесты и что увидели после раскатки в прод – под катом.

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

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

(+35) Функциональный Swift [5]
(+26) iOS 13 под лупой [6]
(+15) Защищаем резервные копии iPhone [7]
(+8) Сила дженериков в Swift. Часть 2 [8]
В веб-версии App Store появились “Истории” [9]
App Report Status: уведомления о выходе отчетов Apple [10]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 6 Секреты фреймворка MediaPlayer для iOS [11]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 7 Делаем секундомер на SwiftUI [12]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 8 9 способов ускорить ваш Swift-код [13]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 9 Как сделать экран онбординга на SwiftUI [14]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 10 Работаем с конфигурационными файлами Xcode [15]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 11 Реальное юнит-тестирование в Swift [16]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 12 Построение графиков с Shape API в SwiftUI [17]

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

(+136) Почему в Google Play мало инновационных приложений или почему иногда программирование — это магия [18]
(+20) Дзен изолированных компонентов в Android-архитектуре [19]
(+20) Фантастические плагины, vol. 1. Теория [20]
(+12) Подготовка приложения к Android Q. Часть 1 [21]
(+10) #18 Mosdroid Argon — отчет [22]
(+4) Как просто подключить и начать печатать через портативный Bluetooth принтер EPS/POS в приложении Xamarin Android [23]
Все новые приложения в Google Play будут рассматривать 3 дня [24]
Как установить цену на подписку в новой стране в Google Play? [25]
Исходники приложения Google I/O 2019 [26]
Магазин приложений AppGallery от Huawei: почему надо заниматься им уже сейчас? [27]
Индексирование приложений в Google Play: смысл, а не слова? [28]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 14 Навигация жестами в Android: история появления [29]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 15 Coil: Kotlin-библиотека для загрузки изображений на Android [30]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 16 Android: полноэкранный UI с прозрачным статус баром [31]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 17 Android RecyclerView с красивыми анимациями [32]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 18 Мультиплатформенная библиотека с Kotlin [33]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 19 Работаем с Room: предварительное наполнение базы с помощью одного метода [34]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 20 Эксперименты с движением в Android [35]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 21 Дополненная реальность в Android-приложениях с ARCore [36]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 22 10 советов разработчикам Android-библиотек [37]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 23 Использование Navigation Component в модульном мире [38]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 24 Полночь в Android-темах [39]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 25 Все мои книги в AR [40]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 26 Java против Kotlin: Часть 1 – быстродействие [41]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 27 Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 28 Видео Droidcon Vietnam 2019 [42]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 29 Исходники приложения Google I/O 2019 [26]

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

(+52) Рефлексия геймдизайнера: персонажи для игры, которая не вышла [43]
(+22) Второй слой разработки (мобильной игры), что, когда и зачем [44]
(+17) Особенности тестирования мобильной ММО [45]
(+14) Семь книг для тех, кто хочет стать гейм-дизайнером [46]
(+12) (Не очень) скрытые издержки общей кодовой базы iOS и Android [47]
(+10) Как делать приложения для телефонов с ограниченными возможностями [48]
(+10) Обзор облачных сервисов для разработки бэкенда мобильных приложений [49]
(+10) Лояльность на ваш вкус [50]
(+8) Сын маминой подруги завидует: как дважды выиграть Премию Алисы [51]
(+8) Умное музыкальное радио, не требующее постоянного Интернет-соединения [52] + Алгоритм выбора и ротации треков [53]
(+4) Подключиться мобильным устройством к базе данных без написания серверного кода [54]
AppsCast #12: Карта развития мобильного разработчика [55]
Podlodka #123: Образование [56]
Визуальный сахар [57]
Huawei создает свои карты [58]
Детские игры в App Store и Google Play: Сентябрь близко! [59]
Страшный зверь Team Lead [60]
Заткнись, синдром самозванца, я отлично программирую [61]
Что не так с контекстными меню в iOS 13? [62]
Онбординг [63]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 31 Paged Out! – экспериментальный журнал для разработчиков: одна страница = одна статья [64]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 32 Монады как шаблон программирования [65]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 33 5 плохих привычек абсолютно неэффективных программистов [66]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 34 8 правил прекрасного дизайна карточек [67]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 35 8 советов для создания темных тем [68]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 36 Автоматизация релизов UI-китов [69]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 37 Настраиваем Firebase для Continuous Integration сборок [70]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 38 Как вы можете стать в 1,000,000,000 раз лучшим инженером [71]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 39 Как работает перевод денег – исследование UX [72]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 40 Как приложения создаются для манипуляции вами [73]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 41 Шаблон S.O.L.I.D в Unity [74]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 42 Максимальный результат от минимального продукта [75]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 43 GitHub не оплатит вашу арендную плату [76]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 44 50 самых влиятельных языков программирования за последние 50 лет и их создатели [77]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 45 useAnimations: библиотека микроанимаций [78]

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

AppMetrica оценивает доход в рекламной аналитике [79]
ShareChat: индийский чат на $100 млн. [80]
Мобильная реклама myTarget в первой половине 2019: отчет [81]
Brolly: страхование вещей [82]
Самая страшная ошибка в аналитике игры [83]
Как построить умную игровую экономику [84]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 47 Dr. Mario World в Google Play: анализ 30 дней роста [85]

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

(+60) Natural Language Processing онлайн-чеков: курс уроков волшебства для обычного кота и другие проблемы [86]
(+53) Лес не сдается технологиям поиска, но инженеры наносят ответный удар [87]
(+21) Протокол MQTT: концептуальное погружение [88]
(+16) Этот опасный IoT: угрозы бизнесу и способы решения проблемы [89]
(+15) Фотографии в заложниках. Первый взлом цифровых камер по WiFi (протокол PTP/IP) [90]
(+11) ShIoTiny: узлы, связи и события или особенности рисования программ [91]
Google Assistant снова победил в IQ-тесте голосовых помощников [92]
Spark AR открывают для всех [93]
Snap выпускает Spectacles 3 [94]
Skyeng выпустит свой планшет [95]
Дайджест интересных материалов для мобильного разработчика #311 (12 — 18 августа) - 49 Исследуем библиотеку React 360 VR [96]

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

Автор: DigitalEcosystems

Источник [99]


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

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

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

[1] iOS 13: Что нужно и чего совершенно не нужно делать при разработке под новую ОС: https://habr.com/ru/company/acronis/blog/463751/

[2] Протокол QUIC в деле: как его внедрял Uber, чтобы оптимизировать производительность: https://habr.com/ru/company/Voximplant/blog/463073/

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

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

[5] Функциональный Swift: https://habr.com/ru/company/oleg-bunin/blog/462121/

[6] iOS 13 под лупой: https://habr.com/ru/company/dodopizzaio/blog/463151/

[7] Защищаем резервные копии iPhone: https://habr.com/ru/post/463083/

[8] Сила дженериков в Swift. Часть 2: https://habr.com/ru/company/otus/blog/463789/

[9] В веб-версии App Store появились “Истории”: https://apptractor.ru/info/news/app-store-today-web.html

[10] App Report Status: уведомления о выходе отчетов Apple: https://apptractor.ru/info/github/app-report-status.html

[11] Секреты фреймворка MediaPlayer для iOS: https://www.vaporforums.io/viewThread/55

[12] Делаем секундомер на SwiftUI: https://medium.com/programming-with-swift/build-a-stopwatch-app-with-swiftui-7fe83ad11c24

[13] 9 способов ускорить ваш Swift-код: https://medium.com/better-programming/9-ways-to-boost-your-swift-code-performance-56e0986dd9ec

[14] Как сделать экран онбординга на SwiftUI: https://www.blckbirds.com/post/how-to-create-a-onboarding-screen-in-swiftui-1

[15] Работаем с конфигурационными файлами Xcode: https://medium.com/better-programming/working-with-xcode-configuration-files-398cfbe02b64

[16] Реальное юнит-тестирование в Swift: https://techhype.io/?story=real-world-unit-testing-in-swift

[17] Построение графиков с Shape API в SwiftUI: https://mecid.github.io/2019/08/14/building-barchart-with-shape-api-in-swiftui/

[18] Почему в Google Play мало инновационных приложений или почему иногда программирование — это магия: https://habr.com/ru/post/463281/

[19] Дзен изолированных компонентов в Android-архитектуре: https://habr.com/ru/company/badoo/blog/463781/

[20] Фантастические плагины, vol. 1. Теория: https://habr.com/ru/company/hh/blog/463583/

[21] Подготовка приложения к Android Q. Часть 1: https://habr.com/ru/company/otus/blog/463811/

[22] #18 Mosdroid Argon — отчет: https://habr.com/ru/company/lamoda/blog/462649/

[23] Как просто подключить и начать печатать через портативный Bluetooth принтер EPS/POS в приложении Xamarin Android: https://habr.com/ru/post/463691/

[24] Все новые приложения в Google Play будут рассматривать 3 дня: https://apptractor.ru/info/news/google-play-3-day.html

[25] Как установить цену на подписку в новой стране в Google Play?: https://apptractor.ru/info/articles/google-play-introductory-price.html

[26] Исходники приложения Google I/O 2019: https://apptractor.ru/info/github/google-i-o-2019.html

[27] Магазин приложений AppGallery от Huawei: почему надо заниматься им уже сейчас?: https://apptractor.ru/deploy/app-stores/appgallery.html

[28] Индексирование приложений в Google Play: смысл, а не слова?: https://apptractor.ru/marketing-monetization/app-store-optimization/google-play-indexing.html

[29] Навигация жестами в Android: история появления: https://android-developers.googleblog.com/2019/08/gesture-navigation-backstory.html

[30] Coil: Kotlin-библиотека для загрузки изображений на Android: https://tech.instacart.com/introducing-coil-kotlin-first-image-loading-on-android-f0fdc7a2a99e

[31] Android: полноэкранный UI с прозрачным статус баром: https://proandroiddev.com/android-full-screen-ui-with-transparent-status-bar-ef52f3adde63

[32] Android RecyclerView с красивыми анимациями: https://medium.com/better-programming/android-recyclerview-with-beautiful-animations-5e9b34dbb0fa

[33] Мультиплатформенная библиотека с Kotlin: https://medium.com/better-programming/a-multi-platform-library-with-kotlin-episode-1-6c0f46d49944

[34] Работаем с Room: предварительное наполнение базы с помощью одного метода: https://medium.com/androiddevelopers/packing-the-room-pre-populate-your-database-with-this-one-method-333ae190e680

[35] Эксперименты с движением в Android: https://medium.com/snapp-mobile/experimenting-with-motion-in-android-9283962ae0ef

[36] Дополненная реальность в Android-приложениях с ARCore: https://medium.com/corebuild-software/augmented-reality-in-android-apps-using-arcore-c6fba0897ce1

[37] 10 советов разработчикам Android-библиотек: https://proandroiddev.com/10-tips-for-android-library-developers-c2275ad46fe8

[38] Использование Navigation Component в модульном мире: https://medium.com/@kurt.r.acosta/using-the-navigation-component-in-a-modular-world-e7578825962

[39] Полночь в Android-темах: https://arturdryomov.online/posts/midnight-in-android-themes/

[40] Все мои книги в AR: https://medium.com/@intmainreturn00/all-my-books-in-ar-c4d740a3ecbb

[41] Java против Kotlin: Часть 1 – быстродействие: https://medium.com/@bards95/comparative-evaluation-of-selected-constructs-in-java-and-kotlin-part-1-dynamic-metrics-2592820ce80

[42] Видео Droidcon Vietnam 2019: https://apptractor.ru/info/media/droidcon-vietnam-2019.html

[43] Рефлексия геймдизайнера: персонажи для игры, которая не вышла: https://habr.com/ru/company/pixonic/blog/463325/

[44] Второй слой разработки (мобильной игры), что, когда и зачем: https://habr.com/ru/post/463405/

[45] Особенности тестирования мобильной ММО: https://habr.com/ru/post/463617/

[46] Семь книг для тех, кто хочет стать гейм-дизайнером: https://habr.com/ru/post/463805/

[47] (Не очень) скрытые издержки общей кодовой базы iOS и Android: https://habr.com/ru/post/463921/

[48] Как делать приложения для телефонов с ограниченными возможностями: https://habr.com/ru/company/digital-ecosystems/blog/463889/

[49] Обзор облачных сервисов для разработки бэкенда мобильных приложений: https://habr.com/ru/company/surfstudio/blog/463435/

[50] Лояльность на ваш вкус: https://habr.com/ru/company/X5RetailGroup/blog/463297/

[51] Сын маминой подруги завидует: как дважды выиграть Премию Алисы: https://habr.com/ru/company/just_ai/blog/463981/

[52] Умное музыкальное радио, не требующее постоянного Интернет-соединения: https://habr.com/ru/post/463431/

[53] Алгоритм выбора и ротации треков: https://habr.com/ru/post/464053/

[54] Подключиться мобильным устройством к базе данных без написания серверного кода: https://habr.com/ru/post/463437/

[55] AppsCast #12: Карта развития мобильного разработчика: https://apptractor.ru/info/media/appscast-12.html

[56] Podlodka #123: Образование: https://apptractor.ru/learn/podlodka-123-2.html

[57] Визуальный сахар: https://apptractor.ru/info/articles/vizualnyiy-sahar.html

[58] Huawei создает свои карты: https://apptractor.ru/info/news/huawei-map-kit.html

[59] Детские игры в App Store и Google Play: Сентябрь близко!: https://apptractor.ru/develop/kids-games.html

[60] Страшный зверь Team Lead: https://apptractor.ru/develop/grigoriy-petrov-strashnyiy-zver-team-lead.html

[61] Заткнись, синдром самозванца, я отлично программирую: https://apptractor.ru/info/articles/zatknis-sindrom-samozvantsa-ya-otlichno-programmiruyu.html

[62] Что не так с контекстными меню в iOS 13?: https://ux.pub/chto-ne-tak-s-kontekstnymi-menyu-v-ios-13/

[63] Онбординг: https://designpub.ru/onboarding-664b2c64ac22

[64] Paged Out! – экспериментальный журнал для разработчиков: одна страница = одна статья: https://pagedout.institute/

[65] Монады как шаблон программирования: https://samgrayson.me/2019-08-06-monads-as-a-programming-pattern/

[66] 5 плохих привычек абсолютно неэффективных программистов: https://towardsdatascience.com/5-bad-habits-of-absolutely-ineffective-programmers-e74b74add9ca

[67] 8 правил прекрасного дизайна карточек: https://uxdesign.cc/8-rules-for-perfect-card-design-4fb7eef32e09

[68] 8 советов для создания темных тем: https://uxplanet.org/8-tips-for-dark-theme-design-8dfc2f8f7ab6

[69] Автоматизация релизов UI-китов: https://medium.com/significa/automation-for-ui-kits-f506f79b0fe9

[70] Настраиваем Firebase для Continuous Integration сборок: https://proandroiddev.com/configure-firebase-project-for-continuous-integration-builds-833f08561a73

[71] Как вы можете стать в 1,000,000,000 раз лучшим инженером: https://medium.com/forwardtick/how-to-become-a-1-000-000-000x-engineer-45e40d24815a

[72] Как работает перевод денег – исследование UX: https://uxdesign.cc/ux-case-study-venmos-pay-request-money-feature-b3499952e41e

[73] Как приложения создаются для манипуляции вами: https://uxdesign.cc/how-your-apps-are-designed-to-manipulate-you-a5c5dd90740d

[74] Шаблон S.O.L.I.D в Unity: https://techhype.io/?story=s-o-l-i-d-design-patterns-unity-single-responsibility-principle

[75] Максимальный результат от минимального продукта: https://uxdesign.cc/getting-maximum-impact-from-a-minimum-valuable-product-2b524b07523c

[76] GitHub не оплатит вашу арендную плату: https://medium.com/@kitze/github-stars-wont-pay-your-rent-8b348e12baed

[77] 50 самых влиятельных языков программирования за последние 50 лет и их создатели: https://medium.com/better-programming/the-10-most-influential-programming-languages-of-the-last-50-years-and-their-creators-6559bb9ce224

[78] useAnimations: библиотека микроанимаций: https://apptractor.ru/info/github/useanimations.html

[79] AppMetrica оценивает доход в рекламной аналитике: https://apptractor.ru/measure/user-analytics/appmetrica-money-talk.html

[80] ShareChat: индийский чат на $100 млн.: https://apptractor.ru/info/techhype/sharechat.html

[81] Мобильная реклама myTarget в первой половине 2019: отчет: https://apptractor.ru/marketing-monetization/ad-networks/macaw-mytarget-h1-2019.html

[82] Brolly: страхование вещей: https://apptractor.ru/info/techhype/brolly.html

[83] Самая страшная ошибка в аналитике игры: https://apptractor.ru/measure/user-analytics/game-analytics-errors.html

[84] Как построить умную игровую экономику: https://apptractor.ru/develop/kak-postroit-umnuyu-igrovuyu-ekonomiku.html

[85] Dr. Mario World в Google Play: анализ 30 дней роста: https://techhype.io/?story=dr-mario-world-for-google-play-30-day-growth-analysis-infographic

[86] Natural Language Processing онлайн-чеков: курс уроков волшебства для обычного кота и другие проблемы: https://habr.com/ru/company/lanit/blog/462959/

[87] Лес не сдается технологиям поиска, но инженеры наносят ответный удар: https://habr.com/ru/post/463667/

[88] Протокол MQTT: концептуальное погружение: https://habr.com/ru/post/463669/

[89] Этот опасный IoT: угрозы бизнесу и способы решения проблемы: https://habr.com/ru/company/zyxel/blog/463835/

[90] Фотографии в заложниках. Первый взлом цифровых камер по WiFi (протокол PTP/IP): https://habr.com/ru/post/463881/

[91] ShIoTiny: узлы, связи и события или особенности рисования программ: https://habr.com/ru/post/463285/

[92] Google Assistant снова победил в IQ-тесте голосовых помощников: https://apptractor.ru/info/analytics/annual-digital-assistant-iq-test.html

[93] Spark AR открывают для всех: https://apptractor.ru/info/news/spark-ar.html

[94] Snap выпускает Spectacles 3: https://apptractor.ru/info/devices/spectacles-3.html

[95] Skyeng выпустит свой планшет: https://apptractor.ru/info/devices/skyeng-math-pad.html

[96] Исследуем библиотеку React 360 VR: https://medium.com/better-programming/exploring-react-360-vr-library-7260d51dc776

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

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

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