SDK Quảng cáo tương tác trên phương tiện truyền thông (IMA) cho 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 đo lường khả năng xem và xác minh của bên thứ ba. Khi sử dụng SDK IMA cho iOS, 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 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 1.4, các 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 Open Measurement, hãy lưu ý những điểm sau:
Để sử dụng tiêu chuẩn Đ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 để 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">
.Không 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ị OM SDK 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
- Nếu quảng cáo của bạn được phân phát thông qua Ad Manager, hãy định cấu hình nhà cung cấp dịch vụ đo lường khả năng xem cho mạng Ad Manager và chỉ định nhà cung cấp dịch vụ đo lường khả năng xem đó cho mục hàng của bạn.
Thử nghiệm
Để kiểm thử Open Measurement bằng IMA SDK, 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 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ủ chế độ đ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à các 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 chế độ điều khiển lớn, thân thiện với thao tác chạm trên phần tử đa phương tiện trở thành thông lệ. Các nút đ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à không xuất hiện 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 kết xuất:
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 khung hiển thị phía trên vùng chứa hiển thị quảng cáo, hầu hết đều trong suốt. Thông thường, các nút điều khiển là phần tử con của khung 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 được dùng để ghi lại các sự kiện nhấn rồi hiển thị các chế độ kiểm soát 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ở, tất cả các khung hiển thị phủ lên phần tử đa phương tiệ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ủ trong suốt khi nhấn 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.
Open Measurement SDK cung cấp các quy định để coi các chế độ điều khiển video là thành phần che khuất "thân thiện" và 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ẽ được 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 bằng Open Measurement SDK. 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 các nút nhỏ. Bạn không được đăng ký bất kỳ chế độ xem nào khác không liên quan đến các chế độ điều khiển video.
Đăng ký DO | KHÔNG đăng ký |
---|---|
|
|
Đoạn mã mẫu sau đây minh hoạ cách đăng ký lớp phủ các nút đ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)];
// 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];
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];