en
Feedback
Yandex for Mobile

Yandex for Mobile

Open in Telegram

Канал о мобильной разработке от Яндекса. Рассказываем о наших командах, технологиях и приглашаем на мероприятия. Чат: https://t.me/mobilesubbotnik Вопросы: @monica_kobaliia Все каналы Яндекса по стекам разработки: https://t.me/addlist/Hrq31w2p1vUyOGZi

Show more
5 024
Subscribers
-424 hours
-27 days
+2230 days
Posts Archive
⏭ Приручаем Paparazzi для проверки TalkBack Всем привет, это Владислав Шиляев, я разрабатываю Android-приложение Яндекс Почты
Приручаем Paparazzi для проверки TalkBack
Всем привет, это Владислав Шиляев, я разрабатываю Android-приложение Яндекс Почты и отвечаю за то, чтобы Почта оставалась в топе рейтинга доступности. Почта — массовый продукт, и мы хотим, чтобы приложением было удобно пользоваться всем, в том числе и людям с особенностями зрения.
В Compose за доступность отвечает семантика — информация о смысле и роли каждого элемента интерфейса. Эти характеристики собираются в семантическое дерево и передаются сервисам доступности вроде TalkBack. Встроенные компоненты поддерживают семантику из коробки, но для кастомных её приходится строить вручную, и ошибиться в этом процессе легко. 🟠 Сначала мы попробовали простое решение: сохранять семантическое дерево в файл функцией Compose UI Test printToString и сравнивать снапшоты между прогонами. Подход рабочий, но текстовый дифф получался огромным и нечитаемым. 🟠 Тогда мы подключили библиотеку для скриншот-тестов Paparazzi и её расширение AccessibilityRenderExtension. Оно рисует поверх скриншота важные для доступности свойства: например, у кнопки «Назад» сразу видно подписи Back и Button. Такой снапшот легко оценить визуально, и ревью снова стало осмысленным. 🔮 Отдельно пришлось повозиться с CI: локальные скриншоты с macOS отличались от тех, что рендерил Linux CI, из-за разного сглаживания шрифтов. Baseline мы стали записывать только на CI. А скриншоты, которые не совпали, перекладывает в репозиторий сама кастомная Gradle-задача. 🎲 Подробности и код смотрите на Хабре. В статье я разбираю, что такое доступность приложения в понимании разработчика и сколько времени занимает интеграция и поддержка нашего подхода к снапшот-тестам. Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🚀 Погружаемся в технологии на deep tech night Уже 5 сентября пройдёт deep tech night — масштабная онлайн-конференция Яндекса
🚀 Погружаемся в технологии на deep tech night Уже 5 сентября пройдёт deep tech night — масштабная онлайн-конференция Яндекса о технологических вызовах, с которыми IT-индустрия сталкивается в эпоху AI: от изменений в разработке до новых требований к архитектуре и инфраструктуре. Это событие для ML-разработчиков, бэкендеров, фронтендеров, тимлидов, аналитиков, продактов и всех, кто работает в IT-индустрии, внедряет AI в процессы, проектирует сложные системы и ищет новые решения. 🔥 Вас ждут темы от инфраструктуры и железа для нейросетей до AI-агентов и внедрения AI в разработку и два формата: 🟠 Hard — доклады о сложных и масштабных задачах для тех, кто хочет вдумчиво разобраться в технической стороне сферы. 🟠 Experiment — лайтнинги и интерактивные кейсы об экспериментах с AI-агентами, новых подходах и продуктовых находках. Для всех, кому интересно пробовать новое и следить за трендами. Среди спикеров — Мо Гавдат, десять лет руководивший бизнес-развитием в Google X, Алексей Гусаков, CTO Поисковых сервисов и ИИ, Сергей Мельник, руководитель сервиса Автономного транспорта и роботов, и другие эксперты из Яндекса и других IT-компаний. 🈲 Чтобы подключиться к онлайн-трансляции, нужна предварительная регистрация. Она также даст возможность задать вопросы экспертам в прямом эфире и первыми посмотреть запись после события. 🎲 Смотрите полную программу и регистрируйтесь на deep tech night. До встречи! Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🈲 Как мы используем скилы в агентской разработке С вами Егор Федяев, руководитель службы разработки Яндекс Про. Я отвечаю за
+8
🈲 Как мы используем скилы в агентской разработке С вами Егор Федяев, руководитель службы разработки Яндекс Про. Я отвечаю за Финтех и Легализацию для водителей и курьеров. А ещё прикладываю все усилия, чтобы внедрять в команде агентскую разработку. На Mobile Runtime я рассказал про часть нашего опыта. Речь шла о скилах и о том, как уже сегодня использовать их на максимуме возможностей. 👷‍♀️ В карточках я рассказал, какую эволюцию прошли скилы в нашей команде. 📺 А в полной записи доклада я подробнее остановился на том, в каких задачах они могут заменить MCP и что должна включать в себя архитектура скилов в ближайшем будущем. 🎲 Другие выступления с Mobile Runtime можно найти по ссылкам: 🟠 Трек AIна ютубе и в VK Видео 🟠 Трек Not so AIна ютубе и в VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🔥 Новости программы deep tech night На конференции deep tech night вас ждут два формата: • Hard — технические доклады о слож
+5
🔥 Новости программы deep tech night На конференции deep tech night вас ждут два формата: • Hard — технические доклады о сложных и масштабных задачах. Формат подойдёт тем, кто хочет вдумчиво разобраться в технической стороне темы. • Experiment — лайтнинги и интерактивные кейсы об экспериментах с AI-агентами, новых подходах и продуктовых находках. Этот формат для всех, кому интересно пробовать новое и следить за трендами. 👷‍♀️ В карточках рассказываем о новых спикерах и их темах. Смотрите полную программу и регистрируйтесь на deep tech night, которая пройдёт 5 сентября. Присоединиться к конференции онлайн можно по предварительной регистрации. 🎲 Зарегистрироваться Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🈲 SwiftSyntax: пишем свой DI-фреймворк С вами Никита Никонов, старший разработчик мобильных приложений в Яндекс Картах. На M
🈲 SwiftSyntax: пишем свой DI-фреймворк С вами Никита Никонов, старший разработчик мобильных приложений в Яндекс Картах. На Mobile Runtime я прочитал доклад о SwiftSyntax — библиотеке для работы с AST языка Swift. Она позволяет парсить исходники, генерировать код, отображать «интерактивные» ошибки (FixIt) и писать макросы. 💻 В докладе я подробно разобрал возможности библиотеки на практике. Посмотреть его можно на ютубе и в VK Видео. 🌳 Именно благодаря экспериментам со SwiftSyntax мы создали DI-фреймворк. Он называется Forest, я уже писал про него ранее. 🎲 Другие записи с Mobile Runtime можно посмотреть по ссылкам: 🟠 Трек AI на ютубе и в VK Видео 🟠 Трек Not so AI на ютубе и в VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🈲 Как (и зачем) я написал игровой движок на Swift Привет, меня зовут Владислав Прусаков, я старший мобильный разработчик в Я
+5
🈲 Как (и зачем) я написал игровой движок на Swift Привет, меня зовут Владислав Прусаков, я старший мобильный разработчик в Яндекс 360. Люблю игры и ретроконсоли, а на работе пишу на Swift. На стыке этих интересов у меня родилась идея пет-проекта, и вот уже пять лет я работаю над AdaEngine — игровым движком на Swift. 👷‍♀️ В карточках я поделился подробностями о проекте. 🎲 Страница AdaEngine на гитхабе Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🤖 Давайте соберём AI-ассистента с нуля Привет, это Тамим Аттафи, разработчик мобильных приложений в Яндекс Картах. На Mobile
🤖 Давайте соберём AI-ассистента с нуля Привет, это Тамим Аттафи, разработчик мобильных приложений в Яндекс Картах. На Mobile Runtime я провёл воркшоп, на котором мы вместе с участниками взяли кросс-платформенное KMP-приложение с картой и с нуля собрали в нём ассистента. Что было по шагам: мы подключили LLM, задали системный промпт, добавили память, чтобы сохранять контекст разговора, научили агента вызывать инструменты для поиска мест и взаимодействия с картой. 💻 Вы тоже можете попробовать: воркшоп есть в записи на ютубе и в VK Видео. 🎲 Посмотреть другие записи с Mobile Runtime можно в плейлистах: 🟠 Трек AI на ютубе и в VK Видео 🟠 Трек Not so AI на ютубе и в VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🤔 Что будет с мобильной разработкой через 5 лет? Мы спросили об этом гостей Mobile Runtime 2026 и узнали, что всё будет так же, но по-другому. Кстати, заодно выяснили, какую долю задач за ребят уже делает AI (спойлер: большую). Приглашаем посмотреть доклады с Mobile Runtime: 🟠 Трек AI — на ютубе и в VK Видео 🟠 Трек Not so AI — на ютубе и в VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🤔 Чем живёт разработчик мобильных приложений Это Лев Бондаренко, старший iOS-разработчик из Яндекс Еды. В новом выпуске 1×1 он рассказал о работе, фронтенде и бэкенде в мобильной разработке и своих любимых проектах. Смотрите интервью на ютубе или в VK Видео, чтобы узнать: 🟠 Какое у Льва любимое занятие на работе 🟠 Зачем тестировать фичи на себе 🟠 Как выглядят собеседования в Яндекс 🟠 Что Лев спросил бы у Тима Кука 🟠 Чем культура разработки в Яндексе отличается от остальных 🎲 Кстати, в нашем канале Лев недавно рассказывал, как его команда оптимизировала медиаленту в Яндекс Еде. В посте: какие архитектурные решения не сработали, как строили observability для дебага и к каким компромиссам в итоге удалось прийти. Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🈲 Хотите научиться работать с опенсорсным стеком для разработки Flutter-приложений? С вами Андрей Смирнов, разработчик в ком
🈲 Хотите научиться работать с опенсорсным стеком для разработки Flutter-приложений? С вами Андрей Смирнов, разработчик в команде Яндекс Про. Предлагаю снова обратиться к материалам с Mobile Runtime. В треке Not so AI я провёл воркшоп, в котором познакомил гостей мероприятия с опенсорсным стеком для разработки Flutter-приложений. 🟰 Внутри команды мы называем этот стек yx_architecture. В него входят yx_state, yx_scope и yx_navigation. Мы создали его, чтобы упорядочить разработку, перестать зависеть от внешних вендоров и получить возможности, которых нам не хватало: 🟠 Управление состоянием (state management) 🟠 Управление зависимостями (dependency injection) 🟠 Навигация между экранами Воркшоп состоит из теории и нескольких коротких кодинг-сессий. Я показал, как собрать архитектурно корректное приложение с нуля, и заодно рассказал, почему наш стек хорошо подходит для агентской разработки без потери качества. 📺 Посмотреть воркшоп можно на ютубе или в VK Видео. А остальные материалы с Mobile Runtime ищите в плейлистах: 🟰 Трек AI на ютубе и в VK Видео 🟰 Трек Not so AIна ютубе и в VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

