Mobile Development by AppTractor
11K subscribers
1.87K photos
39 videos
11 files
4.65K links
Цифры, советы и все интересное о разработке мобильных приложений и сервисов. Комментарии и вопросы можно писать прямо @lbogolubov

• Аудитория https://t.me/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Google открыл доступ к своей платформе распространения контента Media CDN, на которой работает и YouTube. Говорится о более чем 1300 городах в 200 странах, различным умным технологиями и протоколам, которые существенно снижают нагрузку на источник. Любопытны две вещи. Во-первых, оказывается, рынок CDN довольно приличен и растет - на 7% в 2020 году до 4.45 млрд долларов. Во-вторых, Google не был бы Googl-ом, если бы не встроил в это дело рекламу. Платформа сразу предлагает функции, позволяющие динамически вставлять рекламу в видеоконтент, сервис «построен с использованием AI/ML» для обеспечения интерактивных возможностей, таких как статистика в реальном времени во время спортивных мероприятий или ссылки для покупок, встроенные в виртуальные билборды. Так что компания заработает дважды - и на продаже услуг CDN, и на показе рекламы в распространяемом контенте.

Разработка

Google открывает доступ к Media CDN
Краткий анализ лучших мобильных игр в Twitter
Искусство продуктового менеджмента. Важность софт скилов
AppYou.ru — универсам мобильных приложений и телеграм ботов
· Полное руководство по анимациям во Flutter
· 14 датасетов для вашего следующего Data Science проекта
· Как масштабировать приложение для поддержки миллионов пользователей
· Современные рекомендательные системы с нейронными сетями
· Разбор инцидента Slack 22-22-22

iOS

Шесть принципов, которые помогут лучше писать модули для iOS-приложений
· TDD для начинающих — с примерами на Swift
· Эволюция архитектуры приложения Medium для iOS
· Почему iOS-разработчики никогда не должны использовать iCloud в своих приложениях

Android

Google Play начинает внедрение пометок о конфиденциальности данных
Вышла первая публичная бета-версия Android 13
Количество приложений в Google Play сокращается
Awesome Android Lint: лучшие правила
Четыре всадника апокалипсиса джуна Android разработчика
· Однонаправленная связь сервер-клиент с использованием SSE в Android
· Метапрограммирование с Kotlin для Android
· Compose или не Compose, вот в чем вопрос
👍5🔥1
Прямо рефреном ко вчерашней статистике о количестве приложений - Google отчитался, что в 2021 году заблокировал в Google Play более 1,000,000 приложений, нарушающих политики компании. При этом 190,000 учетных записей разработчиков были заблокированы за злонамеренное поведение. Конечно, в этом не обошлось без разногласий, особенно с некоторыми реальными учетными записями, попавшими под перекрестный огонь машинного обучения, однако цифры вредоносной активности впечатляют.
👏1
📱 Стратегии роста мобильных продуктов — воркшоп от Appbooster

7 мая в Appbooster Academy пройдёт 5-часовой интенсивный воркшоп, на котором вы за ОДИН ДЕНЬ научитесь:

✔️ Быстро считать экономику любого мобильного приложения
✔️ Оценивать, как продуктовые изменения повлияют на экономику
✔️ Приоритезировать гипотезы на основе данных
✔️ Прогнозировать окупаемость привлекаемого трафика
✔️ Расчитывать сроки окупаемости и объём инвестиций проекта в целом

Встреча состоится в Zoom. Это онлайн-воркшоп, а значит главное — практика. Разобьёмся на команды и будем решать кейсы, основанные на реальных данных.

🙋‍♂️ Спикер: Антон Лобачев, Senior Product Manager, эксперт в мобильном маркетинге и аналитике. Работает в digital c 2011 года, с 2016 развивает продукты в Appbooster.

📆 Когда: 7 мая, начало в 11:00 (МСК)
🏷 Стоимость до 1 мая: 3 900 ₽

Полная информация о воркшопе и программа — по ссылке.

Регистрируйтесь — до встречи 7 мая! 🚀
👍3
Чистый код не только хорошие продукты, но и хороший бизнес. SonarSource, которая предоставляет открытые и коммерческие анализаторы кода, помогающие разработчикам управлять качеством кода, сообщила о привлечении 412 миллионов долларов при оценке в 4.7 миллиарда. Понравился комментарий CEO по этому поводу: «Мы даем возможность компаниям сделать исходный код активом, а не пассивом. Это имеет огромное значение, особенно когда вы знаете, что это делается в рамках процесса разработки и не требует дополнительных усилий». Код как актив - правильная концепция 😀

