Unity ile Dinamik Bağlantılar Oluşturma

Firebase Dynamic Links API ile kısa veya uzun Dynamic Links oluşturabilirsiniz. API, bağlantı oluşturmak için birkaç isteğe bağlı parametre yapısı kullanır. Daha önce oluşturulmuş uzun bir bağlantıdan da kısa bağlantı oluşturabilirsiniz. Dynamic Links API aşağıdaki gibi bir URL oluşturur:

https://example.page.link/aSDf

Başlamadan önce

Firebase Dynamic Links'i kullanabilmek için yapmanız gerekenler:

  • Unity projenizi kaydedin ve Firebase'i kullanacak şekilde yapılandırın.

    • Unity projeniz zaten Firebase kullanıyorsa Firebase için kayıtlı ve yapılandırılmış demektir.

    • Unity projeniz yoksa örnek uygulama indirebilirsiniz.

  • Firebase Unity SDK'sını (özellikle FirebaseDynamicLinks.unitypackage) Unity projenize ekleyin.

Firebase'i Unity projenize eklemenin hem Firebase konsolunda hem de açık Unity projenizde görevler içerdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirip Unity projenize taşırsınız).

Dynamic Links URI ön eki belirleme

  1. Firebase konsolunda Dynamic Links bölümünü açın.

  2. Hizmet şartlarını henüz kabul etmediyseniz ve Dynamic Links cihazınız için bir URI öneki ayarlamadıysanız, istendiğinde bunu yapın.

    Zaten bir Dynamic Links URI önekiniz varsa bunu not edin. Dynamic Links'ü programatik olarak oluştururken bir Dynamic Links URI ön eki sağlamanız gerekir.

  3. Önerilen: Derin bağlantılarınızda ve yedek bağlantılarınızda izin verilen URL kalıplarını belirtin. Bu sayede, yetkisiz tarafların alanınızdan kontrol etmediğiniz sitelere yönlendiren Dynamic Links oluşturmasını engellemiş olursunuz. URL kalıplarını beyaz listeye ekleme başlıklı makaleyi inceleyin.

Firebase konsolunu kullanma

Test amacıyla veya pazarlama ekibinizin sosyal medya yayını gibi bir yerde kullanılabilecek bir bağlantıyı kolayca oluşturması için tek bir Dynamic Link oluşturmak istiyorsanız en basit yol, Firebase konsolunu ziyaret edip adım adım açıklamalı formu uygulayarak manuel olarak bir Dynamic Link oluşturmaktır.

Özel alanlar

goo.gl veya page.link alt alan adı yerine kendi alan adınızı kullanarak Dynamic Link'ün marka kimliği üzerinde daha fazla kontrole sahip olabilirsiniz. Projeniz için özel bir alan oluşturmak üzere bu talimatları uygulayın.

Firebase Dynamic Links API'yi kullanma

Parametrelerden uzun bir Dynamic Link oluşturma

Dinamik bağlantı oluşturmak için DynamicLinkComponents nesnesi oluşturun, isteğe bağlı üyelerin herhangi birini ek yapılandırma için ayarlayın ve ardından bağlantı URL'sini almak için LongDynamicLink mülküne erişin.

Aşağıdaki minimum örnek, Android'de Android uygulamanız com.example.android ve iOS'te com.example.ios uygulamasıyla açılan https://www.example.com/ adresine uzun bir Dinamik Bağlantı oluşturur:

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 videosu oluşturma Dynamic Link

Kısa bir dinamik bağlantı oluşturmak için önceden oluşturulmuş uzun bir bağlantıyı Firebase.DynamicLinks.GetShortLinkAsync'e iletin veya yukarıdaki gibi DynamicLinkComponents oluşturun.

GetShortLinkAsync, isteğe bağlı olarak PathLength mülküyle birlikte ek bir DynamicLinkOptions yapılandırma parametresi alır. Bu sayede bağlantının nasıl oluşturulacağını kontrol edebilirsiniz. Kısa bağlantı oluşturmak için Firebase arka ucuna bir ağ isteği gönderilmesi gerekir. Bu nedenle GetShortLinkAsync yöntemi, eşzamansız olarak yürütülür. GetShortLinkAsync, Task<Firebase.DynamicLinks.ShortDynamicLink> döndürür.

Örneğin:

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

Yukarıdaki örnekte, görev tamamlandığında tetiklenen bir lambda ifadesi kullanılmaktadır.