使用 Unity 建立 Dynamic Links

您可以透過 Firebase Dynamic Links API 製作簡短或長的 Dynamic Links。API 會使用數種選用參數結構來建立連結。短連結可以 透過先前產生的長連結建立Dynamic Links API 會產生類似下方的網址:

https://example.page.link/aSDf

事前準備

使用前 Firebase Dynamic Links、 請完成下列操作:

  • 註冊 Unity 專案,並將其設定為使用 Firebase。

    • 如果您的 Unity 專案已在使用 Firebase, 已完成註冊和設定程序。

    • 如果您沒有 Unity 專案,可以 範例應用程式

  • Firebase Unity SDK (特別是 FirebaseDynamicLinks.unitypackage) 新增至 Unity 專案

,瞭解如何調查及移除這項存取權。

請注意,將 Firebase 新增至 Unity 專案時,必須一併執行以下兩者的工作: Firebase 控制台,然後在開啟的 Unity 專案中 (例如,您可以從控制台下載 Firebase 設定檔,然後 放入您的 Unity 專案中)。

設定 Dynamic Links URI 前置字串

  1. Firebase 控制台中開啟「Dynamic Links部分。

  2. 如果您尚未接受服務條款,且已為 Dynamic Links,請在系統提示時進行。

    如果您已有 Dynamic Links URI 前置字串,請記下該前置字串,您需要執行的操作 透過程式輔助方式建立 Dynamic Links 時,請提供 Dynamic Links URI 前置字串。

  3. 建議:指定深層連結中允許的網址模式, 備用連結這樣就能防止未經授權的對象 建立 Dynamic Links,以便從你的網域重新導向至你不需要的網站 控管功能請參閱「將網址模式加入許可清單」。

使用 Firebase 控制台

產生單一Dynamic Link (用於測試用途或行銷團隊) 讓你不費吹灰之力建立連結 即可前往 Firebase 控制台 並按照逐步流程手動建立。

自訂網域

使用你自己的資料,即可進一步控管 Dynamic Link 的品牌 網域,而不是 goo.glpage.link 子網域。追蹤這些 操作說明:為 。

使用 Firebase Dynamic Links API

透過參數建立較長的 Dynamic Link

如要建立動態連結,請先建立 DynamicLinkComponents 物件, 選擇性成員的其他設定,然後存取 LongDynamicLink 屬性來取得連結網址。

以下範例最簡單的範例會建立長的動態連結, https://www.example.com/ 會透過 Android 應用程式開啟 com.example.android (Android) 和 iOS 上的應用程式 com.example.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
敬上

正在製作 Shorts 短片 Dynamic Link

如要建立短版動態連結,請將先前產生的長連結傳遞至 請Firebase.DynamicLinks.GetShortLinkAsync,或在以下位置建構 DynamicLinkComponents: 方法與上述說明相同

GetShortLinkAsync 可選擇採用額外的 DynamicLinkOptions 設定 參數搭配 PathLength 屬性,讓您控制連結的方式 。如要產生短連結,必須傳送網路要求給 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.
  }
});

上述範例使用的 lambda 運算式會在工作發生以下時間時觸發 已完成