gpt4 book ai didi

AVFAudio 的 IOS 内存泄漏 - AVAudioSession

转载 作者:行者123 更新时间:2023-11-28 06:13:38 24 4
gpt4 key购买 nike

我尝试创建一个简单的项目。在这个项目中有一些图像和它们的名称,当用户按下图像时,图像名称从 mp3 源文件中播放并传递下一个图像。但是,当我传递下一张图像时,每个下一个项目的内存使用量增加到 300mb。当我通过帮助仪器检查发生内存泄漏的位置时,我看到大部分内存泄漏是由 AVFAudio 库 - AVAudioSession 引起的。

enter image description here

也许我的播放声音的方法是错误的。这是我播放声音的代码:

var sound: AVAudioPlayer! 

func playSound(name: String) {

let path = Bundle.main.path(forResource: name, ofType: "mp3")
let soundURL = URL(fileURLWithPath: path!)
do {
try sound = AVAudioPlayer(contentsOf: soundURL)
} catch let err as NSError {
print(err.debugDescription)
}
}


@IBAction func btnClick(_ sender: UIButton) {
playSound(name: "table")
sound.play()

}

是不是我的“播放声音”方式不对?为什么会发生这种内存泄漏?如何解决这个问题呢。谢谢

最佳答案

我在设备上测试了大约 30-40mb 的设备和内存使用情况。所以问题与在模拟器上测试有关。但是我不知道为什么模拟器不释放所有AVAudioSession并增加内存使用。

关于AVFAudio 的 IOS 内存泄漏 - AVAudioSession,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45759024/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com