VideoView實(shí)現(xiàn)視頻無(wú)縫連續(xù)播放
該視頻播放器采用了較為簡(jiǎn)單的videoview,基本思想就是用setOnCompletionListener對(duì)視頻播進(jìn)行監(jiān)聽,當(dāng)視頻播放完畢之后,播放下一段視頻,視頻源放在SD卡內(nèi)的Download文件夾內(nèi),具體代碼如下:
public class MainActivity extends Activity { VideoView videoView; static int pos=1; //靜態(tài)整型變量用于標(biāo)記播放到了第幾段視頻 MediaController mController; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().setFormat(PixelFormat.TRANSLUCENT); setContentView(R.layout.activity_main); videoView=(VideoView)findViewById(R.id.video); mController=new MediaController(this); File video=new File("/mnt/sdcard/Download/video"+pos+".mp4"); if(video.exists()) { videoView.setVideoPath(video.getAbsolutePath()); /* videoView.setMediaController(mController); mController.setMediaPlayer(videoView);*/ videoView.requestFocus(); videoView.start(); } videoView.setOnCompletionListener(new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { // TODO Auto-generated method stub pos=pos+1; //在這里將視頻地址變?yōu)橄乱粋€(gè) File video2=new File("/mnt/sdcard/Download/video"+pos+".mp4"); if(video2.exists()) { try { videoView.setVideoPath(video2.getAbsolutePath()); /*videoView.setMediaController(mController); mController.setMediaPlayer(videoView);*/ videoView.requestFocus(); videoView.start(); } catch (Exception e) { e.printStackTrace(); } } else {Toast.makeText(MainActivity.this,"視頻播放完畢",Toast.LENGTH_SHORT).show();} } }); } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android VideoCache視頻緩存的方法詳解
- Android視頻點(diǎn)播的實(shí)現(xiàn)代碼(邊播邊緩存)
- Android音頻錄制MediaRecorder之簡(jiǎn)易的錄音軟件實(shí)現(xiàn)代碼
- Android提高之MediaPlayer播放網(wǎng)絡(luò)音頻的實(shí)現(xiàn)方法
- Android音頻可視化開發(fā)案例說(shuō)明
- Android使用音頻信息繪制動(dòng)態(tài)波紋
- Android音頻系統(tǒng)AudioTrack使用方法詳解
- 基于VideoView自定義控制面板的視頻播放器
- 5步學(xué)會(huì)使用VideoView播放視頻
- Android視頻/音頻緩存框架AndroidVideoCache(Okhttp)詳解
相關(guān)文章
Android UI設(shè)計(jì)系列之HTML標(biāo)簽實(shí)現(xiàn)TextView設(shè)置中文字體加粗效果(6)
這篇文章主要介紹了Android UI設(shè)計(jì)系列之使用HTML標(biāo)簽,實(shí)現(xiàn)在TextView中對(duì)中文字體加粗的效果,具有一定的實(shí)用性和參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06Android5.0 旋轉(zhuǎn)菜單實(shí)例詳解
這篇文章主要介紹了 Android5.0 旋轉(zhuǎn)菜單的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2016-12-12Android內(nèi)嵌Unity并實(shí)現(xiàn)互相跳轉(zhuǎn)的實(shí)例代碼
這篇文章主要介紹了Android內(nèi)嵌Unity并實(shí)現(xiàn)互相跳轉(zhuǎn)的實(shí)例代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11Android實(shí)現(xiàn)一個(gè)完美的倒計(jì)時(shí)功能
在Adroid應(yīng)用中,倒計(jì)時(shí)的功能使用的很多,例如點(diǎn)擊獲取短信驗(yàn)證碼之后的倒計(jì)時(shí)等等,這篇文章主要給大家介紹了關(guān)于利用Android如何實(shí)現(xiàn)一個(gè)完美的倒計(jì)時(shí)功能的相關(guān)資料,需要的朋友可以參考下2021-11-11詳解Android使GridView橫向水平滾動(dòng)的實(shí)現(xiàn)方式
Android為我們提供了豎直方向的滾動(dòng)控件GridView,這篇文章主要介紹了Android使GridView橫向水平滾動(dòng)的實(shí)現(xiàn)方式,有興趣的可以了解一下2017-05-05Android TabHost選項(xiàng)卡標(biāo)簽圖標(biāo)始終不出現(xiàn)的解決方法
這篇文章主要介紹了Android TabHost選項(xiàng)卡標(biāo)簽圖標(biāo)始終不出現(xiàn)的解決方法,涉及Android界面布局相關(guān)屬性與狀態(tài)設(shè)置操作技巧,需要的朋友可以參考下2019-03-03Android系統(tǒng)關(guān)機(jī)的全流程解析
這篇文章主要介紹了Android系統(tǒng)關(guān)機(jī)的全流程解析,從上層空間一直深入到內(nèi)核全面講解,非常推薦!需要的朋友可以參考下2016-02-02Android編程之自定義AlertDialog(退出提示框)用法實(shí)例
這篇文章主要介紹了Android編程之自定義AlertDialog(退出提示框)用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了自定義AlertDialog的頁(yè)面布局與功能實(shí)現(xiàn)相關(guān)技巧,需要的朋友可以參考下2016-01-01Android中的Bmob移動(dòng)后端云服務(wù)器功能
這里介紹一個(gè)移動(dòng)后端云服務(wù)器平臺(tái)bmob,這不僅可以實(shí)現(xiàn)云數(shù)據(jù)庫(kù)儲(chǔ)存,還可以獲取手機(jī)驗(yàn)證等,隨時(shí)隨地都很輕松,下面寫一個(gè)小demo,實(shí)現(xiàn)一個(gè)登陸注冊(cè)功能,認(rèn)識(shí)增刪查改2018-01-01