Unity ile Dinamik Bağlantılar Oluşturma

Firebase Dynamic Links API ile kısa veya uzun Dinamik Bağlantılar oluşturabilirsiniz. API'de bağlantı oluşturmak için isteğe bağlı çeşitli parametre yapıları kullanılır. Kısa bağlantılar, önceden oluşturulmuş uzun bir bağlantıdan da oluşturulabilir. 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 şunları yapmanız gerekir:

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

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

    • Unity projeniz yoksa örnek bir uygulama indirebilirsiniz.

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

Firebase'i Unity projenize eklemenin hem Firebase konsolundaki hem de açık Unity projenizdeki görevleri içerdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirir ve ardından bunları Unity projenize taşırsınız).

Dynamic Links URI öneki ayarlama

  1. Firebase konsolunda Dinamik Bağlantılar bölümünü açın.

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

    Halihazırda bir Dynamic Links URI ön ekiniz varsa bunu not edin. Programlı bir şekilde Dynamic Links oluştururken bir Dynamic Links URI öneki 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. Böylece yetkisiz tarafların, alanınızdan kontrol etmediğiniz sitelere yönlendiren Dinamik Bağlantılar oluşturmasını önlersiniz. URL kalıplarını beyaz listeye ekleme konusuna bakın.

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 Dinamik Bağlantı oluşturmak istiyorsanız en basit yöntem Firebase konsolunu ziyaret edip adım adım açıklamalı formu takip ederek manuel olarak bir bağlantı oluşturmaktır.

Özel alanlar

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

Firebase Dynamic Links API'yi kullanma

Parametrelerden uzun bir Dinamik Bağlantı oluşturma

Dinamik Bağlantı oluşturmak için bir DynamicLinkComponents nesnesi oluşturun, isteğe bağlı üyelerden 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

Kısa bir Dinamik Bağlantı oluşturma

Kısa bir Dinamik Bağlantı oluşturmak için önceden oluşturulmuş uzun bir bağlantıyı Firebase.DynamicLinks.GetShortLinkAsync adresine iletin veya yukarıdakiyle aynı şekilde DynamicLinkComponents oluşturun.

GetShortLinkAsync isteğe bağlı olarak PathLength özelliğiyle ek bir DynamicLinkOptions yapılandırma parametresi alır. Böylece bağlantının nasıl oluşturulması gerektiğini kontrol edebilirsiniz. Kısa bağlantı oluşturma işlemi, Firebase arka ucuna bir ağ isteği gerektirir. Bu nedenle GetShortLinkAsync yöntemi eşzamansız olarak yürütülür. GetShortLinkAsync, Task<Firebase.DynamicLinks.ShortDynamicLink> döndürür.

Örnek:

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.