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

В новом дайджесте боремся с потерями пушей, разбираемся с музыкой Apple, изучаем работу звука в Android, экономим деньги при разработке игры, ищем приложение Росстата, отличаем плохой дизайн от хорошего и даже пытаемся понять, безопасен ли будет шарф от Xiaomi.

xevx5b_k6zne0mxovqxabahnmja.jpeg

Руководитель iOS-группы Яндекс.Почты Ася Свириденко докажет, что даже с учетом ограничений системы, с потерями push-уведомлений можно и нужно бороться, если они критичны для вашего приложения.

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

f1930ac4945596eb9707bc7a01bc5bdc.pngiOS

(+22) Не всплывай! Прерываемые транзишены в iOS
(+17) Apple Music для разработчика
(+15) Оборачиваем последовательности в Swift
(+7) Кто кушает память нашего iPhone? Чистим яблоки
• Google раскрыл «одну из самых масштабных атак на iPhone»
• Инди-хит Dead Cells вышел на iOS
976d3e38a34b003f86f91795524af9f8.gifВидео Swift TO
377ae0333d0f4b7b97307c9eea5ee21a.gifАнимированные градиенты на Swift
377ae0333d0f4b7b97307c9eea5ee21a.gif5 новых интересных iOS-библиотек
377ae0333d0f4b7b97307c9eea5ee21a.gifПример масштабируемого iOS-проекта
377ae0333d0f4b7b97307c9eea5ee21a.gifSwift — 7 мощных анимация для улучшения интерфейса вашего приложения
377ae0333d0f4b7b97307c9eea5ee21a.gifВведение в Swift Combine
377ae0333d0f4b7b97307c9eea5ee21a.gifКак создать парсер JSON на Swift с помощью дженериков
377ae0333d0f4b7b97307c9eea5ee21a.gifКомплексное руководство по контекстным меню в iOS
377ae0333d0f4b7b97307c9eea5ee21a.gifЧистая архитектура и MVVM на iOS
377ae0333d0f4b7b97307c9eea5ee21a.gif15 быстрых способов уулчшить Swift-код
377ae0333d0f4b7b97307c9eea5ee21a.gifGithub Actions CI для Swift-проектов
377ae0333d0f4b7b97307c9eea5ee21a.gifДелаем кастомные анимации переходов для iOS
377ae0333d0f4b7b97307c9eea5ee21a.gifКак программно добавить View тени и закругления на Swift

e1a3cf2a8b65a0da69bbdd5c0ad040fe.pngAndroid

(+4) Сборка Android-проекта в Docker-контейнере
6861c1045bee84154ebf29f5cc1fb355.pngAndroid Dev Podcast #101: Работа звука и со звуком в Android
6861c1045bee84154ebf29f5cc1fb355.pngAndroid Dev Podcast #102: Новости
• Google выплачивает деньги за поиск уязвимостей в сторонних приложениях для Android
976d3e38a34b003f86f91795524af9f8.gifВидео Droidcon Berlin
377ae0333d0f4b7b97307c9eea5ee21a.gifЗлоупотребление WebViews для кражи файлов по электронной почте
377ae0333d0f4b7b97307c9eea5ee21a.gifБета-релиз книги «Эффективный Kotlin»
377ae0333d0f4b7b97307c9eea5ee21a.gifИзучаем ConstraintLayout — готовые шаблоны
377ae0333d0f4b7b97307c9eea5ee21a.gifПрактическое использование PorterDuff на Android
377ae0333d0f4b7b97307c9eea5ee21a.gifМодульность Android-проекта
377ae0333d0f4b7b97307c9eea5ee21a.gifРазметка Activity и Fragment с помощью AndroidX
377ae0333d0f4b7b97307c9eea5ee21a.gifЭмоциональный интеллект: создавайте умные анимации
377ae0333d0f4b7b97307c9eea5ee21a.gifСоздание приложения для удаленной камеры на Android
377ae0333d0f4b7b97307c9eea5ee21a.gifGoogle только что удалил мое 10-летнее бесплатное open source приложение для Android
96716bcb926741e79bb1c284a88083ca.pngAndroid Showcase: лучшие практики Android-разработки

7081c634ec176ab6b953d9d19e82a09a.pngРазработка

(+31) Я самый большой скупердяй в инди-разработке игр
(+16) Ограничения 16-битных игр и их воссоздание в Unity
(+16) Cоздание визуальных компонентов в Unity UI. Система частиц
(+11) Пиксельный Lo-fi в Unity
(+2) Статическая типизация в React приложении
(+1) Мобильные отчеты на Oracle BI EE 12c — на раз, два, три
976d3e38a34b003f86f91795524af9f8.gifВидео DevGAMM Moscow 2019
• AppsCast #13: Accessibility
• Podlodka #126: Осознанность
• Счетная палата не нашла приложения Росстата
• Что общего между строительством оперного театра и разработкой?
• Coursera запускает практическую Coursera Labs
• Treefort: обсуждение roadmap-а с пользователями
• Научим плохому: 6 худших советов по созданию продуктов для Chief Digital Officer
• 6 шагов: Как отличить хороший дизайн от плохого
• Четкий фокус с доходом в $50 млн
• Узнать, что продукт стал слишком сложным, и упростить его
• Принципы и лучшие практики онбординга пользователей
• Сколько стоит приложение
• Спроектировать разные состояния интерфейса и не запутать пользователя
• В каких случаях необходимы кнопки с индикатором загрузки
377ae0333d0f4b7b97307c9eea5ee21a.gifВыбор первого языка программирования для детей и начинающих
377ae0333d0f4b7b97307c9eea5ee21a.gifКонцепции UI для книжного приложения
377ae0333d0f4b7b97307c9eea5ee21a.gifПереосмысливаем календарь
377ae0333d0f4b7b97307c9eea5ee21a.gifКак разработчику справляться со стрессом: практические советы
377ae0333d0f4b7b97307c9eea5ee21a.gifОценка безопасности строительной площадки на iOS с помощью машинного обучения
377ae0333d0f4b7b97307c9eea5ee21a.gifПочему я перевел разработку Social Radio на Flutter

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

(+16) «Есть все, что нужно, и ничего не бесит» — устами клиента глаголет истина
(+10) Как изменить стоимость созданной подписки в вашем приложении. App Store Connect и Google Play Console
• Большая рыба: как анализировать пользователей, чтобы потом они приносили прибыль
• Приобретение пользователей для мобильных игр в 2019: отчет Liftoff и AppsFlyer
• Акции в играх: как найти оптимальную стратегию скидок
• Мобильный eCommerce: привлечение установок
• Сколько нужно загрузок для первого места в App Store и Google Play в 2019?
• Самые зарабатывающие приложения в России в июле 2019
377ae0333d0f4b7b97307c9eea5ee21a.gifМобильные приложения для пожилых людей: огромный и недооцененный рынок

8538129f5e7b404a720121cb9c3814db.jpgAI, Устройства, IoT

(+47) Записки IoT-провайдера. Проклятие импульсного выхода
(+21) Распознавание лиц с помощью сиамских сетей
(+19) Как я учил змейку играть в себя с помощью Q-Network
(+18) Как я построила прогнозную модель call-центра, чтобы их звонки не бесили пользователей
• Samsonite и Panasonic разрабатывают умный чемодан
• Facebook тренирует универсальный ИИ в Minecraft
• Xiaomi готовит умный шарф
377ae0333d0f4b7b97307c9eea5ee21a.gifSwift на Raspberry Pi
377ae0333d0f4b7b97307c9eea5ee21a.gifБольшая часть VR — полная ерунда

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

© Habrahabr.ru