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

คุณสามารถสร้างลิงก์ไดนามิกแบบสั้นหรือยาวได้ด้วย 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 ลิงก์แบบไดนามิก

  1. ในคอนโซล Firebase ให้เปิดส่วน ลิงก์แบบไดนามิก

  2. หากคุณยังไม่ได้ยอมรับข้อกำหนดในการให้บริการและตั้งค่าคำนำหน้า URI สำหรับลิงก์ไดนามิกของคุณ ให้ดำเนินการเมื่อได้รับแจ้ง

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

  3. แนะนำ : ระบุรูปแบบ URL ที่อนุญาตในลิงก์ในรายละเอียดและลิงก์สำรองของคุณ การทำเช่นนี้จะเป็นการป้องกันไม่ให้บุคคลที่ไม่ได้รับอนุญาตสร้างลิงก์แบบไดนามิกที่เปลี่ยนเส้นทางจากโดเมนของคุณไปยังไซต์ที่คุณไม่ได้ควบคุม ดู รูปแบบ URL ที่อนุญาตพิเศษ

ใช้คอนโซล Firebase

หากคุณต้องการสร้างลิงก์ไดนามิกลิงก์เดียว ไม่ว่าจะเพื่อการทดสอบ หรือเพื่อให้ทีมการตลาดของคุณสร้างลิงก์ที่สามารถนำไปใช้ในโพสต์บนโซเชียลมีเดียได้อย่างง่ายดาย วิธีที่ง่ายที่สุดคือไปที่ คอนโซล Firebase และสร้างลิงก์ขึ้นมา ด้วยตนเองตามแบบฟอร์มทีละขั้นตอน

โดเมนที่กำหนดเอง

คุณสามารถควบคุมการสร้างแบรนด์ของลิงก์แบบไดนามิกได้ดียิ่งขึ้นโดยใช้โดเมนของคุณเองแทนโดเมนย่อย goo.gl หรือ page.link ทำตาม คำแนะนำเหล่านี้ เพื่อตั้งค่าโดเมนที่กำหนดเองสำหรับโปรเจ็กต์ของคุณ

การใช้ 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.
  }
});

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