⏭ Как мы в Яндексе стремимся к AI-first-разработке С вами Артур Василов, руководитель мобильной разработки в Яндекс Браузере.
+1
Как мы в Яндексе стремимся к AI-first-разработке С вами Артур Василов, руководитель мобильной разработки в Яндекс Браузере. На Mobile Runtime я открывал трек, посвящённый AI, и поделился опытом команды: со второй половины 2025 года мы внедряем агентов, чтобы повысить эффективность разработки. В этом посте я расскажу, что у нас получилось и к чему мы стремимся сейчас. 🚺 Первой большой задачей было отучить разработчиков писать код руками Было непросто. Прийти и обязать всех использовать агентов не получится, потому что это новые подходы, инструменты и огромное количество вопросов. Важно помнить, что скорость разработки не вырастет сразу. Из-за того, что во всём этом ещё нужно разобраться, в первое время она, напротив, станет ниже. Вместо того чтобы директивно обязать всех перекатываться на AI, лучше создать среду для экспериментов и поощрять новаторство. Мотивируйте разработчиков и изучайте, как и когда они используют новые инструменты. Выберите метрики, которые вам важны, и растите их. ​​🟰 Роль руководителя здесь невероятно важна. Как минимум вам нужен новый чатик по работе с LLM! Коллеги будут делиться опытом и поддержкой, шерить знания, помогать с инструментами. Нужны общие демо и амбассадоры AI в командах. А ещё важно начинать с себя: если руководитель не пользуется инструментом и не заинтересован в нём, сложно ожидать энтузиазма от команды. 🚺 Когда все используют AI, инфраструктура готова к этому и команда создала свой банк скилов, появляется ощущение потолка Разработка стала быстрее, но не в несколько раз, а на 10–30%. Возникает вопрос, как добиться значительного ускорения. Именно на этом этапе мы сейчас находимся и уже делаем успехи. Есть два варианта, как это сделать, и нужно использовать оба. 🚺 Автоматизация больших рутинных частей Вот три примера таких процессов у нас: 🟠 LLM Merge. Каждый раз, когда Chromium обновляется, в нашем коде появляются конфликты, ошибки компиляции и падающие тесты. Раньше раз в месяц это исправляли разработчики. Сейчас мы автоматически чиним всё LLM’кой. Подробности есть на Хабре 🟠 Свифтизация. В Браузере была часть кода, которую давным-давно написали на Objective-C. Годами мы (во многом с помощью стажёров 😂) переводили её на Swift. С помощью LLM мы закрыли эту задачку за два месяца. Про это тоже писали на Хабре 🟠 Дежурство по релизу. AI сильно помогает при выкатке обновлений. Он может сделать анализ состояния релиза, починить баги и краши (сравнивая код прошлой и новой версий) и выполнить кучу других мелких задач 🚺 Автономная работа агентов Часто буст перформанса AI упирается в пропускную способность оператора-человека. Поэтому нужно стремиться к тому, чтобы агенты работали автономно как можно дольше, не трогая людей. Сделать это можно, предоставив AI скилы для работы с устройством и самостоятельной проверки задач. Дополнительно стоит присмотреться к мультиагентным системам и оркестрациям, когда одна LLM управляет командой других. Немного другой подход — Autoresearch. Мы даём агенту сегмент кода и показываем, как посчитать метрику для его оценки. А потом просим улучшить её — и идём пить кофе 😀 📺 В докладе я больше рассказал о подготовке инфраструктуры AI и поделился некоторыми мыслями о пользе для бизнеса, которую несёт использование агентов. Посмотреть выступление можно на ютубе или в VK Видео. 🆖 Другие доклады с Mobile Runtime можно найти в плейлистах: Трек AI ютуб и VK Видео Трек Not so AIютуб и VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🚀 Погружаемся в технологии на deep tech night 5 сентября пройдёт deep tech night — масштабная онлайн-конференция Яндекса о технологических вызовах, с которыми IT-индустрия сталкивается в эпоху AI: от изменений в разработке до новых требований к архитектуре и инфраструктуре. Это событие для бэкендеров, фронтендеров, тимлидов, аналитиков, продактов и всех, кто работает в IT-индустрии, внедряет AI в процессы, проектирует сложные системы и ищет новые решения. ⏭ В программе доклады экспертов из Яндекса и международных IT-компаний: 🟠 Мо Гавдат, Former Chief Business Officer Google X 🟠 Алексей Гусаков, CTO Поисковых сервисов и ИИ 🟠 Сергей Мельник, руководитель сервиса Автономного транспорта и роботов И другие спикеры (некоторые из них пока что секретные — расскажем о них в ближайшее время 🤫). 🎲 Зарегистрироваться Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🈲 Гайд по миграции на SPM: с граблями, костылями и скриптами Меня зовут Даниил Гиренко, я Flutter-разработчик в Яндекс Про.
🈲 Гайд по миграции на SPM: с граблями, костылями и скриптами Меня зовут Даниил Гиренко, я Flutter-разработчик в Яндекс Про. Проект по переводу нашего приложения с CocoaPods на Swift Package Manager оказался одним из самых сложных и долгих в моей карьере. Тем, кому ещё только предстоит подобное приключение, я хочу рассказать про подводные камни, о которые успел поцарапаться в процессе. 🎲 Ищите на Хабре полноценный гайд по миграции любого Flutter-приложения 💡 Внутри я разобрал граф зависимостей, показал, как мигрировать плагины, настроить сборку и добиться успешного билда. Эти знания могут помочь вам значительно ускорить проект миграции. Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

