0

我正在使用最新的 DailyMotion 播放器 API。
有什么方法可以检测到 DM 播放器现在播放 DM 商业广告的事实吗?

现在我正在通过运行 500 毫秒 setTimeout 循环来检查这一点(因为大约 400 毫秒是两个 timeupdate 事件之间的间隔)来检查玩家是否处于播放状态 && timeupdate 没有从上次更新,那么这意味着它在商业权利现在。但它并不完美,并且由于循环迭代时间而存在 500-1000 毫秒的延迟。

4

1 回答 1

0

要检测广告何时播放,您必须在自定义 WebViewClient 中覆盖以下方法:

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    Uri uri= Uri.parse(url);

    if (uri.getScheme().equals("dmevent")) {
        String event = uri.getQueryParameter("event");

        switch (event) {
            case "ad_start":

                // The ad has started playing

                break;
            case "ad_end":

                // The ad is over

                break;
            }

            return true;
        }

        return super.shouldOverrideUrlLoading(view, url);
    }

在这里您可以找到一些其他有用的事件:https ://developer.dailymotion.com/documentation#player-api-events

于 2015-04-21T11:35:02.023 回答