Créer des liens dynamiques avec Unity

Vous pouvez créer des liens dynamiques courts ou longs avec l'API.Dynamic LinksFirebase Dynamic Links L'API accepte plusieurs structures de paramètres facultatifs pour créer des liens. Vous pouvez également créer des liens courts à partir d'un lien long généré précédemment. L'API Dynamic Links génère une URL semblable à la suivante :

https://example.page.link/aSDf

Avant de commencer

Avant de pouvoir utiliser Firebase Dynamic Links, vous devez :

  • enregistrer votre projet Unity et le configurer pour qu'il utilise Firebase.

    • Si votre projet Unity utilise déjà Firebase, il est déjà enregistré et configuré pour Firebase.

    • Si vous ne disposez pas de projet Unity, vous pouvez télécharger un exemple d'application.

  • Ajouter le Firebase Unity SDK (plus précisément, FirebaseDynamicLinks.unitypackage) à votre projet Unity.

Notez que l'ajout de Firebase à votre projet Unity implique des tâches à la fois dans la Firebase console et dans votre projet Unity ouvert (par exemple, vous téléchargez des fichiers de configuration Firebase depuis la console, puis vous les déplacez dans votre projet Unity).

Définir un préfixe d'URI Dynamic Links

  1. Dans la console Firebase, ouvrez la section Dynamic Links.

  2. Si vous n'avez pas encore accepté les conditions d'utilisation et défini un préfixe d'URI pour vos Dynamic Links, faites-le lorsque vous y êtes invité.

    Si vous disposez déjà d'un préfixe d'URI Dynamic Links, notez-le. Vous devez fournir un Dynamic Links préfixe d'URI lorsque vous créez Dynamic Links par programmation.

  3. Recommandé : Indiquez les formats d'URL autorisés pour vos liens profonds et liens de remplacement. Vous empêchez ainsi des tiers non autorisés de créer des liens dynamiques Dynamic Links qui redirigent de votre domaine vers des sites que vous ne contrôlez pas. Consultez Autoriser des formats d'URL spécifiques.

Utiliser la Firebase console

Si vous souhaitez générer un seul Dynamic Link, à des fins de test ou pour que votre équipe marketing puisse facilement créer un lien à utiliser dans un post sur les réseaux sociaux, par exemple, le plus simple serait d'accéder à la Firebase console et de le créer manuellement en suivant le formulaire pas à pas.

Domaines personnalisés

Vous pouvez mieux contrôler la marque de votre Dynamic Link's en utilisant votre propre domaine au lieu d'un goo.gl ou page.link sous-domaine. Suivez ces instructions pour configurer un domaine personnalisé pour votre projet.

Utiliser l'API Firebase Dynamic Links

Créer un long Dynamic Link à partir de paramètres

Pour créer un lien dynamique, créez un objet DynamicLinkComponents, définissez l'un des membres facultatifs pour une configuration supplémentaire, puis accédez à la propriété LongDynamicLink pour obtenir l'URL du lien.

L'exemple minimal suivant crée un lien dynamique long vers https://www.example.com/ qui s'ouvre avec votre application Android com.example.android sur Android et l'application com.example.ios sur 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

Créer un lien dynamique court Dynamic Link

Pour créer un lien dynamique court, transmettez un lien long généré précédemment à Firebase.DynamicLinks.GetShortLinkAsync ou créez DynamicLinkComponents de la même manière que ci-dessus.

GetShortLinkAsync accepte éventuellement un paramètre de configuration DynamicLinkOptions supplémentaire avec la propriété PathLength, ce qui vous permet de contrôler la façon dont le lien doit être généré. La génération de liens courts nécessite une requête réseau auprès du backend Firebase. La méthode GetShortLinkAsync est donc exécutée de manière asynchrone. GetShortLinkAsync renvoie un Task<Firebase.DynamicLinks.ShortDynamicLink>.

Exemple :

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.
  }
});

L'exemple ci-dessus utilise une expression lambda qui est déclenchée lorsque la tâche est terminée.