Визначення
Deep link — це посилання, яке веде не на головну сторінку додатку, а безпосередньо до конкретного екрана, дії чи транзакції всередині нього. У мобільній екосистемі Solana deep link зазвичай використовується, щоб передати гаманцю готовий запит на підписання транзакції, відкрити конкретний NFT у маркетплейсі або перейти до певного dApp-інтерфейсу минаючи головний екран.
Як працює
Коли користувач натискає deep link, операційна система мобільного пристрою визначає, який додаток має обробити цей запит, і передає йому вкладені параметри. У контексті Solana механізм виглядає так:
- Джерело (сайт, інший додаток, месенджер) формує посилання зі спеціальною схемою або універсальним лінком, у який вбудовані дані транзакції — відправник, одержувач, сума, інструкції для програми на ланцюжку.
- Операційна система маршрутизує посилання до встановленого гаманця (Phantom, Solflare тощо).
- Гаманець розкодує параметри й показує користувачу екран підписання з уже заповненими полями.
- Після підтвердження результат повертається до джерела через callback-URL.
Deep link відрізняється від звичайного вебпосилання тим, що працює з нативним мобільним додатком, а не з браузером. Універсальні deep link (Android App Links, iOS Universal Links) додатково перевіряють право додатку обробляти домен, що захищає від перехоплення запиту стороннім застосунком.
Приклад
Користувач відкриває у мобільному браузері сторінку dApp на Solana та натискає кнопку «Підключити гаманець». Сайт генерує deep link із запитом на авторизацію та передає його в систему. Замість того щоб вручну шукати гаманець, копіювати адреси чи сканувати QR-код, користувач одразу бачить екран свого гаманця з пропозицією підтвердити підключення. Усе відбувається за один натиск.
Типова помилка
Розробники dApp часто тестують deep link лише в одному гаманці й не перевіряють, як він поводиться, якщо встановлено кілька Solana-гаманців одночасно. У такому разі система може відкрити не той додаток або взагалі показати діалог вибору без гарантії, що обраний гаманець коректно обробить усі параметри. Рішення — перевіряти роботу deep link з усіма популярними гаманцями та враховувати порядок їхньої реєстрації для обробки відповідної URL-схеми на пристрої.
Пов'язані матеріали
Внутрішні переходи
- QR-транзакція — альтернативний спосіб передати транзакційний запит із екрана одного пристрою на гаманець іншого.
- Push-сповіщення — механізм повідомлень, який часто працює разом із deep link, повертаючи користувача в додаток після завершення зовнішньої дії.
Додаткові ресурси
- Офіційна документація Solana Mobile Stack щодо реалізації deep link у мобільних гаманцях та dApp.
- Специфікація Solana Pay — опис формату посилань із вбудованими транзакційними даними.