2013-10-11 99 views
0

我想使用新的Android Youtube API播放youtube視頻。我從谷歌(YouTubeAndroidAPIDemo)下載演示項目,這是我用它來啓動視頻代碼:使用新的youtube API庫獲取youtube視頻時間

Intent intent = YouTubeStandalonePlayer.createVideoIntent(this, getString(R.string.ID_DEVELOPER_KEY), "cdgQpa1pUUE", 0, true, false); 
startActivityForResult(intent, 1); 

這運行的YouTube視頻還算可以,但,當用戶按下返回鍵,我想知道時間已過時(例如,YouTube視頻大小爲3:01,但用戶只看到了50秒) 如何知道已過時間? 謝謝!

回答

0

最後,我得到了我的目標,創建了另一個活動,將我想要啓動的youtube視頻的ID放入一個包中,並添加了YouTubePlayer類的一個分支,並將其加載到onInitializationSuccess函數中。這裏是我的代碼:

公共類Youtube_Activity擴展YouTubeBaseActivity實現YouTubePlayer.OnInitializedListener {

private String mVideo; 
private int mInicio; 
private YouTubePlayerView mYouTubeView; 
private YouTubePlayer mPlayer; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.youtube_activity); 
    Bundle extra = getIntent().getExtras(); 
    mVideo = extra.getString("video"); 
    mYouTubeView = (YouTubePlayerView)findViewById(R.id.youtube_view); 
    mYouTubeView.initialize(getString(R.string.ID_DEVELOPER_KEY), this); 
} 

@Override 
public void onInitializationFailure(Provider provider,YouTubeInitializationResult error) { 
    Toast.makeText(this, "Oh no! "+error.toString(),Toast.LENGTH_LONG).show(); 
} 

@Override 
public void onInitializationSuccess(Provider provider, YouTubePlayer player,boolean wasRestored) { 
    player.loadVideo(mVideo); 
    mPlayer = player; 
} 

@Override 
public void finish() { 
    Intent data = new Intent(); 
     int t = (mPlayer.getCurrentTimeMillis()/1000); 
     data.putExtra("tiempo",t); 
    setResult(0, data); 
    super.finish(); 
} 
相關問題