Android 多媒體音頻播放器MediaPlayer

Android源生MediaPlayer音頻播放器,可以播放常見的mp3、m4a、wav格式的音頻文件(親測可用)

1.新建mediaplayer

if (mediaPlayer==null){
    mediaPlayer = new MediaPlayer();
    // 綁定播放完畢監聽器
    mediaPlayer.setOnCompletionListener(this);
}

2.播放完成監聽

 //播放完成監聽
    @Override
    public void onCompletion(MediaPlayer mp) {
        Toast.makeText(this,"播放完成",Toast.LENGTH_SHORT).show();
        isPlay = false;
    }

3.播放音頻

 try {
                // 切歌之前先重置,釋放掉之前的資源
                mediaPlayer.reset();
                // 設置播放源                                      mediaPlayer.setDataSource(Environment.getExternalStorageDirectory()
.getAbsolutePath()+"/recoder/recoder"+index+"."+formatList.get((index-1)));
                mediaPlayer.setDataSource(Environment.getExternalStorageDirectory().getAbsolutePath()+"/recoder/"+formatList.get((index-1)));

                // 開始播放前的準備工作,加載多媒體資源,獲取相關信息
                mediaPlayer.prepare();
                // 開始播放
                mediaPlayer.start();
                isPlay = true;
            } catch (IOException e) {
                e.printStackTrace();
                Toast.makeText(this, "play error", Toast.LENGTH_SHORT).show();
            }

4.播放/暫停

if (mediaPlayer.isPlaying()) {
                mediaPlayer.pause();
                imgEmoji.setVisibility(View.GONE);
                imgNoTalk.setVisibility(View.VISIBLE);
            } else {
                Toast.makeText(this,"Have been suspended",Toast.LENGTH_SHORT).show();
            }

}

5.在界面銷燬時候記得銷燬mediaplayer,否則有內存泄漏的風險

if(mediaPlayer!=null){
    if (mediaPlayer.isPlaying()){
        mediaPlayer.stop();
    }
    mediaPlayer.release();
    mediaPlayer = null;
}

以上,一個簡單的音樂播放功能就實現了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章