Android YouTubePlayerView显示"广告"字

时间:2017-01-26 08:14:33

标签: android android-youtube-api

我们已经在我们的应用中使用YouTubePlayerView YouTubePlayer一段时间了,最​​近我注意到我们开始看到" 广告&# 34;在视图的左下角。

仔细检查它我确定这来自YouTubePlayerView,而不是来自播放器或与我们的应用相关的任何其他布局部分。

我们对播放器的初始化非常简单,我们这样做:

        mYoutubePlayer.setShowFullscreenButton(false);
        mYoutubePlayer.setPlayerStyle(YouTubePlayer.PlayerStyle.MINIMAL);
        mYoutubePlayer.addFullscreenControlFlag(YouTubePlayer.FULLSCREEN_FLAG_CONTROL_SYSTEM_UI);
        mYoutubePlayer.setPlayerStateChangeListener(playerStateChangeListener);
        mYoutubePlayer.setPlaybackEventListener(playbackListener);

这是一个屏幕截图,让您可以看到我的意思:

You can see the "Ad" word here

知道如何摆脱这个广告词吗?

2 个答案:

答案 0 :(得分:0)

我认为这就是这个玩家的错误。试试这个黑客来隐藏它。 或者将PlayerStyle更改为CHROMELESS并实现您自己的控件

(((ViewGroup)((ViewGroup)((ViewGroup)((ViewGroup)((ViewGroup)
        fragment.getView()).getChildAt(0)).getChildAt(0)).getChildAt(5))
        .getChildAt(0)).getChildAt(1)).setVisibility(View.GONE);

片段是YouTubePlayerFragment的实例

答案 1 :(得分:0)

正确答案如下;)

public void removeFromYoutubePlayer(ViewGroup youtubePlayer, int... depths) {

    for (int i = 0; i < depths.length; i++) {

        youtubePlayer = (ViewGroup) youtubePlayer.getChildAt(depths[i]);

        if (i == depths.length - 1) {
            youtubePlayer.setVisibility(View.GONE);
        }
    }

}

以下列方式使用此方法

ViewGroup youtubePlayer = (ViewGroup) youTubePlayerFragment.getView();

int[] youtubeLogo = new int[] { 0, 0, 4, 0, 0, 3, 0, 1 }; // remove youtube logo

int[] adWord= new int[] { 0, 0, 5, 0, 1 }; // remove "ad" word

removeFromYoutubePlayer(youtubePlayer, adWord); // removed "ad" word