Разработка

$412 млн: SonarSource — чистый код для всех
“ATT — 1 год”: отчет AppsFlyer
Локализация продукта и её подводные камни
Альф, переведи мне на телефон миллион рублей
Как мы сделали мобильные устройства круглосуточно доступными для распределенной QA-команды и не только
Go для самых маленьких. Разрабатываем для Arduino и других микроконтроллеров
Хороший дизайн сводится к своевременности
× 7 причин, по которым я объясняю ответ во время собеседования
× Как в такой игре, как Candy Crush, создаются уровни?
× Чистый код — практический подход
× Лучшие вызовы API во Flutter
× Худшая ошибка — случайная потеря лучших игроков
× Как настроить среду разработки для машинного обучения

iOS

Как использовать дженерики в Swift
YPImagePicker: выбор фото, как в Instagram
× Локализация в приложении iOS с MapKit и CoreLocation
× 3 причины, почему мне не нравится SwiftUI
× Два способа юнит-тестирования центра уведомлений в Swift

Android

Google в 2021 заблокировал более 1М приложения и 190К разработчиков
Топ вопросов работодателю от Android-разработчика
× Мой путь в размещении моего open source приложения в Google Developers Dev Library
× Понимание функций Kotlin Scope за 2 минуты
👍4
А мне вот, например, нравится, как Snap делает свои устройства. С удовольствием, ярко. Не тяжелая поступь Hololens, а веселые Spectacles с улыбающимися вендинговыми автоматами. Не тяжелый дрон, на котором надо учиться летать три дня, а Pixy на 101 грамм для съемки фото, у которого одна кнопка и один переключатель. Вряд ли он сильно повлияет на доходы компании, тем более, что планируется ограниченная серия, но, как пишет TechCrunch, “кажется, что команда Snap, отвечающая за этот проект, получила массу удовольствия от его разработки”. И это главное.
👍8🔥2
На что сейчас наибольший спрос? Кто сегодня самый активный на рынке? Какое должно быть приложение для эффективного продвижения?

В подкасте “Современный маркетинг и smm” вышел интересный эпизод с продакт-менеджером Яндекс Рекламы Вадимом Костомаровым. Он рассказал про создание и продвижение мобильных приложений, бюджеты, стратегии и многое другое.

Подкаст:
https://music.yandex.ru/album/12596220/track/104179567?dir=desc
🔥5👍1
Наш традиционный большой еженедельный дайджест со всеми 110 материалами за неделю. Поставьте лайк, поделитесь с коллегами, вот это все.
👍23
Google запустил обучающий курс «Основы Android с Compose». Подобно курсу «Основы Android на Kotlin», «Основы Android с Compose» обучает основам программирования на Kotlin. Вам не нужен какой-либо предыдущий опыт программирования, кроме базовой компьютерной грамотности, чтобы начать обучение. Курс не только охватывает самые последние методы создания приложений для Android, но и разработан таким образом, чтобы вам было проще и интереснее изучать Android-разработку. Два этих курса имеют схожие структуры и во многих случаях они используют одни и те же примеры, но написаны с использованием разных наборов инструментов пользовательского интерфейса. Это позволяет вам видеть, сравнивать и изучать различия между View и Compose, вы даже можете работать с обоими курсами одновременно.
👍10
Во первых строках - занятная история про баг в IAP-библиотеке от Unity (!), который приводил к фризу и падению всей игры. Сложно представить чувства разработчика, который отвечал за встроенные покупки, но описывает он все сейчас с известной долей юмора. Что делать тем, у кого нет приоритетной поддержки и кому не отвечают за часы, он, правда, благородно умалчивает.

Разработка

Худший баг в истории — случайная потеря лучших игроков
$20 млн в Серии A: Graphite — простой и быстрый Code Review
Blizzard анонсирует Warcraft: Arclight Rumble
$37 млн в Серии B: LottieFiles — анимации для приложений
«Java для начинающих»: новый обучающий курс от Microsoft
Aurora OS: первый взгляд
Podlodka #265: Erlang
Lens Cloud предлагает бэкенд для AR-разработчиков Snap
Snap выпустил мини-дрон для съемки фото и видео
Как рефакторинг помогает улучшить производительность разработчиков и повысить качество приложений
Round Table: архитектурный UI паттерн для iOS платформы
Как начать писать приложения на ClojureDart
React Native 0.68 и «новая архитектура»
Детали хорошего дизайна

