FlutterFlow Dynamic Links
FlutterFlow Dynamic Links — короткие веб-ссылки вида https://your-project-id.fflink.app/Ab3dE7x, которые открывают конкретную страницу приложения. Если приложения на устройстве нет, ссылка отправляет человека в App Store, Google Play или в веб-версию. Это собственная замена Firebase Dynamic Links, которые закрылись в августе 2025 года.

Что можно делать с такими ссылками:
- создавать их прямо во FlutterFlow — для рассылок, рекламы и постов;
- генерировать из приложения, чтобы пользователь мог поделиться страницей, на которой находится;
- задавать заголовок, описание и картинку, которые покажут мессенджеры и соцсети;
- считать переходы, открытия приложения и кампании по каждой ссылке.
Ссылки на URL-схему приложения, например myapp://myapp.com/profile, после включения FlutterFlow Dynamic Links работают как раньше. Как они устроены — в разделе Диплинки и динамические ссылки.
Что нужно заранее
Проверьте проект:
- В Settings and Integrations > General > App Details выключен переключатель Use Firebase Dynamic Links. Два вида динамических ссылок в одном проекте не уживаются.
- Диплинки включены. По умолчанию так и есть, поэтому у большинства проектов переключателя нет вовсе. Если в App Details виден Enable Deep Linking — включите его.
- У страниц, на которые будут вести ссылки, задан маршрут. Выделите страницу и откройте Route Settings в панели свойств.
- У проекта есть единица дополнения Dynamic Links — см. ниже.
Для каждой платформы, которую будете включать, подготовьте данные:
- Android — отпечаток SHA-256 ключа, которым подписано приложение. Для приложения в Google Play берите ключ подписи из Play Console > Test and release > App integrity, а не локальный ключ загрузки (upload key).
- iOS и macOS — Apple Team ID из 10 символов, он есть в разделе Membership портала Apple Developer. Если приложение уже в App Store, понадобится и его App Store ID — число из 9–10 цифр.
- Web — адрес веб-версии, если она размещена не на адресе публикации FlutterFlow.
Дополнение Dynamic Links
FlutterFlow Dynamic Links — платное дополнение. Каждому проекту нужна одна единица (unit): $10 в месяц или $96 в год. За проекты команды платит командный тариф, за личные — тариф владельца проекта.
Купить единицу может только владелец команды или владелец личного проекта. Если вы работаете в чужом проекте, попросите владельца включить дополнение.
Как купить:
- Откройте Settings and Integrations > Dynamic Links > Setup.
- Нажмите Add-on и пройдите шаги мастера.
Единица закрепляется за проектом не в момент покупки, а когда вы регистрируете приложение. Если выключить FlutterFlow Dynamic Links в проекте, единица освободится, и её можно отдать другому проекту.
Если единиц на тарифе не осталось, уже созданные ссылки продолжают работать и приложение собирается. Нельзя только создавать новые ссылки — ни во FlutterFlow, ни из приложения.
Настройка
-
Откройте Settings and Integrations > Dynamic Links > Setup.
Туда же ведёт кнопка Set up Dynamic Links в блоке Routing & Deep Linking на странице Settings and Integrations > General > App Details.
-
Включите Enable FlutterFlow Dynamic Links.
-
В блоке Platforms включите платформы, где ссылки должны открывать приложение, и заполните поля. На выключенных платформах ссылка откроется в браузере.
- Android — в SHA-256 fingerprints нажмите Add fingerprint и вставьте отпечаток ключа подписи. Если ссылки должна открывать ещё и тестовая сборка с другим ключом, добавьте отпечаток для каждого ключа.
- iOS — в Apple Team ID укажите Team ID. Если приложение есть в App Store, впишите его номер в App Store ID (optional). Без него человек на iOS без приложения увидит страницу-превью или веб-версию, а не App Store.
- macOS — включите, если ссылки должно открывать приложение для Mac. Team ID берётся тот же, что для iOS. Пункт виден, только если проект собирается под macOS.
- Web — проверьте адрес в Web app URL. FlutterFlow подставляет его из адреса публикации. Сюда ссылки ведут на Windows, Linux и других устройствах, где приложение не открыть.
Package name и Bundle ID берутся из App Details — менять их нужно там.

