android之音乐播放和音效播放
在玩游戏的时候都会发现,开启了背景音乐的时候,游戏人物的走路、打斗之类都会发出响声。概括地说这里的背景音乐称为音乐,各种响声称为音效。
不同点:音乐同时只能播放一首,而音效则能够同时播放多首;
音乐一般比较长,而音效一般比较短。
音乐比较大,而音效一般申请空间不能超过1M(还有种说法是不能超过5.6秒)
1、使用MediaPlayer播放音乐
//创建MediaPlayer对象,将Context与资源文件传入 MediaPlayer player = MediaPlayer.create(this,R.raw.mp3);
//设置为循环播放 player.setLooping(true);
//判断是否正在播放,如果没有则开启音乐播放 if(!player.isPlaying()){ player.start(); }
//判断是否正在播放,如果正在播放则停止音乐播放 if(player.isPlaying()){ player.stop(); }
2、使用SoundPool播放音效
//创建音效播放池 //参数1:播放音效最大数目 //参数2:播放音效的类型 //参数3:音效播放效果 SoundPool sp = new SoundPool(2,AudioManager.STREAM_MUSIC,5); //加载音效 //参数1:加载路径 //参数2:加载的文件 //参数3:优先级 //返回值:该文件的ID int sp_1 = sp.load(this,R.raw.sp_1,0); int sp_2 = sp.load(this,R.raw.sp_2,0); //播放音效 //参数1:播放ID //参数2:左音效 //参数3:右音效 //参数4:优先级 //参数5:循环次数 //参数6:播放速率,最低0.5最高2,1代表正常 sp.play(sp_1,1,1,0,0,1);