使用SoundPool的基本流程是:创建一个SoundPool对象、载入要播放的音频、播放某个音频、停止播放某个音频。
一个SoundPool对象可以载入多个音频,每个音频载入后对应一个SoundID。播放某个音频时用SoundID指定要播放的音频,并返回播放该音频的ChannelID。要停止播放某个音频,需要通过其ChannelID,注意不是SoundID!使用SoundPool播放音频的示意图如下:
下面用SoundPool编写一个播放音效的应用,可以单次、循环播放音效,界面如下:
有的设备上循环播放参数无效,可以采用Thread来实现。应用主要代码如下:
SoundPool类的主要方法包括:
1)构造函数:SoundPool(int maxStreams, int streamType, int srcQuality)。第一个参数maxStreams指定同时支持多少个声音,即Channel数量;第