1.概述
- 現在的智能手機越來越代替傳統音樂播放器的作用了。這次我們就來看看簡單的音頻播放器和視頻播放器如何編寫。
2.音頻播放器
2.1準備工作
- MediaPlayer:音頻的基本操作類。
方法 | 作用 |
---|---|
start | 開始 |
pause | 暫停 |
reset | 停止 |
prepare | 準備就緒 |
isPlaying | 是否正在播放 |
release | 釋放這個播放器 |
setDataSource | 設置音頻文件路徑 |
- File:文件讀取類,讀取需要播放的文件。
- 獲取SD路徑方法 Environment.getExternalStorageDirectory()
2.2流程圖
2.3代碼編寫
首先要在sd根目錄下放置一個music.mp3文件。
- 初始化MediaPlayer
File file =new File(Environment.getExternalStorageDirectory(),"music.mp3");//將文件存放為file對象
try {
mediaPlayer.setDataSource(file.getPath());//設置音頻文件路徑
mediaPlayer.prepare();//準備
} catch (IOException e) {
e.printStackTrace();
}
- 按鍵監聽
switch (view.getId()) {
case R.id.btn_start:
if(!mediaPlayer.isPlaying()){
mediaPlayer.start();
}
break;
case R.id.btn_pause:
if(mediaPlayer.isPlaying()){
mediaPlayer.pause();
}
break;
case R.id.btn_stop:
if(mediaPlayer.isPlaying()){
mediaPlayer.reset();
initMediaPlayer();
}
break;
}
- 退出銷毀
@Override
public void onDestroy(){
super.onDestroy();
if(mediaPlayer!=null){
mediaPlayer.stop();
mediaPlayer.release();
}
}
預覽效果如下:
預覽聲音。Σ( ° °|||)︴。這個沒辦法預覽啦。
3視頻播放器
3.1 準備工作
- 與音頻播放器類似,只不過換成了VideoView類。
- VideoView類
方法 | 作用 |
---|---|
start | 開始 |
pause | 暫停 |
resume | 視頻重新從頭播放 |
isPlaying | 是否在播放 |
setVideoPath | 設置播放文件的地址 |
suspend | 銷毀 |
- File:文件讀取類,讀取需要播放的文件。
- 獲取SD路徑方法 Environment.getExternalStorageDirectory()
3.2流程圖
3.3代碼
首先你的根目錄下需要放一個叫video.mp4文件。
- 獲取文件
File file =new File(Environment.getExternalStorageDirectory(),"video.mp4");//將文件存放為file對象
videovFilm.setVideoPath(file.getPath());//設置音頻文件路徑
- 多種操作
switch (view.getId()) {
case R.id.btn_play:
if(!videovFilm.isPlaying()){
videovFilm.start();
}
break;
case R.id.btn_pause:
if(videovFilm.isPlaying()){
videovFilm.pause();
}
break;
case R.id.btn_resume:
if(videovFilm.isPlaying()){
videovFilm.resume();
}
break;
}
- 退出銷毀
@Override
public void onDestroy(){
super.onDestroy();
if(videovFilm!=null) {
videovFilm.suspend();
}
}
預覽效果如下: