Soundpool 没有在 android 4.3 中循环

Posted

技术标签:

【中文标题】Soundpool 没有在 android 4.3 中循环【英文标题】:Soundpool not looping in android 4.3 【发布时间】:2013-07-31 13:14:48 【问题描述】:

我有几个应用程序,我在其中使用 soundpool 来循环滴答时钟的声音,这在所有以前的 android 版本中都可以正常工作,但在升级到 android 4.3 后,声音不再循环,而只播放一次。我知道我可以使用 MediaPlayer 来循环播放它,但这听起来不太好。是否有一个简单的解决方法,android 会修复这个错误,还是我必须使用 MediaPlayer。

【问题讨论】:

【参考方案1】:

检查此链接。 https://code.google.com/p/android/issues/detail?id=58113 Soundpool 在 4.3 中停止工作

【讨论】:

谢谢,没有明显的解决方案,但很高兴知道其他人也有同样的问题,我想如果有足够多的人报告问题谷歌可能会修复这个错误。 是的,他们应该修复损坏的 api【参考方案2】:

打电话时 SoundPool.play(int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate) 我将速率设置为 0.99f 而不是 1,实际上除了 1 之外的任何东西似乎都可以工作。它在 android 5.0.1 上按预期循环。如果速率设置为 1,它会循环大约两次,然后停止。 我有同样的循环问题,但是在使用速率 1 时它适用于 android 4.3 但不适用于 5.0.1。

【讨论】:

很有趣,这目前还可以。 :P(在 5.1.1 上使用 Nexus 5 进行测试)

以上是关于Soundpool 没有在 android 4.3 中循环的主要内容,如果未能解决你的问题,请参考以下文章

Android 游戏 - SoundPool 没有在 Motorola Droid X2 上播放声音

android soundpool 没有声音

Android Soundpool Issue

Android 11 上的 SoundPool 问题

Android SoundPool 不播放声音

播放大量声音时,Android soundpool 意外关闭应用程序而没有消息