สร้างลิงก์แบบไดนามิกด้วย 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 ให้ดำเนินการเมื่อได้รับข้อความแจ้ง

    หากมีคำนำหน้า 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 ของลิงก์

ตัวอย่างแบบย่อต่อไปนี้สร้าง Dynamic Link แบบยาวไปยัง 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 ที่ทริกเกอร์เมื่องานเสร็จสมบูรณ์