ایجاد لینک های پویا با یونیتی

با Firebase Dynamic Links API می توانید Dynamic Links کوتاه یا طولانی ایجاد کنید. API چندین ساختار پارامتر اختیاری برای ایجاد پیوندها می گیرد. پیوندهای کوتاه همچنین می توانند از یک پیوند طولانی که قبلاً ایجاد شده است ایجاد شوند. Dynamic Links API یک URL مانند شکل زیر ایجاد می کند:

https://example.page.link/aSDf

قبل از شروع

قبل از اینکه بتوانید از Firebase Dynamic Links استفاده کنید، باید:

  • پروژه Unity خود را ثبت کرده و آن را برای استفاده از Firebase پیکربندی کنید.

    • اگر پروژه Unity شما قبلاً از Firebase استفاده می‌کند، پس از قبل برای Firebase ثبت و پیکربندی شده است.

    • اگر پروژه یونیتی ندارید، می توانید یک برنامه نمونه دانلود کنید.

  • Firebase Unity SDK (به طور خاص FirebaseDynamicLinks.unitypackage ) را به پروژه Unity خود اضافه کنید.

توجه داشته باشید که افزودن Firebase به پروژه Unity شما شامل وظایفی در کنسول Firebase و پروژه Unity باز شما می شود (به عنوان مثال، فایل های پیکربندی Firebase را از کنسول دانلود می کنید، سپس آنها را به پروژه Unity خود منتقل می کنید).

یک پیشوند URI Dynamic Links تنظیم کنید

  1. در کنسول Firebase ، بخش Dynamic Links را باز کنید.

  2. اگر قبلاً شرایط خدمات را نپذیرفته اید و یک پیشوند URI برای Dynamic Links خود تنظیم نکرده اید، وقتی از شما خواسته شد این کار را انجام دهید.

    اگر قبلاً یک پیشوند URI Dynamic Links دارید، به آن توجه داشته باشید. هنگامی که Dynamic Links به صورت برنامه‌نویسی ایجاد می‌کنید، باید یک پیشوند URI Dynamic Links ارائه دهید.

  3. توصیه شده : الگوهای URL مجاز در پیوندهای عمیق و پیوندهای بازگشتی خود را مشخص کنید. با انجام این کار، از ایجاد Dynamic Links توسط اشخاص غیرمجاز که از دامنه شما به سایت هایی که تحت کنترل شما نیستند هدایت می شوند، جلوگیری می کنید. الگوهای URL لیست سفید را ببینید.

از کنسول Firebase استفاده کنید

اگر می خواهید یک Dynamic Link ایجاد کنید، چه برای اهداف آزمایشی، یا برای اینکه تیم بازاریابی شما به راحتی پیوندی ایجاد کند که می تواند در چیزی مانند یک پست رسانه اجتماعی استفاده شود، ساده ترین راه این است که به کنسول Firebase مراجعه کنید و یکی ایجاد کنید. به صورت دستی فرم گام به گام را دنبال کنید.

دامنه های سفارشی

با استفاده از دامنه خود به جای زیردامنه goo.gl یا page.link ، می توانید کنترل بیشتری بر نام تجاری Dynamic Link خود داشته باشید. این دستورالعمل ها را دنبال کنید تا یک دامنه سفارشی برای پروژه خود راه اندازی کنید.

با استفاده از Firebase Dynamic Links API

ایجاد یک Dynamic Link طولانی از پارامترها

برای ایجاد یک پیوند پویا، یک شی DynamicLinkComponents ایجاد کنید، هر یک از اعضای اختیاری را برای پیکربندی اضافی تنظیم کنید، و سپس به ویژگی LongDynamicLink دسترسی پیدا کنید تا URL پیوند را دریافت کنید.

مثال حداقلی زیر یک پیوند پویا طولانی به https://www.example.com/ ایجاد می کند که با برنامه Android شما com.example.android در Android و برنامه com.example.ios در 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

ایجاد یک 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.
  }
});

مثال بالا از یک عبارت لامبدا استفاده می کند که پس از تکمیل کار فعال می شود.