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

SDK IMA dành cho Android bao gồm SDK Đo lường mở (OM), một tiêu chuẩn ngành do Interactive Advertising Bureau (IAB) phát triển để cho phép đo lường khả năng xem và xác minh của bên thứ ba. Khi sử dụng SDK IMA cho Android, SDK OM đ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 đo lường được chỉ định thông qua API OMID.SDK IMA hỗ trợ SDK OM phiên bản 1.4, 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 SDK IMA cho Android phiên bản 3.11.0 trở lên. Tuy nhiên, mẫu trong hướng dẫn này được thiết kế cho phiên bản SDK mới nhất và bao gồm các API được giới thiệu trong phiên bản 3.16.5.

  • Quảng cáo phải được định cấu hình để lưu lượng truy cập <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">.

  • Tránh che AdDisplayContainer bằng bất kỳ lớp phủ nào (trong suốt hoặc mờ), vì các lớp phủ này sẽ bị SDK OM gắn cờ là vật cản 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 SDK IMA, hãy sử dụng một trong các phiên bản bắt buộc của SDK ở 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.

Đă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 cho người dùng thông tin và thao tác phát quan trọ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 mờ dần 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.

Dưới đây là ví dụ về các nút điều khiển video do ứng dụng YouTube hiển thị:

Khi sử dụng SDK IMA, 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 thành phần hiển thị phía trên vùng chứa hiển thị quảng cáo, trong đó vùng chứa này chủ yếu là trong suốt. Thông thường, các thành phần điều khiển là các phần tử con của thành phần hiển thị này, 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 nhấn vào.

Khi tính khả năng xem quảng cáo thông qua SDK Đo lường mở, tất cả thành phần hiển thị phủ lên phần tử nội dung nghe nhìn đều được coi là thành phần che khuất 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ì khoảng không quảng cáo có thể được khai báo là hoàn toàn không xem được.

SDK Đo lường mở đưa ra các quy định để các nút điều khiển video được coi là thành phần che khuất "không gây phiền toái", cần thiết cho trải nghiệm của người dùng. Sau khi được đăng ký là chế độ 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 hiển thị 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 bằng SDK Đo lường mở. Các thành phần điều khiển này phải là lớp phủ hoàn toàn minh bạch hoặc các nút nhỏ. Bạn 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 chế độ điều khiển video.

Đăng ký KHÔNG đăng ký
  • Lớp phủ trong suốt để ghi lại các lần 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 che khuất khác

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:

myTransparentTapOverlay = (ViewGroup) rootView.findViewById(R.id.overlay);
myPauseButton = (ImageButton) rootView.findViewById(R.id.pauseButton);
// Substitute "myTransparentTapOverlay" and "myPauseButton" with the
// elements you want to register as video controls overlays.
// Make sure to register before ad playback starts.
overlayObstruction = ImaSdkFactory.createFriendlyObstruction(
  myTransparentTapOverlay,
  FriendlyObstructionPurpose.NOT_VISIBLE,
  "This overlay is transparent"
);
pauseButtonObstruction = ImaSdkFactory.createFriendlyObstruction(
  myPauseButton,
  FriendlyObstructionPurpose.VIDEO_CONTROLS,
  "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:

displayContainer.unregisterAllFriendlyObstructions();