为什么多个Android SoundPool.unload调用会根据顺序返回true / false?

时间:2012-01-21 21:09:25

标签: android soundpool

根据Android documentationSoundPool.unload会返回

  

如果刚卸载则为true,如果先前已卸载则为false

我创建SoundPool,加载5个声音并存储相关的5个声音ID。然后在离开Activity之前,我为每个ID调用unload,最后我调用release。我正在经历的是以下内容:

  • 如果我按某种顺序(从地图返回的那个)调用每个ID的卸载,我会系统地收到ID为1..4的false和ID为5的true;

  • 如果我以与加载的ID相同的顺序调用卸载,1到5,我会系统地收到所有ID的错误;

  • 如果我按照与加载时相反的顺序调用卸载,5比1,我系统地接收ID为2-5为真,ID为1为假

有人知道为什么会发生这种情况,以及如何让它返回true?我担心的是没有正确清理资源,并且在多次下载/卸载声音后会出现一些内存问题。

0 个答案:

没有答案