Twórz linki dynamiczne za pomocą Unity

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

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

  2. 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.

  3. 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.