2017-02-05 81 views
3

我想打從火力地堡存儲的視頻與videoview我想是這樣的:加載視頻到videoView

storageReference.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() { 
        @Override 
        public void onSuccess(Uri uri) { 
         //Toast.makeText(Chat.this, uri.toString(), Toast.LENGTH_SHORT).show(); 
         MediaController mc = new MediaController(Chat.this); 
         videoView.setMediaController(mc); 
         videoView.setVideoURI(uri); 
         videoView.requestFocus(); 
         //videoView.start(); 
        } 
       }); 

,但它不會玩。視頻是空的。

+0

看看:http://stackoverflow.com/questions/37865482/firebase-storage-video-streaming – RamithDR

+0

@RamithDR我不希望視頻流只是視頻從存儲加載到videoview –

+0

什麼是價值' storageReference'?什麼是視頻格式? –

回答

5

首先,要確定存儲中的視頻實際上是Android設備可以播放的格式。 VideoView無法播放所有內容 - 只有types of videos that Android supports

通過將uri直接傳遞到VideoView中,你現在正在做的事情被解釋爲試圖從給定的uri流式傳輸視頻。 Firebase存儲不支持視頻流,因此這不起作用。從uri進行流式傳輸需要另一端的服務器能夠流式傳輸給定的資源。

如果想要從存儲器播放視頻,您必須首先下載整個,保存到本地文件,然後將VideoView指向本地文件進行播放。

+0

我尋找過去兩天的解決方案,並在這裏得到提示。對此聲明表示熱烈的掌聲** Firebase存儲不支持視頻流,因此無法工作。**如上所述,我已成功將文件從Firebase存儲下載到我的移動存儲。現在,問題是我也有一個適配器。我在哪裏設置本地存儲路徑到'VideoView'。 'MainActivity'?或我的'MessageAdapter'?你可以請看看這個[post](https://stackoverflow.com/q/44447813/7004388)。請指導我。 – Chip

+0

使用videoView以外的視頻播放器時它正在工作!就像外型球員.. –