iOS

Apple уточнила правила удаления устаревших приложений
SwiftUI Introspect: доступ к UIKit из SwiftUI
Делаем патч для Pods библиотеки
Делайте все UIKit View в UITableView
Flow Navigation с помощью SwiftUI
Анализ текста в реальном времени с помощью Word Tagger
Создайте свой первый XCFramework

Android

Google запустил обучающий курс «Основы Android с Compose»
Управление умным домом на Kotlin
Адаптация Compose в hh.ru
LibreTube: свободный YouTube
Googlу выпустил developer preview версию Privacy Sandbox для Android
Как мы используем фича-флаги в мобильном приложении QIWI Кошелек
CI-CD: Firebase App Distribution с помощью Fastlane на Android
Любопытный случай сбоя Воркеров
Переосмысление действий пользователя для формирования лучшего однонаправленного потока данных
Почему Jetpack Compose не так прост, как кажется?
Пассивные представления: сделайте код пользовательского интерфейса простым и глупым
Создание адаптивного пользовательского интерфейса в Android
Создание надежных тестов для Android-уведомлений
👍13
На прошлой неделе появились новости о том, что Apple отправила электронные письма разработчикам, которые не обновляют свои приложения более двух лет, и угрожает удалить их, если приложения не будут обновлены в течение следующих 30 дней (позднее компания уточнила требования — три года + отсутствие загрузок — и предложила более длительный срок на обновление).

Но сколько приложений и игр может исчезнуть? Короткий ответ — много! По данным AppFigures, два года не обновлялось 752,412 приложений, созданных 260,000 уникальными разработчиками. Это очень много писем!

Сейчас в App Store 2,126,366 приложений и игр, что означает, что Apple может удалить 35% приложений.
👍2
Если вы, как и я, всегда хотели знать, как создаются тысячи уровней во всяких Candy Crush-ах, то на Reddit недавно было обсуждение. Бывший разработчик King в частности написал, что на самом деле создаются они вручную. Вот что не вручную, так это огромное тестирование и категоризация - чтобы соблюсти ту самую пресловутую пилообразную кривую сложности. И да, на самом деле в начале новой сессии игра уменьшает сложность, чтобы потрафить игроку и ввести его в поток. Это не кажется 🍭

Разработка

Обсуждение в Reddit: как в такой игре, как Candy Crush, создаются уровни?
Fleksy выпускает свой SDK для клавиатуры
Appwrite открывает фонд для поддержки проектов с открытым исходным кодом
Знай свои секреты. Поиск и автоматическая проверка секретов сторонних сервисов
Зачем ASO-специалисту работать с отзывами и как делать это правильно
7 крутых особенностей языка Dart
Полное руководство по системному дизайну 2022
Основные ошибки, которые допускают разработчики при разработке Flutter-приложения
Flutter: полная дорожная карта 2022
Subify — приложение для управления подписками — пример UI/UX
Иллюзии разработки ПО
Я заменил нативное приложение для iOS кроссплатформенным веб-приложением и никто не заметил

iOS

Apple может удалить больше 30% приложений из App Store
Возможен ли полумодальный View в SwiftUI?
Измерение производительности приложения в Swift
AR-приложение в Swift — туториал
20 лучших вопросов на собеседовании по iOS для уровня от начального до среднего

Android

Загадочная история сбоя WorkManager
Compose Animated Music Card: анимированные карточки
Kotlin, обрабатываем исключения в корутинах правильно
7 вещей, о которых нужно помнить при создании Jetpack Composable
Dagger 2 и Hilt для Android менее чем за 10 минут
Andromeda - система дизайна Jetpack Compose с открытым исходным кодом
👍4
Apple находится в центре внимания антимонопольных расследований. Сейчас в iOS 15 нашли очередной пример. Когда вы переустанавливаете приложение Apple Music из App Store, оно по умолчанию возвращается к исходному положению в доке, выкидывая при этом оттуда другие приложения.

Такое поведение было замечено Кевином Арчером. Затем пользователи попытались воспроизвести его и получили разные результаты. Некоторые сообщали, что Apple Music удаляет только сторонние приложения (а не собственные Apple). С другой стороны, некоторые пользователи обнаружили, что приложение «Музыка» также заменяет и собственные приложения компании. Помимо этого есть сообщения о том, что Apple Music снова настраивает себя в качестве музыкального проигрывателя Siri по умолчанию.

