专注徐州APP定制开发服务 服务电话:0516-83703228 立即咨询

Android开发中如何实现音频的播放?

来源:本站 发布时间:2021-12-08 已访问:252 次

在徐州APP开发中,之前百恒网络为大家介绍过加载音频文件的方法,如今过去了那么久了,如果大家对于这一块还有哪些不清楚的地方,可以点击这篇文章《如何使用SoundPool加载音频文件》再看一遍,相信我们重温了一遍之后大家都会有印象了。既然之前讲了加载音频文化部的方法,那么今天百恒网络就来为大家介绍一下APP开发中播放音频的方法,福利多多,惊喜多多!

在BeatBox中再添加一个play(Sound)方法:

播放音频(BeatBox.java)

mSoundPool = new SoundPool(MAX_SOUNDS, AudioManager.STREAM_MUSIC, 0);

loadSounds();

}

public void play(Sound sound) {

Integer soundId = sound.getSoundId();

if (soundId == null) {

return;

}

mSoundPool.play(soundId, 1.0f, 1.0f, 1, 0, 1.0f);

}

public List getSounds() {

return mSounds;

}

播放前要检查并确保soundId不是null值。Sound加载失败会导致soundId出现null值。

检查通过以后,就可以调用SoundPool.play(int, float, float, int, int, float)方法播放音频了。这些参数依次是:音频ID、左音量、右音量、优先级(无效)、是否循环以及播放速率。我们需要最大音量和常速播放,所以传入值1.0。是否循环参数传入0值,代表不循环。

最后,添加按钮监听器方法,实现点击按钮播放音频,方法如下所示:

点击按钮播放音频(BeatBoxFragment.java)

private class SoundHolder extends RecyclerView.ViewHolder

implements View.OnClickListener {

private Button mButton;

private Sound mSound;

public SoundHolder(LayoutInflater inflater, ViewGroup container) {

super(inflater.inflate(R.layout.list_item_sound, parent, false));

mButton = (Button)itemView.findViewById(R.id.list_item_sound_button);

mButton.setOnClickListener(this);

}

public void bindSound(Sound sound) {

mSound = sound;

mButton.setText(mSound.getName());

}

@Override

public void onClick(View v) {

mBeatBox.play(mSound);

}

}

再次运行应用,点击任意按钮,应该可以听到播放的音频了,如下图所示。

音频界面


标签:APP开发

本文地址:http://app.0516seo.cn/domain/603.html

相关新闻 News
全国服务城市 city