SDK IMA giúp bạn dễ dàng tích hợp quảng cáo đa phương tiện vào trang web và ứng dụng của mình. SDK IMA có thể yêu cầu quảng cáo từ bất kỳ máy chủ quảng cáo nào tuân thủ VAST và quản lý việc phát quảng cáo trong ứng dụng của bạn. Với SDK IMA DAI, ứng dụng sẽ tạo một yêu cầu truyền phát cho quảng cáo và video nội dung – VOD hoặc nội dung trực tiếp. Sau đó, SDK sẽ trả về một luồng video kết hợp để bạn không phải quản lý việc chuyển đổi giữa quảng cáo và video nội dung trong ứng dụng.
Chọn giải pháp DAI mà bạn quan tâm
DAI trọn gói
Hướng dẫn này minh hoạ cách tích hợp SDK IMA DAI vào ứng dụng trình phát video. Nếu bạn muốn xem hoặc làm theo một ví dụ tích hợp mẫu đã hoàn tất, hãy tải ví dụ đơn giản xuống từ GitHub.
Tổng quan về DAI của IMA
Việc triển khai SDK IMA DAI bao gồm hai thành phần chính như minh hoạ trong hướng dẫn này:
StreamRequest
–VODStreamRequest
hoặcLiveStreamRequest
: Một đối tượng xác định yêu cầu truyền trực tuyến. Yêu cầu phát trực tuyến có thể là cho video theo yêu cầu hoặc sự kiện phát trực tiếp. Yêu cầu phát trực tiếp chỉ định khoá thành phần, còn yêu cầu VOD chỉ định mã CMS và mã video. Cả hai loại yêu cầu đều có thể bao gồm khoá API cần thiết để truy cập vào các luồng đã chỉ định và mã mạng Google Ad Manager cho SDK IMA để xử lý giá trị nhận dạng quảng cáo như được chỉ định trong phần cài đặt Google Ad Manager.StreamManager
: Một đối tượng xử lý các luồng chèn quảng cáo động và tương tác với phần phụ trợ DAI. Trình quản lý luồng cũng xử lý ping theo dõi và chuyển tiếp sự kiện quảng cáo và luồng đến nhà xuất bản.
Điều kiện tiên quyết
- Ba tệp trống
- dai.html
- dai.css
- dai.js
- Python đã cài đặt trên máy tính hoặc máy chủ web để dùng cho hoạt động kiểm thử
Khởi động máy chủ phát triển
Vì SDK IMA DAI tải các phần phụ thuộc bằng cùng một giao thức với trang tải phần phụ thuộc, nên bạn cần sử dụng máy chủ web để kiểm thử ứng dụng. Một cách nhanh chóng để khởi động máy chủ phát triển cục bộ là sử dụng máy chủ tích hợp sẵn của Python.
Sử dụng dòng lệnh, từ thư mục chứa tệp
index.html
, hãy chạy:python -m http.server 8000
Trong trình duyệt web, hãy chuyển đến
http://localhost:8000/
Bạn cũng có thể sử dụng bất kỳ máy chủ web nào khác, chẳng hạn như Máy chủ HTTP Apache.
Tạo trình phát video
Trước tiên, hãy sửa đổi dai.html để tạo một phần tử video HTML5 và một div để sử dụng cho lượt nhấp. Ví dụ sau đây nhập SDK IMA DAI. Để biết thêm thông tin chi tiết, hãy xem phần Nhập SDK IMA DAI.
Ngoài ra, hãy thêm các thẻ cần thiết để tải tệp dai.css
và dai.js
, cũng như để nhập trình phát video hls.js
. Sau đó, hãy sửa đổi dai.css
để chỉ định kích thước và vị trí của các phần tử trên trang.
Cuối cùng, trong dai.js
, hãy xác định các biến để lưu trữ thông tin yêu cầu phát trực tuyến, một hàm initPlayer()
để chạy khi trang tải và thiết lập nút phát để yêu cầu phát trực tuyến khi nhấp.
Để tiếp tục phát trong các khoảng nghỉ quảng cáo đã tạm dừng, hãy thiết lập trình nghe sự kiện cho các sự kiện pause
và start
của phần tử video để hiển thị và ẩn các nút điều khiển trình phát.
Tải SDK IMA DAI
Tiếp theo, hãy thêm khung IMA bằng cách sử dụng thẻ tập lệnh trong dai.html, trước thẻ cho dai.js.
Khởi chạy StreamManager
Để yêu cầu một nhóm quảng cáo, hãy tạo một ima.dai.api.StreamManager
. Lớp này chịu trách nhiệm yêu cầu và quản lý các luồng DAI. Hàm khởi tạo lấy một phần tử video và một phần tử giao diện người dùng quảng cáo để xử lý lượt nhấp vào quảng cáo.
Tạo yêu cầu truyền trực tuyến
Xác định các hàm để yêu cầu luồng. Ví dụ này bao gồm các hàm cho cả VOD và sự kiện phát trực tiếp, các hàm này tạo các thực thể của lớp VODStreamRequest
và lớp LiveStreamRequest
. Sau khi bạn có thực thể streamRequest
, hãy gọi phương thức streamManager.requestStream()
bằng thực thể yêu cầu luồng.
Cả hai phương thức yêu cầu luồng đều sử dụng khoá API không bắt buộc. Nếu đang sử dụng luồng được bảo vệ, bạn cần tạo khoá xác thực DAI. Để biết thêm thông tin, hãy xem phần Xác thực yêu cầu phát luồng video DAI.
Không có luồng nào trong ví dụ này được bảo vệ bằng khoá xác thực DAI, vì vậy, apiKey
không được sử dụng.
Phân tích cú pháp siêu dữ liệu của sự kiện phát trực tiếp (chỉ áp dụng cho sự kiện phát trực tiếp)
Đối với sự kiện phát trực tiếp, bạn cũng cần thêm một trình xử lý để theo dõi các sự kiện siêu dữ liệu theo thời gian và chuyển tiếp các sự kiện đó đến lớp StreamManager
để IMA phát các sự kiện quảng cáo trong khoảng thời gian chèn quảng cáo:
Hướng dẫn này sử dụng trình phát hls.js
để phát trực tuyến, nhưng việc triển khai siêu dữ liệu sẽ phụ thuộc vào loại trình phát mà bạn sử dụng.
Xử lý sự kiện phát trực tuyến
Triển khai trình nghe sự kiện cho các sự kiện video chính. Ví dụ này xử lý các sự kiện LOADED
, ERROR
, AD_BREAK_STARTED
và AD_BREAK_ENDED
bằng cách gọi hàm onStreamEvent()
. Hàm này xử lý việc tải luồng, lỗi luồng và tắt các nút điều khiển trình phát trong khi phát quảng cáo mà SDK IMA yêu cầu.
Khi luồng được tải, trình phát video sẽ tải và phát URL được cung cấp bằng hàm loadUrl()
.
Vậy là xong! Bạn hiện đang yêu cầu và hiển thị quảng cáo bằng SDK IMA DAI. Để tìm hiểu về các tính năng SDK nâng cao hơn, hãy xem các hướng dẫn khác hoặc mẫu trên GitHub.