2017-01-09 31 views
-1

我在當前項目中整合了Youtube Data API和Google廣告。所有工作良好期望在全屏幕下正確加載InterstitialAd後視頻不會恢復。使用YouTube播放器加載InterstitialAd後恢復視頻

如果我使用

player.setPlayerStyle(YouTubePlayer.PlayerStyle.CHROMELESS); 

則沒有選擇,如果廣告加載再次播放視頻。

如果我使用

player.setPlayerStyle(YouTubePlayer.PlayerStyle.DEFAULT); 

再經過廣告加載我對你管的球員手動觸發暫停按鈕播放視頻。 我的目的是在InterstitialAd加載成功之後恢復視頻,而不會與Youtubeplayer控件交互。

這裏是我的onCreate()代碼:

try { 
     youTubeView.initialize(Config.DEVELOPER_KEY, this); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
    mAdMobInterstitialAd = new InterstitialAd(this); 
    mAdMobInterstitialAd.setAdUnitId(getString(R.string.full_screen_id)); 
    requestNewInterstitial(); 
    mAdMobInterstitialAd.setAdListener(new AdListener() { 
     public void onAdLoaded() { 
      showInterstitialAd(); 
     } 
     @Override 
     public void onAdClosed() { 
     } 
    }); 

} 

private void showInterstitialAd() { 
    if (mAdMobInterstitialAd.isLoaded()) { 
     mAdMobInterstitialAd.show(); 
    } 
} 

//初始化爲YouTube播放器

@Override 
public void onInitializationSuccess(final YouTubePlayer.Provider provider, 
            final YouTubePlayer player, boolean wasRestored) { 
    this.you_player = player; 
    player.addFullscreenControlFlag(YouTubePlayer.FULLSCREEN_FLAG_ALWAYS_FULLSCREEN_IN_LANDSCAPE); 
    if (!wasRestored) { 
     if (isOnline()) { 
      if (player != null) { 
       try { 
        player.cueVideo(VIDEO_ID); 
       } catch (Exception e) { 
        provider.initialize(Config.DEVELOPER_KEY, this); 
       } 
      } 
      player.setFullscreen(true); 
      player.setPlayerStyle(YouTubePlayer.PlayerStyle.CHROMELESS); 
     } else { 
      Toast.makeText(YoutubePlayerActivity.this, "No Internet Connection", Toast.LENGTH_SHORT).show(); 
     } 
    } 
} 

@Override 
public void onDestroy() { 
    if (you_player != null) { 
     you_player.release(); 
    } 
    super.onDestroy(); 
} 

我也曾嘗試手動初始化YoutubePlayer和負載的視頻在onAdClosed()onAdLoaded()方法,但都不他們工作。

所以先進的幫助將不勝感激!

+2

你可以嘗試保存視頻時間'onAdLoaded',然後從同一時間播放視頻'onAdClosed'希望它有助於 –

+0

我已經試過這件事情 – Piyush

+0

所以,你要間質性當廣告節目暫停視頻當用戶手動關閉廣告,然後你想恢復?我對嗎? @Piyush –

回答

0

我有類似的問題。我有一個顯示廣告或播放YouTube播放器(you_player)的按鈕。

if (mInterstitialAd.isLoaded()) 
{ 
    mInterstitialAd.show(); 
} 
else 
{ 
    PlayVideo(); // Do something and call you_player.loadVideo(video_Id) 
} 

在廣告監聽器,而不是在onAdClosed方法調用的playVideo(),只是做了RequestNewInterstitial()請求:)這個活動

mInterstitialAd.setAdListener(new AdListener() 
{ 
    @Override 
    public void onAdClosed() 
    { 
     //PlayVideo(); 

     RequestNewInterstitial(); 
    } 
}); 

的onResume(onAdClosed後會被調用( ),你可以在那裏調用你的PlayVideo()。

@Override 
protected void onResume() 
{ 
    super.onResume(); 

    if (your_player == null) 
    { 
     youTubeView.initialize(Config.DEVELOPER_KEY, this); 
    } 
    else 
    { 
     PlayVideo(); 
    } 
} 
相關問題