Можно предположить, что это поведение — просто ошибки, которые Apple не исправила, когда разрешила удалять системные приложения. Несмотря на это, Тим Суини из Epic Games подсуетился и уже прямо обвинил Apple в использовании преимуществ собственной ОС.
👍4
Я заменил нативное iOS-приложение кроссплатформенным веб-приложением - и никто не заметил!

Оказывается, в 2022 году для многих приложений наконец-то сбылась мечта — написать один раз и запустить где угодно. Компромисс затрат и выгод для кроссплатформенных веб-приложений всегда заключался в обмене худшей производительности на меньшее время разработки. В 2014 году для большинства приложений это был плохой компромисс. Но за последние 8 лет многое изменилось.

Перевод: https://apptractor.ru/crssnow
Платформа: кроссплатформа
👏: 1K
😁14👍8🤔5👏3
В OneSignal выпустили отчет “State of Customer Messaging 2022”, посвященный коммуникациям с пользователями. 61% респондентов заявили, что мобильные push-уведомления в настоящее время являются наиболее важным каналом для их бизнеса. Интересно, что популярность push-уведомлений не означает, что старые каналы становятся неактуальными. На самом деле, респонденты по-прежнему ставят электронную почту на второе по важности место в их продуктах. В сравнении с push-уведомления, электронная почта дольше хранится в почтовом ящике пользователя и обеспечивает больше места для контента, что делает ее хорошо подходящей для общения. Несмотря на некоторый ранний скептицизм о судьбе электронной почты в эпоху мобильных устройств, она продолжает оставаться ценным ресурсом — даже для мобильных приложений.
👍6
Если вы сомневались в том, что внедрение ATT и отказ от IDFA во многом обусловлен коммерческими мотивами, то вот вам интересная цифра - поисковая реклама в App Store в 2021 году выросла на 238% до 3.7 млрд долларов и, по прогнозам, достигнет 5.5 млрд долларов к концу этого года. Неплохая забота о конфиденциальности пользователей, правда? 😊 Собственно на волне этого успеха, Apple, как пишут, разделяет Сервисы и рекламой теперь целенаправленно будет заниматься Тодд Терези. Так что нас ждет больше рекламных продуктов.

Разработка

Apple реструктурирует Сервисы и выделяет рекламу в отдельное направление
Match Group: компания является «заложником» Google
Отчет «State of Customer Messaging 2022» от OneSignal
Самые зарабатывающие приложения США в апреле
$80 млн в Серии B: Supabase — альтернатива Firebase
Я заменил нативное iOS-приложение кроссплатформенным веб-приложением — и никто не заметил!
Podlodka #266: рекрутмент как продукт
Jugger – внедрение зависимостей как в Android
Как мы создавали движок на Unity
Зачем разработчикам игр на Unity использовать статический анализ?
10 вещей, которым я научился при проектировании децентрализованных финансовых приложений
Как «Перекрёсток» увеличил установки мобильного приложения
Если бы я мог выучить только 6 языков программирования в своей жизни, я бы выучил эти
Как стать Web3 разработчиком

iOS

Как нативно визуализировать голос в iOS
Apple Music выкидывает другие приложения из дока iOS
UIPilot: типобезопасная навигация для SwiftUI
Об архитектуре iOS-приложений
Как читать веб-сайты в SwiftUI — парсинг данных в iOS
6 советов по улучшению кода Swift
Пользовательская геометрия в SceneKit в SwiftUI
Core Data Relationship в Swift 5 — проще простого
Анимированный рейтинг в SwiftUI
Моделирование ошибок в Swift
Пишите красивый код с помощью Swift Result Builder

Android

Вышла стабильная версия Android Studio Chipmunk
PowerSpinner: выпадающие меню для Android
Android Studio. Kotlin. Подключение Google календаря через Content Provider
Хак для экономии времени при работе с Jetpack Compose
Доступность в приложении с двумя экранами
Сворачивание тулбара в Jetpack Compose - проблема, решения и альтернативы
Понимание файлов, сгенерированных Proguard, и ручная деобфускация Stacktrace
👍5🔥1
Google, конечно, навалил, будем разбираться. Вопрос в другом. Материалов столько, что уже почти каждый день подборки не влезают в стандартные посты Телеграма, приходится извращаться. Как вы относитесь к такому потоку? Нормально, нужно меньше/больше?

Разработка

