יצירת קישורים דינמיים באמצעות Unity

אפשר ליצור סרטונים קצרים או ארוכים Dynamic Links באמצעות Firebase Dynamic Links API. ה-API מקבל כמה מבני פרמטרים אופציונליים כדי ליצור קישורים. אפשר גם ליצור קישורים קצרים מקישורים ארוכים שנוצרו בעבר. ‫Dynamic Links API ייצור כתובת URL כמו זו:

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, תתבקשו לעשות זאת.

    אם כבר יש לכם קידומת Dynamic Links URI, כדאי לרשום אותה. כשיוצרים Dynamic Links באופן פרוגרמטי, צריך לציין קידומת של מזהה URI של Dynamic Links.

  3. מומלץ: מציינים את תבניות כתובות ה-URL שמותר להשתמש בהן בקישורי העומק ובקישורי הגיבוי. כך תוכלו למנוע מצדדים לא מורשים ליצור Dynamic Links שמפנים אוטומטית מהדומיין שלכם לאתרים שאין לכם שליטה עליהם. איך מאשרים תבניות ספציפיות של כתובות URL

שימוש במסוף Firebase

אם רוצים ליצור Dynamic Link אחד, למטרות בדיקה או כדי שצוות השיווק יוכל ליצור בקלות קישור שאפשר להשתמש בו למשל בפוסט ברשתות החברתיות, הדרך הכי פשוטה היא להיכנס למסוף Firebase וליצור אותו באופן ידני באמצעות הטופס המפורט.

דומיינים מותאמים אישית

כדי לקבל שליטה רבה יותר על המיתוג של Dynamic Link, אתם יכולים להשתמש בדומיין משלכם במקום בדומיין משנה של goo.gl או page.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

יצירת סרטון Shorts Dynamic Link

כדי ליצור קישור דינמי קצר, מעבירים קישור ארוך שנוצר קודם אל Firebase.DynamicLinks.GetShortLinkAsync או יוצרים DynamicLinkComponents באותה דרך כמו למעלה.

‫GetShortLinkAsync optionally takes an extra DynamicLinkOptions config parameter with the PathLength property, allowing you to control how the link should be generated. יצירת קישור קצר דורשת בקשה לאחזור מהרשת ל-Firebase backend, ולכן ה-method‏ 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.
  }
});

בדוגמה שלמעלה נעשה שימוש בביטוי למבדה שמופעל כשהמשימה מסתיימת.