Za pomocą interfejsu Firebase Dynamic Links API możesz tworzyć krótkie i długie Dynamic Links. Interfejs API przyjmuje kilka opcjonalnych struktur parametrów do tworzenia linków. Krótkie linki można też tworzyć na podstawie wcześniej wygenerowanych długich linków. Interfejs Dynamic Links API wygeneruje adres URL podobny do tego:
https://example.page.link/aSDf
Zanim zaczniesz
Zanim zaczniesz korzystać z Firebase Dynamic Links, musisz:
Zarejestruj projekt Unity i skonfiguruj go tak, aby korzystał z Firebase.
Jeśli Twój projekt w Unity korzysta już z Firebase, jest on już zarejestrowany i skonfigurowany pod kątem Firebase.
Jeśli nie masz projektu Unity, możesz pobrać przykładową aplikację.
Dodaj do projektu Unity pakiet Firebase Unity SDK (a konkretnie
FirebaseDynamicLinks.unitypackage
).
Pamiętaj, że dodanie Firebase do projektu w Unity wymaga wykonania czynności zarówno w Firebasekonsoli, jak i w otwartym projekcie w Unity (np. pobierasz z konsoli pliki konfiguracyjne Firebase, a następnie przenosisz je do projektu w Unity).
Ustaw prefiks identyfikatora URI Dynamic Links
W konsoli Firebase otwórz sekcję Dynamic Links.
Jeśli nie zostały jeszcze zaakceptowane przez Ciebie warunki korzystania z usługi i nie został ustawiony prefiks identyfikatora URI dla Dynamic Links, zrób to, gdy pojawi się odpowiedni komunikat.
Jeśli masz już Dynamic Links prefiks URI, zanotuj go. Podczas programowego tworzenia Dynamic Links musisz podać prefiks identyfikatora URI Dynamic Links.
Zalecane: określ wzorce adresów URL dozwolone w precyzyjnych linkach i linkach zastępczych. W ten sposób uniemożliwisz nieuprawnionym osobom tworzenie rekordów Dynamic Links, które przekierowują z Twojej domeny do witryn, nad którymi nie masz kontroli. Zobacz Zezwalanie na określone wzorce adresów URL.
Korzystanie z konsoli Firebase
Jeśli chcesz wygenerować pojedynczy Dynamic Link, np. na potrzeby testów lub aby zespół marketingowy mógł łatwo utworzyć link, który można wykorzystać np. w poście w mediach społecznościowych, najprostszym sposobem będzie przejście do Firebasekonsoli i ręczne utworzenie go za pomocą formularza krok po kroku.
Domeny niestandardowe
Możesz mieć większą kontrolę nad brandingiem Dynamic Link, używając własnej domeny zamiast subdomeny goo.gl
lub page.link
. Aby skonfigurować domenę niestandardową dla projektu, postępuj zgodnie z tymi instrukcjami.
Korzystanie z interfejsu API Firebase Dynamic Links
Tworzenie długiego Dynamic Link na podstawie parametrów
Aby utworzyć Dynamiczny link, utwórz obiekt DynamicLinkComponents
, ustawiając dowolne opcjonalne elementy członkowskie w celu dodatkowej konfiguracji, a następnie uzyskaj dostęp do właściwości LongDynamicLink
, aby pobrać adres URL linku.
Ten minimalny przykład tworzy długi Dynamiczny Link do strony https://www.example.com/, który otwiera się w aplikacji na Androida com.example.android na urządzeniach z Androidem i w aplikacji com.example.ios na urządzeniach z 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 filmu Short Dynamic Link
Aby utworzyć krótki Dynamic Link, przekaż wcześniej wygenerowany długi link do
Firebase.DynamicLinks.GetShortLinkAsync
lub utwórz DynamicLinkComponents
w taki sam sposób jak powyżej.
GetShortLinkAsync
opcjonalnie przyjmuje dodatkowy parametr DynamicLinkOptions
config z właściwością PathLength
, co pozwala kontrolować sposób generowania linku. Generowanie krótkiego linku wymaga wysłania żądania sieciowego do backendu Firebase, więc metoda GetShortLinkAsync
jest wykonywana asynchronicznie.
GetShortLinkAsync
zwraca wartość Task<Firebase.DynamicLinks.ShortDynamicLink>
.
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 przykładzie powyżej użyto wyrażenia lambda, które jest wywoływane po zakończeniu zadania.