我在 Galaxy Nexus 上遇到了一个非常奇怪的问题。我想要做的是在我的服务开始时将 48 个 OGG 样本加载到 SoundPool 中(音乐相关应用程序)。每个文件为 11-15K。加载代码很简单:
for (String note : sm) { // 48 iterations
int soundId = soundPool.load(getResources().getAssets().openFd(note), 1);
loadedSoundsMap.put(note, soundId);
}
我在 Nexus One 2.3.6 上测量过,我在 1-2 秒内加载。但在全新的 Galaxy Nexus 4.0.2 上,加载时间为 9 秒!
我真的怀疑这是一个文件 IO 花费了这么多时间来读取 1mb 的总大小,所以我认为在解压缩器的实现中有些东西搞砸了。
谁能建议什么会导致工作如此缓慢?
PS Mp3 给出了大致相同的画面。