檢查廣告攔截器

在本主題中,您將學習如何檢查是否正在使用廣告攔截器。

使用 usingAdBlocker() 方法

Brightcove Player 有一種方法可以檢查播放視頻的瀏覽器是否正在使用廣告攔截器。這個方法是使用 AdBlocker() .一旦確定是否檢測到廣告攔截器,您的業務規則將指導您採取進一步行動。在下面的示例中,三個廣告將在視頻中顯示,或者如果檢測到廣告攔截器,則會在播放器下方顯示一條消息。

Video Player is loading.
Current Time 0:00
Duration 0:00
Loaded: 0%
Stream Type LIVE
Remaining Time 0:00
 
1x
    • Chapters
    • descriptions off, selected
    • subtitles off, selected

      如果您沒有安裝用於測試的廣告攔截器,對於此示例,當檢測到廣告攔截器時,將顯示以紅色框顯示的消息:

      實作

      以下代碼是使用使用 AdBlocker()方法。基本上代碼執行以下操作:

      • 使用承諾來檢查並查看是否檢測到廣告攔截器。
      • 如果是,則動態創建一個段落並將其插入到預先存在的分區 .
      <!doctype html>
      <html>
      
      <head>
      <meta charset="UTF-8">
      <title>Untitled Document</title>
      </head>
      
      <body>
      
        <div style="width: 600px;">
          <video-js id="myPlayerID"
            data-account="1752604059001"
            data-player="ZDaDSLULho"
            data-embed="default"
            controls=""
            data-video-id="5701193190001"
            data-playlist-id=""
            data-application-id=""
            width="600" height="337.5" class="vjs-fluid"></video-js>
        </div>
        <script src="https://players.brightcove.net/1752604059001/ZDaDSLULho_default/index.min.js"></script>
      
        <div id="ad-blocker-note"></div>
      
        <script>
          videojs.getPlayer('myPlayerID').ready(function () {
            var myPlayer = this;
            myPlayer.usingAdBlocker().then( hasBlocker => {
              if (hasBlocker) {
                var newP = document.createElement("p");
                newP = '<strong>Ads will not play as you are using an ad blocker.</strong>';
                document.getElementById("ad-blocker-note").insertAdjacentHTML('afterbegin', newP);
            }
          });
      
        </script>
      
      </body>
      
      </html>
      HTML

      當然,你可以使用一個如果 JavaScript 邏輯語句。

      videojs.getPlayer('myPlayerID').ready(function () {
        var myPlayer = this;
        if (myPlayer.usingAdBlocker()) {
          var newP = document.createElement("p");
          newP = 'This ad will not play as you are using an ad blocker.';
          document.getElementById("ad-blocker-note2").insertAdjacentHTML('afterbegin', newP);
        }
      });
      JavaScript