コンソールへ移動

Unity でダイナミック リンクを作成する

Firebase Dynamic Links API を使用して短いダイナミック リンクまたは長いダイナミック リンクを作成できます。この API でリンクを作成する際、オプションとして複数のパラメータ構造体を渡すことができます。短いリンクは、生成済みの長いリンクから作成することもできます。Dynamic Links API では、次のような URL が生成されます。

https://example.page.link/aSDf

始める前に

Firebase Dynamic Links を使用するには、あらかじめ次の作業が必要です。

  • Unity プロジェクトを登録して、Firebase を使用するように構成する。

    • Unity プロジェクトですでに Firebase を使用している場合、この登録と構成はすでに行われています。

    • Unity プロジェクトがない場合は、サンプルアプリをダウンロードできます。

  • Unity プロジェクトに Firebase Unity SDK(具体的には FirebaseDynamicLinks.unitypackage)を追加する。

Firebase を Unity プロジェクトに追加するには、Firebase コンソールと開いている Unity プロジェクトの両方でタスクを行う必要があります(コンソールから Firebase 構成ファイルをダウンロードし、それを Unity プロジェクトに移動するなど)。

Dynamic Links ドメインを設定する

  1. Firebase コンソールで [Dynamic Links] セクションを開きます。

  2. 利用規約に同意せずに Dynamic Links ドメインを設定している場合、プロンプトに従って利用規約に同意します。

    Dynamic Links ドメインを作成している場合は、それをメモしておきます。ダイナミック リンクをプログラムで作成する場合は、Dynamic Links ドメインを指定する必要があります。

  3. 推奨: ディープリンクやフォールバック リンクで許可される URL パターンを指定します。これにより、お客様のドメインからお客様の管理外のサイトへリダイレクトするダイナミック リンクが不正ユーザーによって作成されるのを防止できます。URL パターンをホワイトリストに登録するをご覧ください。

Firebase コンソールの使用

テスト用に、またはマーケティング チームがソーシャル メディア投稿などで使用できるリンクを簡単に作成できるように、1 つのダイナミック リンクを生成する必要がある場合、Firebase コンソールを開き、各手順が示されたフォームに沿って手動で作成するのが最も簡単です。

Firebase Dynamic Links API の使用

パラメータから長いダイナミック リンクを作成する

ダイナミック リンクを作成するには、DynamicLinkComponents オブジェクトを作成し、追加構成のオプションのメンバーを設定して、リンク URL を取得するために LongDynamicLink プロパティにアクセスします。

次のシンプルな例では、Android アプリ(com.example.android)と iOS アプリ(com.example.ios)で開く https://www.example.com/ への長いダイナミック リンクを作成します。

var components = new Firebase.DynamicLinks.DynamicLinkComponents(
        // The base Link.
        new System.Uri("https://www.example.com/"),
        // The dynamic link domain.
        "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

短いダイナミック リンクを作成する

短いダイナミック リンクを作成するには、生成済みの長いリンクを Firebase. DynamicLinks.GetShortLinkAsync に渡すか、長いダイナミック リンクと同じ手順で DynamicLinkComponents を作成します。

GetShortLinkAsync では、オプションで PathLength プロパティを持つ追加の DynamicLinkOptions 構成パラメータを使用できます。このパラメータにより、リンクの生成方法を制御できます。短いリンクの生成には Firebase バックエンドへのネットワーク リクエストが必要なため、GetShortLinkAsync メソッドが非同期で実行されます。 GetShortLinkAsyncTask<Firebase.DynamicLinks.ShortDynamicLink> を返します。

次に例を示します。

var options = new Firebase.DynamicLinks.DynamicLinkOptions {
    PathLength = DynamicLinkPathLength.Unguessable
};
Firebase.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.ShortLink 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.
  }

上記の例では、タスクが完了するとトリガーされるラムダ式が使用されています。