Tích hợp bộ chuyển đổi tín hiệu an toàn

Chọn nền tảng: HTML5 Android iOS tvOS

Tín hiệu an toàn là dữ liệu được mã hoá, thu thập trên thiết bị của ứng dụng và chia sẻ với một số bên đặt giá thầu. Hướng dẫn này trình bày cách thu thập và gửi tín hiệu an toàn đến Google Ad Manager bằng IMA SDK.

API tín hiệu an toàn yêu cầu SDK IMA cho tvOS phiên bản 4.8.2 trở lên.

Để chọn tín hiệu và bên đặt giá thầu, đồng thời bật tính năng chia sẻ tín hiệu an toàn, hãy xem bài viết Chia sẻ tín hiệu an toàn với bên đặt giá thầu.

Sử dụng nhà cung cấp tín hiệu bên thứ ba

Để sử dụng tín hiệu an toàn, bạn phải triển khai một lớp bộ chuyển đổi trình thu thập tín hiệu trong ứng dụng của mình để thu thập tín hiệu, mã hoá tín hiệu và truyền tín hiệu đó đến SDK IMA.

Hãy làm theo hướng dẫn của nhà cung cấp bên thứ ba để thiết lập tài khoản với họ, thêm khung, và thiết lập bộ chuyển đổi tín hiệu an toàn của họ trong ứng dụng của bạn.

SDK IMA cho tvOS sẽ tự động khởi chạy từng bộ chuyển đổi tín hiệu an toàn mà không cần thay đổi gì thêm đối với mã của bạn.

Dưới đây là ví dụ về cách bạn có thể thêm bộ chuyển đổi tín hiệu an toàn vào dự án của mình:

Gửi dữ liệu tuỳ chỉnh

Ngoài việc sử dụng nhà cung cấp tín hiệu bên thứ ba, bạn cũng có thể thu thập, mã hoá và gửi tín hiệu bằng dữ liệu tuỳ chỉnh. Trước khi có thể gửi tín hiệu an toàn bằng dữ liệu tuỳ chỉnh, bạn phải bật tín hiệu tuỳ chỉnh trong Ad Manager.

Đối với mỗi yêu cầu quảng cáo, hãy làm như sau:

  1. Tạo đối tượng IMASecureSignals chứa dữ liệu tuỳ chỉnh đã mã hoá dưới dạng chuỗi.
  2. Thêm đối tượng IMASecureSignals vào yêu cầu quảng cáo bằng cách đặt thuộc tính IMAAdsRequest.secureSignals:

Objective-C

BasicExample/ViewController.m

...
- (void)requestAds {
  // Create an ad display container for ad rendering.
  IMAAdDisplayContainer *adDisplayContainer =
      [[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView
                                          viewController:self
                                          companionSlots:nil];
  // Create an ad request with our ad tag, display container, and optional user context.
  IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:kTestAppAdTagUrl
                                                adDisplayContainer:adDisplayContainer
                                                   contentPlayhead:self.contentPlayhead
                                                       userContext:nil];
  
  IMASecureSignals *signals =
      [[IMASecureSignals alloc] initWithCustomData:@"My encoded signal string"];
  request.secureSignals = signals;
  
  [self.adsLoader requestAdsWithRequest:request];
}
...

Swift

BasicExample/ViewController.swift

...
private func requestAds() {
  // Create ad display container for ad rendering.
  let adDisplayContainer = IMAAdDisplayContainer(
    adContainer: videoView, viewController: self, companionSlots: nil)
  // Create an ad request with our ad tag, display container, and optional user context.
  let request = IMAAdsRequest(
    adTagUrl: ViewController.testAppAdTagURL,
    adDisplayContainer: adDisplayContainer,
    contentPlayhead: contentPlayhead,
    userContext: nil)
  
  let signals = IMASecureSignals(customData: "My encoded signal string")
  request.secureSignals = signals
  
  adsLoader.requestAds(with: request)
}
...