ساختن «پیوندهای پویا» با 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 خود منتقل می‌کنید).

تنظیم پیشوند نشانی وب Dynamic Links

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

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

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

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

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

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

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

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

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

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

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