在做App的时候,为了使App更加的吸引人,我们通常会加入一些多媒体功能,这也是Android中非常重要的功能之一,在刚学Android的时候,自己尝试着模仿QQ音乐做了一款音视频播放器,虽然做的不怎么样,但是大体的功能都实现了。在之后,我也不断的完善,有了一些自己的见解(源码地址都在文章末)。
首先是Android中的音频播放功能,在这里我主要涉及到的是MediaPlayer类,这个类中的方法不全讲,涉及到细节的我知道的也不是很多,主要还是要看源代码。在此我只来讲述它的使用。
播放音频文件,首先要找到它的位置,然后生成MediaPlayer的新对象,调用相应的方法,加载相应位置的文件,进行播放。
文件的位置主要包括三个来源:1用户在文件中自带的Resource资源2在SD卡或其它路径下的文件3网络上的文件
1播放Resource资源下的音频文件:
<span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;">if(this.player == null){
// this.player = new MediaPlayer();
this.player = MediaPlayer.create(context, R.raw.a1);
// this.player.prepare() ;
}
//监听器判断是否结束
this.player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
stop();
}
});
this.player.start();
}</span></span></span></span>
如果res文件夹下没有raw文件,直接新建一个raw文件,然后放入音频视频即可。
2播放SD卡或其他路径下的文件:
<span style="font-size:18px;"><span style="font-size:18px;"><span style="font-size:18px;"> MediaPlayer mediaplayer = new MediaPlayer(); //生成一个MediaPlayer的对象
mediaplayer.setDataSource("/sdcard/Wiz Khalifa-See you again.mp3"); //装载音频文件的位置
mediaplayer.prepare(); //准备
mediaplayer.start(); //开始播放</span></span></span>
setDataSource函数的参数为你播放文件的位置,必须在start之前prepare,简单的四句代码,即可播放音乐
3播放网络上的文件:
<span style="font-size:18px;"><span style="font-size:18px;&#