Сергей_Ефанов_Как_мы_внедряли_Compose_Multiplatform_в_Я_Team.pdf3.22 MB

🈲 Мультиплатформа без большого рефакторинга и остановки продуктовой разработки Привет, это Сергей Ефанов, старший мобильный
+8
🈲 Мультиплатформа без большого рефакторинга и остановки продуктовой разработки Привет, это Сергей Ефанов, старший мобильный разработчик в Яндексе. Недавно я выступал на Mobile Runtime, где рассказал, как мы внедряли Compose Multiplatform в Я.Team — внутренний сервис для сотрудников компании. Над приложением работает всего три человека: два Android-разработчика и один iOS-разработчик. В какой-то момент мы поняли, что постоянно реализуем одни и те же фичи дважды. Из-за этого логика постепенно расходилась между платформами, баги исправлялись не одновременно, аналитика отличалась, а ресурсы и переводы дублировались. ⏭ Мы решили перейти на Compose Multiplatform. Главной задачей было сделать это без остановки продуктовой разработки и без большого рефакторинга. Для этого мы начали постепенно выносить в общую часть только то, что действительно дублировалось. Каждый шаг планировали так, чтобы его можно было протестировать, зарелизить и при необходимости быстро откатить. Переход оказался инженерной инвестицией. Пока мы строили инфраструктуру, разработка действительно замедлилась, а всей команде пришлось осваивать новые инструменты и соседний стек. Но теперь мы можем разрабатывать значительную часть новых фич, затрачивая вдвое меньше ресурсов. 👷‍♀️ В карточках я показал несколько схем нашей архитектуры и процесса передачи общего кода. 🔽 Если интересно узнать больше — внизу прикрепил презентацию доклада. Также его можно посмотреть на ютубе или в VK Видео. На данный момент мы с командой уже реализовали 12 shared-фич. А 70% кода — общие для двух платформ. 📺 Другие доклады с Mobile Runtime тоже уже можно смотреть: 🟰 Трек AIютуб и VK Видео 🟰 Трек Not so AIютуб и VK Видео Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🍔 Как мы запустили медиаленту в Яндекс Еде для iOS, а потом всё переделали Медиалента в мобильном приложении — инструмент с
+8
🍔 Как мы запустили медиаленту в Яндекс Еде для iOS, а потом всё переделали Медиалента в мобильном приложении — инструмент с карточками, роликами и другим контентом для пользователей. Казалось, спроектировать ленту — стандартная задача, но быстро выяснилось, что типовое решение для Яндекс Еды не сработает. 👨‍💻 Меня зовут Лев Бондаренко, я старший iOS-разработчик Яндекс Еды. Во время разработки ленты пришлось разобраться, почему видео не запускались на некоторых устройствах, интерфейс тормозил без очевидных причин, а потребление памяти было критическим. 👷‍♀️ В карточках рассказал об основных проблемах и о том, как мы их решали. 🎲 Если хотите узнать больше про архитектурные эксперименты, observability, дебаг и компромиссы, которые в итоге оказались эффективнее красивой реализации, — читайте статью на Хабре. Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