-
Нажмите Register app.
FlutterFlow выделит проекту домен ссылок и покажет его в поле Link domain. Домен у каждого проекта свой и строится из ID проекта: your-project-id.fflink.app. Сменить его или подключить собственный домен нельзя.
Всё, что нужно Android, iOS и macOS для открытия ссылок в приложении, FlutterFlow прописывает сам — нативные файлы трогать не придётся. Перед проверкой подождите несколько минут. На iOS и macOS приложение ещё и переустановите: какие ссылки ему разрешено открывать, система проверяет только при установке.
После любых изменений на вкладке Setup нажимайте Update. Регистрируйте приложение до сборки: без домена ссылок сборка не обойдётся.
Android открывает ссылки в браузере, а не в приложении? Первым делом проверьте отпечаток SHA-256. Чаще всего туда вписан отпечаток ключа загрузки вместо ключа Play App Signing.
Какую страницу откроет приложение
Если приложение установлено, оно открывается на странице, на которую указывает ссылка, и получает параметры страницы из ссылки. Неважно, было оно уже запущено или стартовало по ссылке. Если страница закрыта авторизацией, сначала придётся войти.
Чтобы после открытия выполнить что-то ещё — скажем, записать, из какой кампании пришёл пользователь, — выберите Action Block в поле When a link opens the app на вкладке Setup. Блок может принимать параметры из таблицы, FlutterFlow сопоставляет их по имени.
| Параметр | Тип | Значение |
|---|---|---|
routePath | String | Маршрут страницы, которую открыла ссылка. |
routeParameters | JSON | Параметры страницы из ссылки. |
campaignSource | String | Источник кампании (source). |
campaignMedium | String | Канал кампании (medium). |
campaignName | String | Название кампании. |
campaignTerm | String | Ключевое слово кампании (term). |
campaignContent | String | Вариант объявления (content). |
Параметр с любым другим именем приведёт к ошибке сборки. В веб-версии Action Block не запускается: там ссылка сразу открывает свою страницу.
Создание ссылок
Ссылки можно создавать во FlutterFlow или генерировать из работающего приложения. В обоих случаях приложение должно быть зарегистрировано на вкладке Setup.
Во FlutterFlow
Так удобно делать одну ссылку для многих — для рассылки или рекламного объявления.
- Откройте Settings and Integrations > Dynamic Links > Links.
- Нажмите Create a link.
- В Name введите название, по которому вы потом найдёте ссылку. Получатели его не видят.
- В Destination выберите страницу. В списке только страницы с маршрутом.
- В Parameters задайте значения параметров страницы.
- По желанию: в Preview when shared — заголовок и описание для превью в мессенджерах и соцсетях.
- По желанию: в Campaign tracking (optional) — значения Source, Medium, Campaign, Term и Content, чтобы различать трафик этой ссылки на вкладке Analytics.
- Нажмите Create link.

Скопировать готовую ссылку — значок Copy link рядом с ней в списке.
Из приложения
Чтобы пользователи могли делиться ссылками, добавьте в приложение действие Generate Current Page Link.
Что увидит человек, открывший ссылку
| Где открыли | Приложение установлено | Приложения нет |
|---|---|---|
| iOS | Приложение открывается на нужной странице. | Страница Get the app со ссылкой в App Store. С включённым Skip Preview Page — сразу App Store. Без App Store ID откроется веб-версия, а если её нет — страница-превью. |
| Android | Приложение открывается на нужной странице. | Страница Open the app со ссылкой в Google Play. |
| macOS | Приложение для Mac открывается на нужной странице, если включён macOS. | Веб-версия на нужной странице. |
| Windows, Linux и прочие | — | Веб-версия на нужной странице, значения кампании передаются как параметры utm_. Если адрес веб-версии не задан — страница-превью. |
Когда ссылкой делятся в мессенджере или соцсети, там показываются её заголовок, описание и картинка.
Управление ссылками
На вкладке Links у каждой ссылки видно, куда она ведёт, сколько по ней перешли и сколько раз она открыла приложение. Что можно сделать:
- изменить название, страницу, превью или кампанию — значок Edit link;
- скопировать — значок Copy link;
- отключить — значок Deactivate.
Вернуть отключённую ссылку нельзя. Всем, кто её откроет, покажется страница Link not found.
Аналитика
Вкладка Settings and Integrations > Dynamic Links > Analytics показывает по ссылкам проекта:
- Clicks — сколько раз ссылки открывали за последние 30 дней;
- Opens — сколько раз приложение сообщило, что открылось по ссылке;
- Fallbacks и Fallback rate — сколько человек и какая доля попали в магазин приложений или на страницу-превью, потому что приложение не открылось;
- график по дням за 30 дней (в UTC) и разбивку по платформам и по ссылкам.
Превью, которые мессенджеры подгружают, когда ссылкой делятся, в переходы не засчитываются.

Если на одной платформе выросла доля fallbacks, скорее всего, ссылки там перестали открывать приложение. Проверьте настройки этой платформы на вкладке Setup — например, отпечаток SHA-256 для Android.
Переезд с Firebase Dynamic Links
- В Settings and Integrations > General > App Details выключите Use Firebase Dynamic Links.
- Пройдите шаги из раздела Настройка.
Действия Generate Current Page Link, которые уже есть в проекте, продолжат работать и начнут создавать ссылки FlutterFlow. Ссылки, созданные Firebase, не переносятся — разосланные раньше придётся заменить новыми.
Ограничения
Лимиты на один проект:
- Приложение может создавать до 60 ссылок в минуту и до 1000 в день, и не больше 10 в минуту с одного IP-адреса. Ссылки, созданные на вкладке Links, в эти лимиты не входят.
- Ссылки выдерживают примерно до 600 переходов в минуту.
- Срока действия у ссылок нет. Чтобы ссылка перестала работать, отключите её.