Tạo đường liên kết động bằng Unity

Bạn có thể tạo Dynamic Links ngắn hoặc dài bằng API Firebase Dynamic Links. API lấy một số cấu trúc tham số không bắt buộc để tạo các liên kết. Đường liên kết ngắn có thể cũng được tạo từ một đường liên kết dài đã tạo trước đó. API liên kết động sẽ tạo một URL như sau:

https://example.page.link/aSDf

Trước khi bắt đầu

Trước khi bạn có thể sử dụng Firebase Dynamic Links! bạn cần:

  • Đăng ký dự án Unity của bạn và định cấu hình dự án đó để sử dụng Firebase.

    • Nếu dự án Unity của bạn đã sử dụng Firebase thì tức là dự án đã đã đăng ký và định cấu hình cho Firebase.

    • Nếu không có dự án Unity, bạn có thể tải ứng dụng mẫu.

  • Thêm SDK Unity Firebase (cụ thể là FirebaseDynamicLinks.unitypackage) vào dự án Unity của bạn.

Lưu ý rằng việc thêm Firebase vào dự án Unity bao gồm cả các tác vụ trong Bảng điều khiển Firebase và trong dự án Unity đang mở của bạn (ví dụ: bạn tải các tệp cấu hình Firebase xuống từ bảng điều khiển, rồi di chuyển vào dự án Unity).

Đặt tiền tố URI Dynamic Links

  1. Trong bảng điều khiển Firebase, hãy mở phần Dynamic Links.

  2. Nếu bạn chưa chấp nhận điều khoản dịch vụ và đặt tiền tố URI cho Dynamic Links của bạn, hãy thực hiện việc này khi được nhắc.

    Nếu bạn đã có tiền tố URI Dynamic Links, hãy ghi lại tiền tố đó. Bạn cần cung cấp tiền tố URI Dynamic Links khi bạn tạo Dynamic Links theo phương thức lập trình.

  3. Đề xuất: Chỉ định các mẫu URL được phép trong đường liên kết sâu và đường liên kết dự phòng. Bằng cách làm như vậy, bạn sẽ ngăn chặn các bên trái phép tạo Dynamic Links chuyển hướng từ miền của bạn đến các trang web bạn không kiểm soát. Xem Mẫu URL danh sách cho phép.

Sử dụng bảng điều khiển Firebase

Nếu bạn muốn tạo một Dynamic Link cho mục đích thử nghiệm hoặc cho nhóm tiếp thị để dễ dàng tạo một đường liên kết có thể dùng như bài đăng trên mạng xã hội, cách đơn giản nhất là truy cập vào bảng điều khiển của Firebase rồi tạo trang web theo cách thủ công theo biểu mẫu hướng dẫn từng bước.

Miền tuỳ chỉnh

Bạn có thể kiểm soát tốt hơn các thành phần xây dựng thương hiệu của Dynamic Link bằng cách sử dụng thương hiệu của riêng mình thay vì miền con goo.gl hoặc page.link. Làm theo các hướng dẫn này hướng dẫn thiết lập miền tuỳ chỉnh cho dự án của bạn.

Sử dụng API Firebase Dynamic Links

Tạo một Dynamic Link dài từ các tham số

Để tạo Đường liên kết động, hãy tạo đối tượng DynamicLinkComponents, đặt giá trị bất kỳ thành viên không bắt buộc để định cấu hình bổ sung, sau đó truy cập vào LongDynamicLink để nhận URL liên kết.

Ví dụ tối giản sau đây sẽ tạo một Liên kết động dài tới https://www.example.com/ mở bằng ứng dụng Android của bạn com.example.android trên Android và ứng dụng com.example.ios trên 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

Tạo một Dynamic Link ngắn

Để tạo một Đường liên kết động ngắn, hãy chuyển một đường liên kết dài đã tạo trước đó đến Firebase.DynamicLinks.GetShortLinkAsync hoặc tạo DynamicLinkComponents ở tương tự như trên.

GetShortLinkAsync không bắt buộc phải lấy thêm một cấu hình DynamicLinkOptions với thuộc tính PathLength, cho phép bạn kiểm soát cách liên kết cần được tạo. Để tạo đường liên kết ngắn, bạn cần gửi một yêu cầu mạng đến Phần phụ trợ của Firebase, vì vậy, phương thức GetShortLinkAsync được thực thi không đồng bộ. GetShortLinkAsync trả về Task<Firebase.DynamicLinks.ShortDynamicLink>.

Ví dụ:

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.
  }
});

Ví dụ ở trên sử dụng biểu thức lambda được kích hoạt khi tác vụ đã hoàn tất.