Система deep links в мобильном приложении
Вопрос
Спроектируйте систему deep links для приложения маркетплейса.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Universal Links и App Links с https, схема как запасной вариант
Единый парсер URL в типизированные маршруты, версия формата
Готовность приложения: вход, онбординг, конфиг; отложенный маршрут
Построение стека, а не одиночного экрана
Валидация параметров, без действий по ссылке без подтверждения
Аналитика переходов и тесты на каждый маршрут
Что могут спросить следом
- Как открыть ссылку, если приложение не установлено?
- Как поступить со ссылкой на удалённый товар?
Разбор
Ссылки делаю https на домене маркетплейса: Universal Links на iOS и App Links на Android, с файлами подтверждения на домене. Без приложения ссылка откроет сайт, и это корректный фолбэк. В приложении один парсер превращает URL в типизированный маршрут: товар, категория, заказ, промоакция. Формат ссылок версионирую, потому что старые ссылки живут годами. Перед навигацией проверяю готовность: если нужен вход или онбординг, маршрут откладывается и выполняется после. Строю стек, а не одиночный экран: «главная → каталог → товар», чтобы «назад» вёл логично. Параметры валидирую, никакие действия вроде оплаты по ссылке не выполняются без подтверждения. Для неустановленного приложения нужна отложенная ссылка через атрибуцию. Каждый маршрут покрыт тестом «URL → ожидаемый стек», а переходы попадают в аналитику.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Навигация в мобильном приложении: координаторы и роутеры
Следующий вопрос
Навигация как состояние