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; }
以上,一个简单的音乐播放功能就实现了