Tính năng đo lường mở trong SDK IMA DAI

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 SDK IMA choiOS, SDK OM đi kèm sẽ tự động phân tích cú pháp thẻ <AdVerifications> trong các thẻ quảng cáo VAST và gửi dữ liệu về khả năng xem cho các nhà cung cấp dịch vụ đo lường được chỉ định thông qua API OMID.SDK IMA hỗ trợ SDK OM phiên bản, tiện ích GAM AdVerifys trên VAST 2 trở lên và nút AdVerifys 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ó SDK IMA cho Android phiên bản SDK IMA cho iOS 3.9.0 trở lên.

  • Quảng cáo phải được định cấu hình để quản lý <AdVerifications> trong VAST theo thông số kỹ thuật 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">.

  • Hạn chế che AdDisplayContainer bằng bất kỳ lớp phủ nào (trong suốt hoặc mờ), vì những lớp phủ này sẽ bị SDK OM gắn cờ là thành phần che khuất và làm giảm khả năng xem.

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

Kiểm thử

Để thử nghiệm số liệu Đo lường mở bằng SDK IMA, hãy sử dụng một trong các phiên bản bắt buộc của SDK nêu trên, cùng với thẻ quảng cáo thử nghiệm.

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

Đăng ký video để kiểm soát các rào cản lớp phủ

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 cho người dùng thông tin và thao tác thiết yếu khi phát. Trên thiết bị di động, việc nhấn không chính xác và kỳ vọng của người dùng khiến người dùng thường phải 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. Các nút điều khiển này thường rõ dần và mờ dần khi người dùng nhấn và không hiển thị trong phần lớn thời gian phát.

Dưới đây là một ví dụ về các nút điều khiển video do ứng dụng YouTube kết xuất:

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

Khi tính toán khả năng xem quảng cáo thông qua SDK Đo lường mở, hệ thống sẽ coi mọi chế độ xem phủ lên phần tử nội dung nghe nhìn là thành phần cản trở và làm giảm tỷ lệ khả năng 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ì bạn có thể khai báo khoảng không quảng cáo là hoàn toàn không xem được.

SDK Đo lường mở đưa ra các quy định đối với các chế độ kiểm soát video được coi là các trở ngại "phù hợp" và cần thiết cho trải nghiệm 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 của quảng cáo.

Với sự hỗ trợ của IAB và MRC, SDK IMA sẽ 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à các lớp phủ hoàn toàn trong suốt hoặc nút nhỏ. Không được đăng ký bất kỳ lượt xem nào khác không liên quan đến các nút điều khiển video.

Đăng ký DO KHÔNG đăng ký
  • Lớp phủ trong suốt để thu thập thao tác 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/tìm kiếm
    • 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 bị che khuất khác

Mã mẫu sau đây minh hoạ cách đăng ký lớp phủ kiểm soát 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)];
// Substitute "myTransparentTapOverlay" and "myPauseButton" with the elements
// you want to register as video controls 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];

Sau khi thực hiện xong, bạn có thể loại bỏ các trở ngại này bằng cách gọi phương thức sau:

[displayContainer unregisterAllFriendlyObstructions];