Конец Продуктового менеджмента
Firebase обновляется
Представлен Flutter 3
Unity. Ленивый ECS
Flutter для Apple TV
Apple отключила оплату в App Store со счёта мобильного у «Мегафона», Yota и Tele2
Формула собеседования, благодаря которой вы получите офер FAANG/MAANG
Мой вопрос на собеседовании по программированию в Google
Никто не должен использовать резиновую уточку для отладки в 2022
Ваша история коммитов Git должна читаться как историческая книга
Почему деление на 0 не приводит к ошибке в Dart
Я прощаюсь с Firebase
Самая грустная история «Just Ship It»
Flutter и работа с нативным кодом

iOS

CHIPageControl: анимированные индикаторы страниц
5 актуальных расширений Xcode для оптимизации разработки
Создание списка для выбора с использованием дженериков
SwiftUI: выбор архитектуры приложения
Как мы используем SwiftUI в приложении Medium для iOS

Android

Новое в инструментах Android-разработки
Jetpack Compose Beta 1.2
Jetpack Compose для Wear OS
Новый Health Connect - API для безопасного доступа к данным о здоровье
Google Play запускает кастомные продуктовые страницы и события
Google Play предлагает предоплаченную подписку и снижает минимальную цену до 5 центов
Вторая бета Android 13 для всех
Google представил Pixel 6a
Google Play SDK Index
Письмо счастья: как мы разделили наши сборки для AppGallery и Google Play
Принципы S.O.L.I.D. с примерами на Kotlin
Создаем собственный плагин проверки кода IntelliJ
Надежные тесты для Android-уведомлений
👍8🔥1
Наш традиционный большой еженедельный дайджест со всеми 97 материалами за неделю. По возможности поставьте лайк, поделитесь с коллегами, поддержите на Boosty - нам важно видеть живые реакции и отклики.
👍13
Планируете переезд или остаётесь в России?

Если вы разработчик и у вас есть минута времени, поделитесь планами в анонимном опросе. Там всего 7 вопросов.

Ваши ответы помогут крупному IT-работодателю понять, в каких странах стоит открывать офисы и как условия нужны разработчикам.
😁10👍3🤔3🔥1
Раньше инвестировали в лопаты, потом в магазины для лопат, а сейчас в ремонтников магазинов для лопат. Хороший пример - Komodor, платформа поиска и исправления ошибок в Kubernetes. Так что если вы можете автоматизировать сервисы третьего порядка - IAP, поиск ошибок в контейнерах или еще что-нибудь - десятки миллионов долларов вполне могут вас дождаться 😉

Разработка

$42 млн в Серии B: Komodor — платформа устранения сбоев в Kubernetes
7 причин, по которым я объясняю ответы во время технического интервью
AppsFlyer запустил Единый источник истины для iOS
Отправляем миллиард уведомлений в месяц
Podlodka #267: кодеки
$6.6 млн в посевном раунде: Novu — открытая инфраструктура уведомлений
78% пользователей отказывается от персонализированной рекламы в App Store
55+ перспективных технологий IoT, которые вы должны иметь на своем радаре (обновление 2022 года)
Найти всё, что скрыто. Поиск чувствительной информации в мобильных приложениях
«Не унывайте, пацаны»: основатели российского приложения для медитации ещё не вышли в прибыль, но уже идут в США

iOS

6 советов, как улучшить программирование в Swift
Runestone: текстовый редактор для iOS
Асинхронный код синхронно: как устроено юнит-тестирование в СберМаркете
Правильно подключаем тяжелые зависимости к Xcode проекту через Swift Package Manager
Цикл рендеринга SwiftUI
SwiftUI все еще не готов к продакшену
Значения среды как альтернатива внедрению зависимостей в SwiftUI
Предварительная выборка в iOS
Расширенные протоколы в Swift
SwiftUI для разработчиков UIKit

Android

Android и Play на Google I/O 2022
Работа с памятью в Android: GC, ARC, RAM
Вышло расширение Google Home для Visual Studio Code
Now in Android: лучшие практики Android-разработки
Знакомьтесь: библиотека TiRecycler
Как я перестал бояться и начал делиться секретами с телефоном
В России начал работать магазин приложений NashStore — российский аналог Google Play
Каталоги версий Gradle для отличного управления зависимостями
Новый способ совершать сетевые звонки на Android
Вопросы для собеседования среднего уровня по Android
Ищем ofnsrb в UI с помощью CPU профайлера в Android Studio

Кросс

Flutter Dev Podcast #35: безопасность инфраструктуры для Flutter-разработки
Kotlin 1.5.30 и KMM/KMP
Пинболл с I/O на базе Flutter и Firebase
7 удивительных инструментов разработки приложений на Flutter,
🔥8😁1🤔1