ios Swift - 初始化许多AVAudioPlayer与许多字符串\路径

时间:2016-02-11 20:56:30

标签: ios swift avaudioplayer resource-management

我开发的应用程序有大约500种不同的短音频声音,每种都有自己的mp3文件。我正在使用AVAudioPlayer播放它们。 音频不应该同时播放。

我想到了几个选择:

  1. 初始化500个AVAudioPlayers对象,并在必要时调用相关对象的play()
  2. 按住1个AVAudioPlayer,并根据需要将其更改为指向相关文件。这需要文件名管理,消耗500个字符串,并在运行时初始化其资源路径以进行重新初始化。 (可能更难调试)
  3. 拥有500条资源路径(半资源初始化)和1条为其提供服务的AVAudioPlayer
  4. 最佳做法是什么?

1 个答案:

答案 0 :(得分:1)

选项1是一个坏主意,并将使用 GOBS 的内存。它甚至可能导致您的应用因使用太多内存而被终止。

解决方案2和3几乎完全相同。