⭐️ Как мобильному разработчику стать сеньором благодаря BDUI Привет, это Никита Шумский. За время работы в Яндексе я застал п
⭐️ Как мобильному разработчику стать сеньором благодаря BDUI Привет, это Никита Шумский. За время работы в Яндексе я застал появление Backend-Driven UI, научился работать с ним и внедрял его в разные сервисы. Сегодня хочу рассказать, как это было. 🟠 В компанию я пришёл в 2021 году как нативный Android-разработчик Маркета. В сервисе тогда была интеграция с CRM — внешним видом экрана управляли через административную панель. Но это решение уже устарело, и мало кто понимал, как оно работает. Помню свой первый тикет. Нужно было обновить виджет с помощью CRM: поменять цвет, изображение и другие параметры. На это ушло немало времени, потому что инструмент оказался непростым, а документации не хватало. Постепенно задачи становились сложнее. Я читал гайды, просматривал инструкции и примеры в коде, просил помощи у коллег, советовался с разработчиками iOS- и Web-направлений. В итоге мне удалось найти подход, при котором для изменения внешнего вида экрана не нужно выпускать релиз. 🟠 К 2022 году я хорошо разобрался во всём, что нужно для моей работы. Как раз тогда в Маркете окончательно решили разрабатывать и внедрять собственный BDUI. Предпосылок было немало: упростить разработку, объединить кодовую базу iOS и Android, сократить TTM. В качестве эксперимента мы тогда запустили несколько новых фич на Flutter, чтобы и сам фреймворк, и любые новые функции могли работать как отдельное приложение на Android и на iOS. Мне снова предстояло учиться: углубляться во Flutter, изучать Dart, адаптировать библиотеку Dynamic Widgets, создавать и оптимизировать API для работы с базами данных. Но такой стек казался избыточным и плохо вписывался в проект. Чтобы выйти за рамки MVP, пришлось бы переписать значительную часть инфраструктуры. Тогда мы пересмотрели подход: отказались от Flutter и перешли к BFF-прослойке MAPI — мобильному бэкенду на Kotlin Spring. Мобильные разработчики трудились над ней вместе с бэкендерами. 🟠 В 2023 году решили попробовать BDUI-фреймворк Яндекса DivKit — Маркет перешёл на него. Я набил руку на связке MAPI + DivKit при решении продуктовых задач и в какой-то момент присоединился к команде Еды. Ребята как раз тоже захотели опробовать BDUI-подход, и мне уже было что им рассказать. Здесь у меня появились новые компетенции: к навыкам мобильного разработчика добавились знания в области бэкенда, SRE и DevOps. А со временем я вырос до senior-специалиста в BDUI. 🟠 Сейчас BDUI в той или иной мере присутствует во всех Городских сервисах Яндекса. Чтобы объединить усилия и унифицировать подход, мы начали разрабатывать общую техплатформу и собрали отдельную команду энтузиастов из разных продуктов. 🟠 Мне по-прежнему кажется, что чистых BDUI-разработчиков не бывает. Себя я до сих пор считаю мобильным разработчиком, потому что результаты моей работы видны в приложении. 🟠 Это значит, что стать сильным BDUI-разработчиком можно в любом стеке. Главное — прокачать базовые навыки: принципы построения и чистоты кода, проектирование архитектуры и написание тестов. Гораздо важнее уметь отлаживать и расследовать инциденты, чем знать конкретную платформу. 🎲 Читайте мою историю целиком в блоге о работе в Яндексе Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

