Вы можете создавать короткие или длинные динамические ссылки с помощью Firebase Dynamic Links API. API использует несколько необязательных структур параметров для построения ссылок. Короткие ссылки также могут быть созданы из ранее созданной длинной ссылки. API динамических ссылок сгенерирует URL-адрес, подобный следующему:
https://example.page.link/aSDf
Прежде чем вы начнете
Прежде чем вы сможете использовать динамические ссылки Firebase , вам необходимо:
Зарегистрируйте свой проект Unity и настройте его для использования Firebase.
Если ваш проект Unity уже использует Firebase, значит, он уже зарегистрирован и настроен для Firebase.
Если у вас нет проекта Unity, вы можете загрузить образец приложения .
Добавьте Firebase Unity SDK (в частности,
FirebaseDynamicLinks.unitypackage
) в свой проект Unity.
Обратите внимание, что добавление Firebase в ваш проект Unity включает задачи как в консоли Firebase, так и в вашем открытом проекте Unity (например, вы загружаете файлы конфигурации Firebase из консоли, а затем перемещаете их в свой проект Unity).
Установите префикс URI динамических ссылок
В консоли Firebase откройте раздел Динамические ссылки .
Если вы еще не приняли условия обслуживания и не установили префикс URI для динамических ссылок, сделайте это при появлении соответствующего запроса.
Если у вас уже есть префикс URI динамических ссылок, запишите его. Вам необходимо предоставить префикс URI динамических ссылок при программном создании динамических ссылок.
Рекомендуется : укажите шаблоны URL, разрешенные в ваших глубоких и резервных ссылках. Тем самым вы предотвращаете создание неавторизованными сторонами динамических ссылок, которые перенаправляют с вашего домена на сайты, которые вы не контролируете. См. Шаблоны URL-адресов в белом списке .
Используйте консоль Firebase
Если вы хотите создать одну динамическую ссылку либо для целей тестирования, либо для вашей маркетинговой команды, чтобы легко создать ссылку, которую можно использовать в чем-то вроде публикации в социальных сетях, самым простым способом было бы посетить консоль Firebase и создать ее. вручную, следуя пошаговой форме.
Пользовательские домены
Вы можете иметь больший контроль над брендингом Dynamic Линка, используя свой собственный домен вместо goo.gl
или page.link
подобласти. Следуйте этим инструкциям, чтобы настроить собственный домен для вашего проекта.
Использование API динамических ссылок Firebase
Создание длинной динамической ссылки из параметров
Чтобы создать динамическую ссылку, создайте объект DynamicLinkComponents
, задав любой из дополнительных элементов для дополнительной настройки, а затем LongDynamicLink
свойству LongDynamicLink
чтобы получить URL-адрес ссылки.
В следующем минимальном примере создается длинная динамическая ссылка на https://www.example.com/, которая открывается с вашим приложением Android com.example.android на Android и приложением com.example.ios на iOS:
var components = new Firebase.DynamicLinks.DynamicLinkComponents( // The base Link. new System.Uri("https://www.example.com/"), // The dynamic link URI prefix. "https://example.page.link") { IOSParameters = new Firebase.DynamicLinks.IOSParameters("com.example.ios"), AndroidParameters = new Firebase.DynamicLinks.AndroidParameters( "com.example.android.package_name"), }; // do something with: components.LongDynamicLink
Создание короткой динамической ссылки
Чтобы создать короткую динамическую ссылку, передайте ранее созданную длинную ссылку в Firebase.DynamicLinks.GetShortLinkAsync
или создайте DynamicLinkComponents
же, как описано выше.
GetShortLinkAsync
необязательно принимает дополнительный параметр конфигурации DynamicLinkOptions
со свойством PathLength
, что позволяет вам контролировать, как должна создаваться ссылка. Для создания коротких ссылок требуется сетевой запрос к GetShortLinkAsync
Firebase, поэтому метод GetShortLinkAsync
выполняется асинхронно. GetShortLinkAsync
возвращает Task<Firebase.DynamicLinks.ShortDynamicLink>
.
Например:
var options = new Firebase.DynamicLinks.DynamicLinkOptions { PathLength = DynamicLinkPathLength.Unguessable }; Firebase.DynamicLinks.DynamicLinks.GetShortLinkAsync(components, options).ContinueWith(task => { if (task.IsCanceled) { Debug.LogError("GetShortLinkAsync was canceled."); return; } if (task.IsFaulted) { Debug.LogError("GetShortLinkAsync encountered an error: " + task.Exception); return; } // Short Link has been created. Firebase.DynamicLinks.ShortDynamicLink link = task.Result; Debug.LogFormat("Generated short link {0}", link.Url); var warnings = new System.Collections.Generic.List<string>(link.Warnings); if (warnings.Count > 0) { // Debug logging for warnings generating the short link. } });
В приведенном выше примере используется лямбда-выражение, которое запускается при завершении задачи.