在 Soundpool 中使用许多声音时,应用程序加载时间是如此缓慢……任何替换?

Posted

技术标签:

【中文标题】在 Soundpool 中使用许多声音时,应用程序加载时间是如此缓慢……任何替换?【英文标题】:Application load time is so slow when using many sounds in Soundpool... any substitutions? 【发布时间】:2013-05-19 03:45:02 【问题描述】:

长话短说,我正在制作音板。短片,所以通过研究,Soundpool 似乎是最好的选择。它对我来说效果非常好,只是整体加载时间越来越长。我在那里有很多声音剪辑,我将它们全部加载到主活动的 onCreate() 中,以消除其他活动之间的任何进一步加载时间。正如我所说,加载时间已经很长了,我计划添加更多的声音片段。是否有某种替代方式可以更快地加载?我见过一个音板,它加载了大量的声音剪辑,应用程序几乎立即加载,所有声音都可以在单击按钮时立即播放。如果有人有任何建议,我将不胜感激!

这就是我所说的应用程序,如果它有助于看到它的实际效果: https://play.google.com/store/apps/details?id=com.cr5315.grump&feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5jcjUzMTUuZ3J1bXAiXQ..

【问题讨论】:

【参考方案1】:

不要在 onCreate 中加载它们——将它们加载到在 onCreate 中启动的 AsyncTask 中。这样,它将在您的应用程序运行时在后台加载。您只需为每个声音添加空检查,或者在下载整个声音集之前不播放声音(使用任务结束时设置的标志来检查这一点)。

【讨论】:

您能否提供一个简短的示例来说明这应该是什么样子?

以上是关于在 Soundpool 中使用许多声音时,应用程序加载时间是如此缓慢……任何替换?的主要内容,如果未能解决你的问题,请参考以下文章

在android soundpool中播放新声音时如何停止所有其他以前的声音?

如何使用 SoundPool 播放随机声音?

Android:应用程序终止后 SoundPool 不工作

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

使用 SoundPool 播放声音

使用 SoundPool 播放声音