Bật tính năng Đo lường mở

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

SDK IMA cho iOS bao gồm SDK Đo lường mở (OM), một tiêu chuẩn ngành do Cục Quảng cáo tương tác (IAB) phát triển để cho phép bên thứ ba đo lường khả năng xem và xác minh. Khi sử dụng IMA SDK cho iOS, OM SDK đi kèm sẽ tự động phân tích cú pháp thẻ <AdVerifications> trong thẻ quảng cáo VAST và gửi dữ liệu về khả năng xem đến các nhà cung cấp dịch vụ đo lường được chỉ định bằng OMID API. SDK IMA hỗ trợ OM SDK phiên bản 1.6, tiện ích AdVerifications của GAM trên VAST 2 trở lên và nút AdVerifications trên VAST 4 trở lên.Để tận dụng tính năng Đo lường mở, hãy lưu ý những điểm sau:

  • Để sử dụng tính năng Đo lường mở, bạn phải có phiên bản 3.9.0 trở lên của IMA SDK cho iOS.

  • Quảng cáo phải được định cấu hình để phân phát <AdVerifications> trong VAST theo quy cách VAST 4.1 nếu sử dụng VAST 4.1 trở lên; nếu không, bạn nên sử dụng <Extension type="AdVerifications">.

  • Tránh che AdDisplayContainer bằng bất kỳ lớp phủ nào (trong suốt hoặc mờ), vì SDK OM sẽ gắn cờ các lớp phủ này là yếu tố gây cản trở và làm giảm khả năng xem.

Điều kiện tiên quyết

Thử nghiệm

Để thử nghiệm tính năng Đo lường mở bằng IMA SDK, hãy sử dụng một phiên bản IMA hỗ trợ OM SDK, cùng với một thẻ quảng cáo thử nghiệm.

Bạn sẽ thấy <AdVerifications> được trả về trong phản hồi VAST.

Đăng ký các vật cản lớp phủ điều khiển video

Các nút điều khiển video như nút tạm dừng hoặc thanh tiến trình cung cấp thông tin và thao tác phát cần thiết cho người dùng. Trên thiết bị di động, các thao tác nhấn không chính xác và kỳ vọng của người dùng đã khiến việc hiển thị các nút điều khiển lớn, thân thiện với thao tác chạm trên phần tử nội dung nghe nhìn trở thành một phương pháp phổ biến. Các chế độ điều khiển này thường xuất hiện và biến mất khi người dùng nhấn vào và không hiển thị trong phần lớn thời gian phát.

Để xem ví dụ về các nút điều khiển video lớp phủ, hãy xem hình ảnh sau đây về các nút điều khiển hiển thị của ứng dụng YouTube:

Hình ảnh ví dụ về lớp phủ đo lường mở

Khi sử dụng IMA SDK, hầu hết nhà xuất bản đều triển khai các chế độ kiểm soát này bằng cách thêm một chế độ xem phía trên vùng chứa hiển thị quảng cáo (chế độ xem này hầu như trong suốt). Thông thường, các nút điều khiển là phần tử con của chế độ xem này, che khuất hoàn toàn trình phát video bên dưới. Lớp phủ trong suốt này được dùng để ghi lại các sự kiện nhấn, sau đó hiển thị các nút điều khiển cho người dùng khi họ nhấn.

Khi khả năng xem quảng cáo bằng SDK Đo lường mở được tính toán, tất cả các chế độ xem phủ lên phần tử nội dung nghe nhìn đều được coi là vật cản và làm giảm tỷ lệ có thể xem. Trong trường hợp lớp phủ nhấn trong suốt nằm phía trên toàn bộ vùng chứa hiển thị quảng cáo, thì khoảng không quảng cáo có thể được khai báo là hoàn toàn không thể xem.

SDK Đo lường mở cung cấp các điều khoản để các chế độ điều khiển video được coi là các vật cản "thân thiện" cần thiết cho trải nghiệm của người dùng. Sau khi được đăng ký là thân thiện, các chế độ kiểm soát này sẽ bị loại trừ khỏi hoạt động đo lường khả năng xem quảng cáo.

Với sự hỗ trợ của IAB và MRC, SDK IMA giới thiệu một API để đăng ký các lớp phủ này với SDK Đo lường mở. Các nút điều khiển này phải là lớp phủ hoàn toàn trong suốt hoặc nút nhỏ. Không được đăng ký bất kỳ thành phần hiển thị nào khác không liên quan đến các nút điều khiển video.

NÊN đăng ký KHÔNG đăng ký
  • Lớp phủ trong suốt để ghi lại các lượt nhấn của người dùng
  • Nút tạm thời
    • Tạm dừng
    • Phát
    • Toàn màn hình
    • Truyền/AirPlay
    • Thu gọn
    • Tiến trình/Tua
    • Các thao tác khác liên quan đến việc phát
  • Hình mờ
  • Cửa sổ bật lên
  • Hộp thoại
  • Nút không tạm thời
  • Các chế độ xem khác bị che khuất

Mã mẫu sau đây minh hoạ cách đăng ký lớp phủ điều khiển video trên vùng chứa hiển thị quảng cáo:

UIView *myTransparentTapOverlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 250)];
UIButton *myPauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 10)];
// Replace myTransparentTapOverlay and myPauseButton with your own elements
// that function as video control overlays.
// Make sure to register before ad playback starts.
IMAFriendlyObstruction *overlayObstruction =
   [[IMAFriendlyObstruction alloc] initWithView:myTransparentTapOverlay
                                          purpose:IMAFriendlyObstructionPurposeNotVisible
                                 detailedReason:@"This overlay is transparent"];
IMAFriendlyObstruction *pauseButtonObstruction =
   [[IMAFriendlyObstruction alloc] initWithView:myPauseButton
                                          purpose:IMAFriendlyObstructionPurposeMediaControls
                                 detailedReason:@"This is the video player pause button"];

[displayContainer registerFriendlyObstruction:overlayObstruction];
[displayContainer registerFriendlyObstruction:pauseButtonObstruction];

Khi bạn hoàn tất, bạn có thể xoá các vật cản này bằng cách gọi phương thức sau:

Objective-C

- (void)unregisterObstructionsForContainer:(IMAAdDisplayContainer *)displayContainer {
    // This removes all previously registered friendly obstructions from the container.
    [displayContainer unregisterAllFriendlyObstructions];
}

Swift

func unregisterObstructions(displayContainer: IMAAdDisplayContainer) {
  // This removes all previously registered friendly obstructions from the container.
  displayContainer.unregisterAllFriendlyObstructions()
}