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

با Firebase Dynamic Links API می توانید پیوندهای پویا کوتاه یا طولانی ایجاد کنید. 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 پیوندهای پویا تنظیم کنید

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

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

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

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

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

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

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

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

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

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

برای ایجاد یک پیوند پویا، یک شی 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

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

برای ایجاد یک پیوند پویا کوتاه، یک پیوند طولانی ایجاد شده قبلی را به 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.
  }
});

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