Android VideoView中getDuration()方法使用問題:
調用videoView.getDuration()方法返回值為-1
VideoView.start()後調用videoView.getDuration()方法返回值也為-1,
視頻開始播放後調用videoView.getDuration()方法返回值為視頻的真實“長度”,
有什麼辦法在播放前就可以獲取視頻的真實“長度”?求助……
我也出現一樣的問題,看源碼後發現裡面會先去檢查一個mCurrentState的值,然後這個變量只有OnPreparedListener的回調中才設置為正確值.
因此可知在調用setVideoPath之後,VideoView裡的MediaPlayer還未處於prepared狀態,因此得不到duration.
所以只要videoView.setOnPreparedListener()方法在該監聽器中去獲取值就行了.