// 第一个参数为同时播放数据流的最大个数,第二数据流类型,第三为声音质量
soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 10);
// 把你的声音素材放到res/raw里,第2个参数即为资源文件,第3个为音乐的优先级
musicId = soundPool.load(mContext, R.raw.start, 1);
// 获取音频服务然后强转成一个音频管理器,后面方便用来控制音量大小用
AudioManager am = (AudioManager)mContext.getSystemService(mContext.AUDIO_SERVICE);
// 设定调整音量为媒体音量,当暂停播放的时候调整音量就不会再默认调整铃声音量了,
((Activity) mContext).setVolumeControlStream(AudioManager.STREAM_MUSIC);
// 获取最大音量值
float audioMaxVolumn = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
// 不断获取当前的音量值
float audioCurrentVolumn = am.getStreamVolume(AudioManager.STREAM_MUSIC);
//最终影响音量
soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 10);
// 把你的声音素材放到res/raw里,第2个参数即为资源文件,第3个为音乐的优先级
musicId = soundPool.load(mContext, R.raw.start, 1);
// 获取音频服务然后强转成一个音频管理器,后面方便用来控制音量大小用
AudioManager am = (AudioManager)mContext.getSystemService(mContext.AUDIO_SERVICE);
// 设定调整音量为媒体音量,当暂停播放的时候调整音量就不会再默认调整铃声音量了,
((Activity) mContext).setVolumeControlStream(AudioManager.STREAM_MUSIC);
// 获取最大音量值
float audioMaxVolumn = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
// 不断获取当前的音量值
float audioCurrentVolumn = am.getStreamVolume(AudioManager.STREAM_MUSIC);
//最终影响音量
volumnRatio = audioCurrentVolumn/audioMaxVolumn;
soundPool.play(musicId, volumnRatio, volumnRatio, 0, 0, 1);