Deep Link (глубокие ссылки) — это ссылка, которая ведёт не на веб-страницу, а в конкретный экран для мобильных приложений. По данным Branch.io Mobile Deep Linking Report 2025, приложения с настроенными deep links показывают на 42% выше конверсию в установки и на 28% выше retention. Разберём, как работают deep links на iOS и Android, какие бывают типы и какие инструменты существуют.
Главное
Deep Link (глубокая ссылка) — это URL для мобильных приложений, который содержит информацию не только о том, какое приложение открыть, но и о том, какой экран показать. Например, ссылка myapp://profile/42 открывает приложение myapp и сразу переходит на профиль пользователя с ID 42. Без deep link пользователь попал бы только на главный экран приложения.
Глубокие ссылки критически важны для маркетинга и пользовательского опыта. Они используются в email-рассылках, push-уведомлениях, рекламных кампаниях и QR-кодах. По данным AppsFlyer (2025), кампании с deep links показывают на 35% выше CTR (click-through rate) по сравнению с обычными ссылками на главный экран.
В IT Sectr мы внедряем deep links во всех проектах начиная с 2019 года. Наш опыт показывает, что правильная настройка глубоких ссылок в мобильных приложениях увеличивает вовлечённость пользователей на 25–30% за счёт релевантного контента сразу после перехода.
На iOS существует два основных способа реализации deep links: URL Scheme (кастомный протокол) и Universal Link (стандартная https-ссылка). Оба метода позволяют настраивать глубокие ссылки для мобильных приложений и имеют свои преимущества и недостатки.
URL Scheme — это кастомный протокол вида myapp://path/to/screen. Он работает с iOS 3.0 и не требует серверной настройки. Недостаток: если приложение не установлено, Safari не может открыть такую ссылку, и пользователь видит ошибку. Кроме того, URL Scheme могут «перехватывать» другие приложения, так как протокол не уникален.
Universal Link (iOS 9+) — это обычная https-ссылка, которая одновременно работает как веб-страница и как deep link. Если приложение установлено, iOS перехватывает ссылку и открывает приложение. Если нет — открывается веб-страница. Universal Links безопаснее (домен верифицируется) и не показывают предупреждение.
Настройка Universal Link требует двух шагов: разместить файл apple-app-site-association на сервере и добавить entitlement в Xcode. Файл AASA содержит JSON с информацией о поддерживаемых пути и app ID. iOS скачивает этот файл при установке приложения и проверяет его при переходе по ссылке.
Важно: AASA-файл должен быть доступен по HTTPS без редиректов. В IT Sectr мы рекомендуем настраивать Universal Links вместо URL Scheme для всех новых проектов — они безопаснее, надёжнее и обеспечивают лучший пользовательский опыт.
App Links (Android 6.0+) — это аналог Universal Links на Android для мобильных приложений. Приложение указывает, какие https-URL оно может обрабатывать, и верифицирует это через цифровой файл на сервере. Android проверяет связку домен-приложение без участия пользователя.
Для реализации App Links нужно: добавить Intent Filter в AndroidManifest.xml с autoVerify="true", разместить файл assetlinks.json на сервере и подписать приложение. После этого Android автоматически направляет все ссылки с указанного домена в приложение (если оно установлено).
Intent Filter — это декларация в AndroidManifest.xml, которая сообщает системе, какие типы намерений (intents) может обрабатывать Activity. Для глубоких ссылок Intent Filter содержит элементы data: схему (http/https), хост (домен) и путь.
<activity android:name=".MainActivity">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https"
android:host="example.com"
android:pathPrefix="/product/" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myapp"
android:host="product" />
</intent-filter>
</activity>
Первый Intent Filter отвечает за App Links (https-ссылки, верифицированные через assetlinks.json). Второй — за URL Scheme (myapp://). Важно: autoVerify="true" сообщает Android, что нужно проверить верификацию при установке приложения. Если верификация не пройдена, система покажет диалог выбора приложения.
| Параметр | iOS | Android |
|---|---|---|
| Тип deep link | Universal Link (iOS 9+), URL Scheme | App Links (Android 6+), Intent Filter |
| Файл верификации | apple-app-site-association (JSON) | assetlinks.json (JSON) |
| Требуется HTTPS | Да | Да |
| Без приложения | Открывается веб-страница | Открывается веб-страница |
| Может перехватить другое приложение | Нет (домен уникален) | Нет (домен верифицирован) |
| URL Scheme — конфликты | Да (любое приложение может зарегистрировать тот же scheme) | Да |
Таблица 1. Сравнение iOS и Android подходов к deep linking. Universal Links и App Links — современный стандарт. URL Scheme и Intent Filters без autoVerify — устаревшие, но всё ещё используемые методы.
Firebase Dynamic Links (сервис Google) и Branch.io — это платформы для управления глубокими ссылками, которые решают главную проблему: что делать, если приложение не установлено. Они создают умные ссылки, которые перенаправляют в App Store / Google Play для установки, а после установки — на нужный экран.
Firebase Dynamic Links — бесплатный сервис (до 2025 года). Позволяет создавать ссылки вида https://yourdomain.page.link/xxx, которые работают как deep links на обеих платформах. Firebase Dynamic Links поддерживают deferred deep linking и атрибуцию.
Branch.io — коммерческая платформа с более широким функционалом: ссылки для соцсетей, QR-коды, аналитика и атрибуция. Branch.io используется крупными приложениями (Pinterest, Reddit) и интегрируется с основными MMP (AppsFlyer, Adjust).
Deferred Deep Link — это глубокий отложенный переход для мобильных приложений. Пользователь нажимает на ссылку до установки приложения, устанавливает его, и после первого запуска автоматически попадает на целевой экран. Это ключевой механизм для рекламных кампаний: пользователь кликнул по рекламе товара → установил приложение → сразу увидел этот товар.
Атрибуция — это определение источника установки. Какая рекламная кампания привела пользователя? Какой канал? Атрибуционные платформы (AppsFlyer, Adjust, Branch) идентифицируют каждый клик по deep link и связывают его с установкой. По данным AppsFlyer (2025), deferred deep links повышают конверсию в покупку на 30% по сравнению с обычной установкой.
В IT Sectr мы настраиваем deferred deep links для e-commerce проектов. Например, в мобильном приложении интернет-магазина: пользователь видит рекламу конкретного товара, нажимает на ссылку, скачивает приложение и сразу попадает на страницу этого товара. Конверсия в покупку в таком сценарии в 2 раза выше, чем при стандартной установке.
Часто задаваемые вопросы
Universal Link — это тип Deep Link для iOS, использующий стандартный https-протокол. Deep Link — общее понятие для любой ссылки, ведущей в приложение. Universal Link — частный случай, который безопаснее и надёжнее обычного URL Scheme.
Это ссылка, которая запоминает намерение пользователя (какой экран открыть) до момента установки приложения. После установки приложение получает параметры ссылки и открывает нужный экран. Без этого пользователь после установки попал бы на главный экран.
На iOS используйте команду xcrun simctl openurl booted "https://your.link". На Android — команду adb shell am start -W -a android.intent.action.VIEW -d "https://your.link". Также можно использовать сервисы вроде Branch.io для тестирования.
Нет, если приложение уже установлено — достаточно Universal Links и App Links. Firebase Dynamic Links или Branch.io нужны только для сценария «ссылка до установки» (deferred deep linking). Для большинства приложений базовых deep links достаточно.
Итоги
Мы разработаем мобильное приложение под ключ
IT Sectr создаёт приложения для iOS и Android для стартапов и бизнеса с 2017 года. Мы проконсультируем вас и предложим наилучшее решение.