Możesz tworzyć krótkie lub długie linki dynamiczne za pomocą interfejsu API Firebase Dynamic Links. Interfejs API wykorzystuje kilka opcjonalnych struktur parametrów do tworzenia łączy. Krótkie linki można również utworzyć z wcześniej wygenerowanego długiego linku. Interfejs API Linków Dynamicznych wygeneruje adres URL podobny do poniższego:
https://example.page.link/aSDf
Zanim zaczniesz
Zanim będziesz mógł korzystać z Linków dynamicznych Firebase , musisz:
Zarejestruj swój projekt Unity i skonfiguruj go do korzystania z Firebase.
Jeśli Twój projekt Unity korzysta już z Firebase, oznacza to, że jest już zarejestrowany i skonfigurowany dla Firebase.
Jeśli nie masz projektu Unity, możesz pobrać przykładową aplikację .
Dodaj pakiet SDK Firebase Unity (w szczególności
FirebaseDynamicLinks.unitypackage
) do swojego projektu Unity.
Pamiętaj, że dodanie Firebase do projektu Unity obejmuje zadania zarówno w konsoli Firebase , jak i w otwartym projekcie Unity (na przykład pobierasz pliki konfiguracyjne Firebase z konsoli, a następnie przenosisz je do projektu Unity).
Ustaw prefiks URI łączy dynamicznych
W konsoli Firebase otwórz sekcję Linki dynamiczne .
Jeśli nie zaakceptowałeś jeszcze warunków korzystania z usługi i nie ustawiłeś prefiksu URI dla swoich łączy dynamicznych, zrób to po wyświetleniu monitu.
Jeśli masz już prefiks URI łączy dynamicznych, zanotuj go. Podczas programowego tworzenia łączy dynamicznych należy podać przedrostek URI łączy dynamicznych.
Zalecane : określ dozwolone wzorce adresów URL w precyzyjnych linkach i linkach zastępczych. W ten sposób uniemożliwiasz nieupoważnionym osobom tworzenie linków dynamicznych przekierowujących z Twojej domeny do witryn, nad którymi nie masz kontroli. Zobacz listę wzorców adresów URL na białej liście .
Użyj konsoli Firebase
Jeśli chcesz wygenerować pojedynczy link dynamiczny do celów testowych lub aby Twój zespół marketingowy mógł łatwo utworzyć link, który można wykorzystać w postach w mediach społecznościowych, najprostszym sposobem byłoby odwiedzenie konsoli Firebase i utworzenie takiego ręcznie, postępując zgodnie z formularzem krok po kroku.
Domeny niestandardowe
Możesz mieć większą kontrolę nad marką swojego łącza dynamicznego, używając własnej domeny zamiast subdomeny goo.gl
lub page.link
. Postępuj zgodnie z poniższymi instrukcjami , aby skonfigurować domenę niestandardową dla swojego projektu.
Korzystanie z interfejsu API łączy dynamicznych Firebase
Tworzenie długiego łącza dynamicznego na podstawie parametrów
Aby utworzyć łącze dynamiczne, utwórz obiekt DynamicLinkComponents
, ustawiając dowolne z opcjonalnych elementów członkowskich w celu dodatkowej konfiguracji, a następnie uzyskaj dostęp do właściwości LongDynamicLink
, aby uzyskać adres URL łącza.
Poniższy minimalny przykład tworzy długi link dynamiczny do https://www.example.com/, który otwiera się w aplikacji na Androida com.example.android na Androidzie i aplikacji com.example.ios na 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
Tworzenie krótkiego łącza dynamicznego
Aby utworzyć krótki link dynamiczny, przekaż wcześniej wygenerowany długi link do Firebase.DynamicLinks.GetShortLinkAsync
lub zbuduj DynamicLinkComponents
w taki sam sposób jak powyżej.
GetShortLinkAsync
opcjonalnie pobiera dodatkowy parametr konfiguracyjny DynamicLinkOptions
z właściwością PathLength
, co pozwala kontrolować sposób generowania łącza. Generowanie krótkiego łącza wymaga żądania sieciowego do zaplecza Firebase, dlatego metoda GetShortLinkAsync
jest wykonywana asynchronicznie. GetShortLinkAsync
zwraca Task<Firebase.DynamicLinks.ShortDynamicLink>
.
Na przykład:
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. } });
W powyższym przykładzie zastosowano wyrażenie lambda, które jest wyzwalane po zakończeniu zadania.