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.

FlutterFlow Dynamic Links — платное дополнение. Каждому проекту нужна одна единица (unit): $10 в месяц или $96 в год. За проекты команды платит командный тариф, за личные — тариф владельца проекта.

Купить единицу может только владелец команды или владелец личного проекта. Если вы работаете в чужом проекте, попросите владельца включить дополнение.

Как купить:

  1. Откройте Settings and Integrations > Dynamic Links > Setup.
  2. Нажмите Add-on и пройдите шаги мастера.

Единица закрепляется за проектом не в момент покупки, а когда вы регистрируете приложение. Если выключить FlutterFlow Dynamic Links в проекте, единица освободится, и её можно отдать другому проекту.

Если единиц на тарифе не осталось, уже созданные ссылки продолжают работать и приложение собирается. Нельзя только создавать новые ссылки — ни во FlutterFlow, ни из приложения.

  1. Откройте Settings and Integrations > Dynamic Links > Setup.

    Туда же ведёт кнопка Set up Dynamic Links в блоке Routing & Deep Linking на странице Settings and Integrations > General > App Details.

  2. Включите Enable FlutterFlow Dynamic Links.

  3. В блоке 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 — менять их нужно там.

    Вкладка Setup в настройках FlutterFlow Dynamic Links

  4. Нажмите 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 сопоставляет их по имени.

ПараметрТипЗначение
routePathStringМаршрут страницы, которую открыла ссылка.
routeParametersJSONПараметры страницы из ссылки.
campaignSourceStringИсточник кампании (source).
campaignMediumStringКанал кампании (medium).
campaignNameStringНазвание кампании.
campaignTermStringКлючевое слово кампании (term).
campaignContentStringВариант объявления (content).

Параметр с любым другим именем приведёт к ошибке сборки. В веб-версии Action Block не запускается: там ссылка сразу открывает свою страницу.

Ссылки можно создавать во FlutterFlow или генерировать из работающего приложения. В обоих случаях приложение должно быть зарегистрировано на вкладке Setup.

Так удобно делать одну ссылку для многих — для рассылки или рекламного объявления.

  1. Откройте Settings and Integrations > Dynamic Links > Links.
  2. Нажмите Create a link.
  3. В Name введите название, по которому вы потом найдёте ссылку. Получатели его не видят.
  4. В Destination выберите страницу. В списке только страницы с маршрутом.
  5. В Parameters задайте значения параметров страницы.
  6. По желанию: в Preview when shared — заголовок и описание для превью в мессенджерах и соцсетях.
  7. По желанию: в Campaign tracking (optional) — значения Source, Medium, Campaign, Term и Content, чтобы различать трафик этой ссылки на вкладке Analytics.
  8. Нажмите Create link.

Форма создания ссылки на вкладке Links

Скопировать готовую ссылку — значок 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) и разбивку по платформам и по ссылкам.

Превью, которые мессенджеры подгружают, когда ссылкой делятся, в переходы не засчитываются.

Вкладка Analytics

совет

Если на одной платформе выросла доля fallbacks, скорее всего, ссылки там перестали открывать приложение. Проверьте настройки этой платформы на вкладке Setup — например, отпечаток SHA-256 для Android.

  1. В Settings and Integrations > General > App Details выключите Use Firebase Dynamic Links.
  2. Пройдите шаги из раздела Настройка.

Действия Generate Current Page Link, которые уже есть в проекте, продолжат работать и начнут создавать ссылки FlutterFlow. Ссылки, созданные Firebase, не переносятся — разосланные раньше придётся заменить новыми.

Ограничения

Лимиты на один проект:

  • Приложение может создавать до 60 ссылок в минуту и до 1000 в день, и не больше 10 в минуту с одного IP-адреса. Ссылки, созданные на вкладке Links, в эти лимиты не входят.
  • Ссылки выдерживают примерно до 600 переходов в минуту.
  • Срока действия у ссылок нет. Чтобы ссылка перестала работать, отключите её.
перевод официальной документации FlutterFlow

обновлено

⌕ ESC