⏭ Как легко следить за жизненным циклом корутин Всем привет! Меня зовут Вадим Мезенцев, я занимаюсь разработкой мобильных при
Как легко следить за жизненным циклом корутин Всем привет! Меня зовут Вадим Мезенцев, я занимаюсь разработкой мобильных приложений в Яндекс Go. Мы работаем над опенсорс-библиотекой Demeter для профилирования Android и недавно дополнили её инструментом Coroutine Tracer, который помогает отслеживать изменения корутин. 🚺 Зачем нужен Coroutine Tracer? С откладкой корутин в Android сталкивается любой разработчик на Kotlin. Стандартные инструменты часто показывают потоки, а не корутины, поэтому, когда одна зависает, искать приходится вслепую — расставлять логи и пытаться воспроизвести проблему вручную. 🟰 Наш плагин помогает справиться с этим: 🟠 находит автоматически все вызовы launch/async — без ручной расстановки меток; 🟠 строит дерево parent‑child‑связей между Job; 🟠 измеряет длительность каждой корутины и фиксирует отмены и исключения; 🟠 показывает всё это в удобном UI прямо на девайсе. 🎲 В статье на Хабре читайте, как устроена архитектура Coroutine Tracer — от байт-кода до дерева на экране — и что происходит на каждом этапе работы инструмента. А если готовы протестировать его уже сейчас, подключайте из библиотеки Demeter. Будем рады обратной связи. Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

