2014-10-01 137 views
5

我正在製作一個Android應用程序,我需要通過可直接下載的鏈接在android默認本機視頻播放器中播放mp4視頻。如何通過Android視頻播放器中的直接鏈接播放MP4視頻?

要打開Android的視頻播放器,我使用下面的代碼

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://b.revvolution.com/video/albums-3ry/newshare-der-34972.mp4?download=1")); 

intent.setDataAndType(Uri.parse("http://b.revvolution.com/video/albums-3ry/newshare-der-34972.mp4?download=1"), "video/*"); 

startActivity(intent); 

這裏的URL是直接下載鏈接,mp4視頻。 這段代碼打開視頻播放器,但視頻沒有在視頻播放器加載

我也用這個URL

http://b.revvolution.com/video/albums-3ry/newshare-der-34972.mp4 

該網址中包含HTML5視頻播放器,但視頻沒有在Android的視頻播放器加載

但是當我使用的3GP視頻的鏈接像

http://www.androidbegin.com/tutorial/AndroidCommercial.3gp 

然後,它的工作原理。

請幫忙。

回答

2

試試我做

Intent intent = new Intent(); 
intent.setAction(Intent.ACTION_VIEW); 
intent.setDataAndType(Uri.parse("http://www.yourvideo.mp4"), "video/mp4"); 

的方式然後添加的權限:android.permission.WRITE_EXTERNAL_STORAGE,體現。


更新

首先,視頻可能有問題,因爲不是所有的視頻都safe for streaming。其次,並非所有設備都可以設置支持ACTION_VIEWvideo/mp4流式傳輸文件的活動。您應該使用PackageManagerqueryIntentActivities()來確認startActivity()呼叫是否會找到匹配項,或者處理您獲得的ActivityNotFoundException。您需要檢查Android Video Encoding Recommandations。確保您的視頻使用支持的代碼進行編碼,並且您的視頻尊重分辨率。在視頻編碼正確後,流式處理工作。

此外,如果你還沒有注意到,通常模擬器不會播放它們,你將不得不在真實設備上測試。

+0

我在真實設備上測試它,但我認爲問題出在視頻流 – 2014-10-01 06:24:51

+0

視頻流問題發生在我身邊還是在服務器端?請告訴我 – 2014-10-01 06:28:51

+0

謝謝,它適用於我(真實設備和模擬器)與「startActivity(intent);」 – NicoMinsk 2016-04-11 18:32:04