ساختن «پیوندهای پویا» با Unity

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

https://example.page.link/aSDf

قبل از شروع

پیش‌از اینکه بتوانید از Firebase Dynamic Links استفاده کنید، باید:

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

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

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

  • 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. توصیه‌شده: الگوهای نشانی وب مجاز در پیوندهای عمیق و پیوندهای بازگشتی را مشخص کنید. با انجام این کار، از ایجاد Dynamic Links توسط طرف‌های غیرمجاز که از دامنه شما به سایت‌هایی که تحت کنترل شما نیستند هدایت می‌کنند، جلوگیری می‌کنید. به مجاز کردن الگوهای نشانی وب خاص مراجعه کنید.

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

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

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

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

استفاده از میانای برنامه‌سازی کاربردی Firebase Dynamic Links

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

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

مثال حداقلی زیر یک «پیوند پویا» طولانی به 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.
  }
});

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