В этом выпуске разбираемся с оперативной памятью и подписками, с безопасностью и амбициозными проектами, с полезными привычками и самыми-самыми приложениями, с тем как дизайн может убить ваш продукт и многим другим!


Из года в год Android-производители форсируют железную часть смартфонов: 108 МП, 8к-видеосъемка 12гб оперативной памяти… Но подождите, у iPhone всего 4 ГБ ОЗУ. И это не мешает ему работать на уровне или даже быстрее своих конкурентов! И как же удалось компании Apple добиться такого результата? С каждым годом требования к in-app подпискам в мобильных приложениях в App Store и Google Play меняются, становится все сложнее учесть их с первого раза и не получить серию реджектов, тем самым откладывая релиз порой на несколько месяцев. Если про требования для App Store уже достаточно много публикаций, то с правилами in-app подписок для Google Play все еще иногда возникают вопросы.

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

iOS

(+48) Так ли безопасен ваш iPhone? Обзор уязвимостей и тайных ходов в iOS
(+26) Как Apple при помощи нерыночных методов занимается вымогательством у разработчиков
(+8) Материалы Avito iOS meetup #8: видео и презентации
(+7) Создаем калькулятор на Swift 5
(+6) AppCode 2020.2: поддержка Swift Package Manager, улучшенное быстродействие, Change Signature для Swift и многое другое
(+4) Реализация Grid раскладки на SwiftUI
Apple фактически запретила стриминговые игры Stadia и xCloud
Apple опубликовала требования к браузерами и почтовым клиентам по умолчанию
Фил Шиллер перестанет заниматься маркетингом Apple
Apple купила канадский финтех Mobeewave
Тысячи приложений удалены из китайского App Store
Делаем прилипчивый заголовок в ScrollView на SwiftUI
Делаем перетаскиваемую карточку на SwiftUI
Apple может потерять толпу разработчиков
matchGeometryEffect от SwiftUI в iOS 14
Современные модульные приложения с Xcode 12 и Swift Package Manager
Почему SwiftUI делает вас лучшим программистом
Распознавание текста на iOS-устройстве с помощью SwiftUI
Чистый AppDelegate
Сделайте ваше приложение на SwiftUI масштабируемым и готовым к разным размерам экрана
iOS-разработка в VSCode
SwiftFortuneWheel: «Колесо фортуны» на Swift
YouTag: музыкальный плеер для iOS

Android

(+17) Композитная сборка как альтернатива buildSrc в Gradle
(+11) Android изнутри: сравнение Dalvik и ART
(+7) Трансформация Android-разработки с Jetpack Compose и Корутинами
(+7) RecyclerView.ItemDecoration: используем по максимуму
(+7) RxRelay – это магия? Subject vs RxRelay
(+6) Реализация функции сканирования штрихкодов с помощью HMS Core Scan SDK
(+5) Топ самых важных функций Android для слепых – мнение незрячих экспертов
Xiaomi отказалась от программы Android One
Google стал продавцом ВСЕХ приложений в Европе
Android Broadcast: ламповые посиделки. Артем Зиннатуллин@Lyft
Union, Intersect, Subtract в Kotlin
ViewPager2 – копаемся во внутренних API для работы с DiffUtil
Как оставаться современным Android-разработчиком
Реверс-инжиниринг Android-приложений
Внедрение поискового фильтра с использованием Kotlin Channels и Flows
Используем In-App Review API для отзывов в Google Play
Шаблон Репозиторий в Android
Material Components для Android 1.2.0
GraphView: графики для Android
Scrcast: запись экрана в приложении для Android

Разработка

(+25) Сказ о разработке амбициозного проекта 16-ти летним парнем (file547)
(+13) Какие навыки можно прокачать на проекте c большой кодовой базой
(+10) Защищаемся от трекеров на мобильных платформах
(+8) FigmaExport: как автоматизировать экспорт UI-Kit из Figma в Xcode и Android Studio проекты
(+6) Управление сценами в Unity без боли и страданий
(+5) Тестирование для мобильных разработчиков: полезные видео с Android-митапа
make sense: О практике Jobs-To-Be-Done, разных уровнях применения, мифах и вреде продуктоцентричности
Podlodka #175: имитационное моделирование
Google запустил распознавание рукописного ввода в ML Kit
Дизайн приложений: примеры для вдохновения #12
5 вещей, которые лучше понять до того, как начать стажировку в стартапе
Дело о Маленьких и Больших Буквах
Тестирование сервиса без ругани с программистом
Почему быстрый дизайн убьёт ваш продукт?
Правила хорошего интерфейса: изучаем UI-дизайн на примере LEGO
Как сделать многопользовательскую (.io) веб-игру
Slack теряет разработчиков, Discord получает
Я сделал Plague Inc. для калькулятора
Как индустрия рингтонов проложила путь магазинам приложений, а затем исчезла
Как Flutter выиграет десктопы
4 ключевых фактора, которые нужны, чтобы стать успешным разработчиком
Конфигурируем VS Code как профессионалы
Что делает движок Godot отличным для приложений с продвинутым GUI
Как я повысил производительность программной системы на 35,000%
Единственный фактор, который сделает вас Senior-разработчиком
Мои 2 цента о кроссплатформе
Миф о стоимости качества ПО
Локализуйте свое приложение на Flutter за 3 шага
Уроки, извлеченные из создания первых 10 коммерческих приложений на Flutter
6 советов разработчикам по борьбе с синдромом самозванца
FigmaToCode: макет в код для Flutter и SwiftUI

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

(+13) [Фреймворк формирования полезных привычек] и максимального вовлечения юзеров на примере изучения английского языка
(+1) Как IDFA и контроль клиентских данных приведут к доверительному маркетингу
LOVEMOBILE #08: Adjust
Самые скачиваемые приложения в июле 2020
Самые зарабатывающие приложения в июле 2020
Radish: микрочтение фантастики
Доходы мобильных игр во 2 квартале поставили новый рекорд
Как игра One Guy Run получила 100.000+ установок за 2 дня?
Мобильное видео заменяет телевизор
iOS 14 & IDFA & мобильная атрибуция трафика: глобальное изменение на мобильном рынке рекламы
Тестирование цен для подписных приложений
Как разработать приложение, которое само по себе продвигает
Платные приложения мертвы. Что будет дальше с монетизацией?
12 правил виральности, которые я узнал, создавая видео-приложение со взрывным ростом

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

(+32) Языковые модели как двигатель прогресса: необычные применения для GPT-3
(+20) Как машинное обучение спасает деревья в Екатеринбурге
(+14) Azure RTOS. Часть 1: обзор и запуск (STM32 + CubeIDE + HAL)
Исследователи сделали ИИ для превращения селфи в нормальные портреты
Google представил Pixel 4A

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