สร้างลิงก์แบบไดนามิกด้วย 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. เปิดส่วน Dynamic Links ในคอนโซล Firebase

  2. หากยังไม่ได้ยอมรับข้อกำหนดในการให้บริการและตั้งค่าคำนำหน้า URI สำหรับ Dynamic Links ให้ทำตามข้อความแจ้ง

    หากมีDynamic Linksคำนำหน้า URI อยู่แล้ว ให้จดบันทึกไว้ คุณต้องระบุคำนำหน้า 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 แบบยาวจากพารามิเตอร์

หากต้องการสร้าง 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

การสร้าง Shorts Dynamic Link

หากต้องการสร้าง Dynamic Link แบบสั้น ให้ส่งลิงก์แบบยาวที่สร้างไว้ก่อนหน้านี้ไปยัง Firebase.DynamicLinks.GetShortLinkAsync หรือสร้าง DynamicLinkComponents ในลักษณะเดียวกับด้านบน

GetShortLinkAsync อาจใช้พารามิเตอร์ DynamicLinkOptions config เพิ่มเติมที่มีพร็อพเพอร์ตี้ 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 Expression ที่ทริกเกอร์เมื่องานเสร็จสมบูรณ์