我正在尝试使用video.js
带有 google IMA 插件的播放器运行一些测试代码
我使用了插件作者提供的一个简单示例: https ://github.com/googleads/videojs-ima/tree/master/examples/simple
现在我尝试订阅一些广告播放器事件。
我尝试通过以下方式订阅事件(原始示例代码的第 48 行以上的更改):
player.one(startEvent, function() {
player.ima.onAdStarted_ = function(){
console.log("Ad started");
}
player.ima.onAdPlayPauseClick_ = function(){
console.log("Ad clicked");
}
player.ima.onAdComplete_ = function(){
console.log("Ad completed");
}
player.ima.initializeAdDisplayContainer();
player.ima.requestAds();
player.play();
});
它正确地捕获了事件,但是主播放器坏了:广告结束后,IMA 控件没有被禁用(它们覆盖了主播放器的控件),我们无法控制视频。
我假设我不小心覆盖了 IMA 的一些事件并且它无法正常工作。
我还尝试添加这样的事件侦听器:
player.one(startEvent, function() {
player.ima.initializeAdDisplayContainer();
player.ima.addEventListener("click",function(){
console.log("Ad clicked");
});
player.ima.addEventListener(google.ima.AdEvent.Type.STARTED,function(){
console.log("Ad started");
});
player.ima.addEventListener(google.ima.AdEvent.Type.ALL_ADS_COMPLETED, function(){
console.log("Ad completed");
});
player.ima.requestAds();
player.play();
});
但它不起作用。
是否有适当的方式来订阅 IMA 的事件,主要是“广告开始”、“广告点击”和“广告结束”事件?