♨️ Как обойти ограничения iOS и Android и создать Wi-Fi-сканер Привет, это Павел Семенищев, сетевой инженер в Yandex Infrastr
♨️ Как обойти ограничения iOS и Android и создать Wi-Fi-сканер Привет, это Павел Семенищев, сетевой инженер в Yandex Infrastructure. В команде Network Operations Center мы отвечаем в том числе за сети офисов, складов и дарксторов Яндекса. В один момент в эксплуатацию поступило несколько сотен удалённых точек — и отправлять сетевиков на каждую проблему с Wi‑Fi стало невозможно. Нам нужно было решение, которое позволит выявить источник проблем на месте. Именно поэтому я создал два приложения для радиообследования — WiProber под Android и WiFi Prober под iOS. Вот чем пришлось заняться в процессе: 🟠 Научить приложение паковать результаты в принятый в индустрии формат Ekahau (.esx). 🟠 Разобраться с тем, что Android не любит частого сканирования сети, и решить проблемы с разрешениями, режимом Continuous и scan throttling’ом. 🟠 «Раскрутить гайки» в iOS. Это закрытая система, а мне нужно было получить RSSI, Noise и MCS без приватных API. 🟠 Сделать красивый AR-режим с наложением метрик на камеру. Проект уже прошёл ревью Apple, в версия на Android доступна в GitHub. ⏭ Читайте статью на Хабре — там ещё больше вызовов, с которыми я столкнулся, и подробностей для мобильных разработчиков. Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile

