Инструкция для запуска

Диплинки: как открыть приложение из короткой ссылки

Эта страница помогает настроить два понятных сценария. Первый сценарий открывает приложение через обычную HTTPS-ссылку. Второй сценарий открывает приложение через custom scheme вродеsocialmesh://.

Universal Links

Клиент нажимает HTTPS-ссылку. Телефон сам открывает приложение, когда оно установлено.

Custom scheme

Короткая ссылка пробует открыть адрес приложения вида socialmesh://node/abc123.

Fallback

Когда приложение не открылось, клиент попадает на понятную web-страницу.

Сценарий 1. Universal Links и App Links

Этот сценарий подходит для бренда со своим мобильным приложением. Клиент нажимает короткую ссылкуhttps://go.brand.ru/s/summer. Телефон открывает приложение. Когда приложения нет, клиент остается на web-странице.

Что сделать в Kratk

  1. 1Откройте раздел "Домены" в Kratk.
  2. 2Добавьте свой домен, например go.brand.ru.
  3. 3Дождитесь статуса "Подтвержден".
  4. 4В настройках домена заполните Apple Team ID и iOS Bundle ID.
  5. 5В настройках домена заполните Android package name и SHA-256 fingerprint.
  6. 6Передайте мобильному разработчику короткую ссылку вида https://go.brand.ru/s/summer.
  7. 7Попросите разработчика открыть экран приложения по данным из resolve endpoint.

Что делает мобильная команда

  1. 1iOS-разработчик включает Associated Domains в Apple Developer и Xcode.
  2. 2iOS-разработчик добавляет entitlement applinks:go.brand.ru.
  3. 3Android-разработчик добавляет intent-filter для https://go.brand.ru/s/*.
  4. 4Android-разработчик включает android:autoVerify="true".
  5. 5Приложение принимает URL, достает короткий код и вызывает resolve endpoint.
  6. 6Приложение открывает нужный экран и отправляет app-open событие.

Пример настройки домена

Домен
go.brand.ru
Этот домен используется в коротких ссылках рекламной кампании.
Apple Team ID
ABCDE12345
Берется в Apple Developer account.
iOS Bundle ID
com.brand.app
Идентификатор iOS-приложения.
Android package
com.brand.app
Идентификатор Android-приложения.
SHA-256
AA:BB:CC:DD:EE:FF
Fingerprint production certificate для Android.

Пример короткой ссылки

Short URL
https://go.brand.ru/s/summer
Эту ссылку ставим в рекламу, Telegram, email и QR-код.
App route
promo
Название экрана внутри приложения.
App params
{ "promoId": "summer2026" }
Данные для открытия конкретной акции.
Default fallback
https://brand.ru/promo/summer2026
Страница акции для клиентов без приложения.

Проверка

  1. 1Откройте https://go.brand.ru/.well-known/apple-app-site-association в браузере.
  2. 2Убедитесь, что открывается JSON.
  3. 3Откройте https://go.brand.ru/.well-known/assetlinks.json в браузере.
  4. 4Убедитесь, что открывается JSON-массив.
  5. 5Установите приложение на телефон.
  6. 6Откройте короткую ссылку https://go.brand.ru/s/summer.
  7. 7Проверьте, что телефон открыл приложение на нужном экране.

Что приложение запрашивает у Kratk

GET https://go.brand.ru/api/deep-links/resolve?url=https%3A%2F%2Fgo.brand.ru%2Fs%2Fsummer
{
  "shortCode": "summer",
  "appRoute": "promo",
  "appRouteParams": {
    "promoId": "summer2026"
  }
}
POST https://go.brand.ru/api/deep-links/events/app-open
Content-Type: application/json

{
  "shortCode": "summer",
  "platform": "ios"
}

Сценарий 2. Custom scheme

Этот сценарий подходит для готовой ссылки приложения видаsocialmesh://node/abc123. Kratk открывает маленькую страницу, пробует запустить приложение и затем ведет клиента на fallback.

Что заполнить в короткой ссылке

  1. 1Включите "Диплинки" в форме короткой ссылки.
  2. 2В поле App deep link URL вставьте ссылку приложения, например socialmesh://node/abc123.
  3. 3В Default fallback вставьте web-страницу, например https://meshtastic.org/.
  4. 4Сохраните ссылку.
  5. 5Откройте короткую ссылку на телефоне.
  6. 6Телефон попробует открыть приложение. После ошибки клиент попадет на fallback страницу.

Пример для Meshtastic

Short URL
https://kk.cloudyhost.space/s/TE2HXQO9
Публичная короткая ссылка для пользователя.
App deep link
socialmesh://node/eyJub2RlTnVtIjo0ODc5Mzc4NCJ9
Адрес, который понимает приложение.
Default fallback
https://meshtastic.org/
Страница для клиента без приложения.

Важный момент про iPhone

iPhone показывает системное окно перед открытием custom scheme. Kratk не управляет этим окном. После системной ошибки клиент попадает на fallback-страницу.

Как выглядит путь пользователя

  1. 1Пользователь нажимает https://kk.cloudyhost.space/s/TE2HXQO9.
  2. 2Kratk показывает страницу "Открываем приложение".
  3. 3Телефон пробует открыть socialmesh://node/eyJub2RlTnVtIjo0ODc5Mzc4NCJ9.
  4. 4Приложение открывается на нужном экране.
  5. 5При отсутствии приложения клиент попадает на https://meshtastic.org/.

Готовый текст для мобильного разработчика

Скопируйте этот блок в задачу мобильной команде.

Нужно подключить диплинки для домена go.brand.ru.

iOS:
- включить Associated Domains;
- добавить applinks:go.brand.ru;
- обработать входящий URL;
- вызвать resolve endpoint;
- открыть экран из appRoute и appRouteParams;
- отправить app-open событие.

Android:
- добавить intent-filter для https://go.brand.ru/s/*;
- включить android:autoVerify="true";
- обработать Intent data URL;
- вызвать resolve endpoint;
- открыть экран из appRoute и appRouteParams;
- отправить app-open событие.