Android SoundPool播放音效
所属分类:Android | 发布于 2023-12-14
2023年12月21日更新:官方貌似已经放弃SoundPool,直接使用MediaPlayer吧
最近才开始看android的官方文档,发现官方推出强大的Media3,使用ExoPlayer来播放音频和视频,现在android播放声音有两种方法:1、使用Media3;2、使用老的MediaPlayer。
2023年12月22日晚22时更新:官方貌似已经放弃SoundPool,这句话完全不对,播放音效还是用SoundPool吧
经过测试,MediaPlayer一次只能播放一个声音,而SoundPool一次可以播放多个声音。
这怎么理解呢,页面有个按钮,要是是每点击一次就播放一次音效,再快速点击时差异就出现了,使用MediaPlayer的话,上一个声音没有播放完,下个点击播放请求又来了,这个时候,这个播放就被吃掉了,没啦;但是使用SoundPool就可以解决这个问题,点击多少次就播放多少次。
之前使用SoundPool没达到效果是因为用法不对,现在发现SoundPool和MediaPlayer用法是一个套路,要正确使用这两个需要解决两个问题:
1、第一次使用时,资源未加载完成就调用play方法导致第一次不能播放声音。
2、播放完成后,资源释放问题。
解决这两个问题,就可以随心所欲的使用MediaPlayer和SoundPool啦。
SoundPool用于播放时间较短的音效。
创建SoundPool管理对象
加载音频文件
播放音效
暂停所有音频
开始所有音频
卸载音频文件
释放所有音频