สร้างลิงก์แบบไดนามิกด้วย Unity

คุณจะสร้าง Dynamic Links แบบสั้นหรือแบบยาวได้ด้วย Firebase Dynamic Links API API ใช้โครงสร้างพารามิเตอร์ทางเลือกมากมายในการสร้างลิงก์ ลิงก์แบบสั้นสามารถ อาจสร้างจากลิงก์ขนาดยาวที่สร้างไว้ก่อนหน้านี้ 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ของคุณ ทำตามเมื่อมีข้อความแจ้ง

    หากคุณมีคำนำหน้า URI Dynamic Links อยู่แล้ว โปรดสังเกตคำนำหน้าดังกล่าว สิ่งที่คุณต้องทำ โปรดระบุคำนำหน้า URI ของ Dynamic Links เมื่อคุณสร้าง Dynamic Links แบบเป็นโปรแกรม

  3. แนะนำ: ระบุรูปแบบ URL ที่อนุญาตใน Deep Link และ ลิงก์สำรอง การทำเช่นนี้จะเป็นการป้องกันไม่ให้บุคคลที่ไม่ได้รับอนุญาตสามารถ สร้าง 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

กำลังสร้าง 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.
  }
});

ตัวอย่างด้านบนใช้นิพจน์ lambda ที่ทริกเกอร์เมื่องานคือ เสร็จสมบูรณ์แล้ว