🚀 Mobile Runtime: лучшее начало этого лета! Спасибо всем, кто присоединился к главному событию Яндекса для мобильных разрабо
+6
🚀 Mobile Runtime: лучшее начало этого лета! Спасибо всем, кто присоединился к главному событию Яндекса для мобильных разработчиков. Мы собрали более 300 участников — получилось пространство для профессионального общения, обсуждения острых тем и обмена опытом. Что успели: 🟠 Послушали доклады от топовых экспертов про агентскую разработку, архитектуру и производительность мобильных приложений, внедрение AI в инженерные команды. 🟠 Обсудили, как меняется профессия с развитием AI-инструментов и какие навыки становятся критически важными, как строить карьеру в условиях неопределенности и где искать вдохновение. 🟠 Собрали с нуля ассистента для кросс-платформенного KMP-приложения с картой. А ещё провели много карьерных консультаций, сыграли в квиз, понетворкались и просто насладились атмосферой летнего фестиваля. Спасибо за ваш интерес, вопросы спикерам и обсуждения! 🟰 Фотографии с Mobile Runtime уже готовы. Ищите себя и забирайте кадры на память Запись трансляции доступна на лендинге. Сохраняйте и делитесь ссылкой с командой 🛍 Будем рады вашей обратной связи. Поделитесь в форме, что понравилось больше всего и какие темы хотелось бы разобрать в будущем До встречи на следующих мероприятиях по мобильной разработке 🎦 Подписывайтесь: 💬 @Yandex4Mobile 📹 @YandexforMobile