Tworzenie linków dynamicznych w Unity

Krótkie i długie linki dynamiczne możesz tworzyć za pomocą interfejsu Firebase Dynamic Links API. Interfejs API wymaga kilku opcjonalnych struktur parametrów do utworzenia linków. Krótkie linki mogą utworzony na podstawie wcześniej wygenerowanego długiego linku. Interfejs Dynamic Links API wygeneruje URL podobny do tego:

https://example.page.link/aSDf

Zanim zaczniesz

Zanim będzie można użyć Linki dynamiczne Firebase, musisz:

  • Zarejestruj projekt Unity i skonfiguruj go pod kątem korzystania z Firebase.

    • Jeśli Twój projekt w Unity korzysta już z Firebase, zarejestrowane i skonfigurowane w Firebase.

    • Jeśli nie masz projektu Unity, możesz pobrać przykładowej aplikacji.

  • Dodaj pakiet SDK Firebase Unity (a konkretnie FirebaseDynamicLinks.unitypackage) do swojego projektu w Unity.

Pamiętaj, że dodanie Firebase do projektu Unity wymaga wykonania zadań zarówno w w konsoli Firebase i w otwartym projekcie Unity. (np. pobierasz z konsoli pliki konfiguracyjne Firebase, do swojego projektu Unity).

Ustawianie prefiksu identyfikatora URI Linków dynamicznych

  1. W konsoli Firebase otwórz sekcję Linki dynamiczne.

  2. Jeśli Warunki korzystania z usługi nie zostały jeszcze zaakceptowane i ustawiono prefiks identyfikatora URI dla linki dynamiczne, zrób to, gdy pojawi się odpowiedni komunikat.

    Jeśli masz już prefiks identyfikatora URI Linków dynamicznych, zanotuj go. Czynności, które musisz wykonać podaj prefiks identyfikatora URI Linków dynamicznych podczas automatycznego tworzenia linków dynamicznych.

  3. Zalecane: określ wzorce adresów URL dozwolone w Twoich precyzyjnych linkach i . Pozwoli to uniemożliwić nieupoważnionym osobom tworzenie linków dynamicznych przekierowujących z domeny do witryn, które nie są . Zobacz Umieszczanie wzorców adresów URL na białej liście.

Korzystanie z konsoli Firebase

Jeśli chcesz wygenerować pojedynczy link dynamiczny do celów testowych lub na potrzeby zespołu marketingowego aby utworzyć link, którego można użyć np. w poście w mediach społecznościowych, otwórz konsolę Firebase. i utworzyć ją ręcznie, postępując zgodnie z instrukcjami.

Domeny niestandardowe

Możesz mieć większą kontrolę nad marką linku dynamicznego, wykorzystując własne domenę, a nie subdomenę goo.gl lub page.link. Obserwuj te instrukcje konfigurowania domeny niestandardowej do swojego projektu.

Korzystanie z interfejsu Firebase Dynamic Links API

Tworzenie długiego linku dynamicznego na podstawie parametrów

Aby utworzyć link dynamiczny, utwórz obiekt DynamicLinkComponents, ustawiając dowolną wartość opcjonalnych użytkowników, aby przeprowadzić dodatkową konfigurację, a następnie uzyskać dostęp do LongDynamicLink, aby uzyskać adres URL linku.

Poniższy minimalny przykład pozwala utworzyć długi link dynamiczny do https://www.example.com/ otwiera się w aplikacji na Androida. com.example.android w przypadku Androida, a aplikacja 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 linku dynamicznego

Aby utworzyć krótki link dynamiczny, przekaż wcześniej wygenerowany długi link do Firebase.DynamicLinks.GetShortLinkAsync lub wbudowany DynamicLinkComponents w taki sam sposób jak powyżej.

GetShortLinkAsync opcjonalnie pobiera dodatkową konfigurację DynamicLinkOptions za pomocą właściwości PathLength, co pozwala kontrolować, . Wygenerowanie krótkiego linku wymaga wysłania żądania sieciowego do backend 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, gdy zadanie jest: .