gpt4 book ai didi

ios - 当我添加 SKAudioNode 时应用程序在模拟器中崩溃?

转载 作者:行者123 更新时间:2023-11-29 13:55:25 25 4
gpt4 key购买 nike

好的,所以应用程序可以很好地加载初始 MenuScene,但是当我想转移到模拟器上的 GameScene 时,游戏崩溃了,它给了我“线程 1:信号 SIGABRT”

通过评论一些东西并查看它是否仍然运行,我能够弄清楚导致应用程序崩溃的唯一原因是将 SKAudioNodes 添加到场景中。

我已经在我的实际设备上对其进行了测试,但它运行良好。是我的代码有问题吗?还是模拟器的问题?

控制台打印出一堆我无法真正理解的东西。这只是其中的一部分。

[aqme] 318: error -66680 finding/initializing AQDefaultDevice80: Failed to set processVolumeScalar on device. Error: 560947818AudioHAL_Client] AudioHardware.cpp:2692:AudioDeviceStop: AudioDeviceStop: no device with given IDAudioHardware.cpp:780:AudioObjectSetPropertyData: AudioObjectSetPropertyData: no object with given ID 0

libc++abi.dylib: terminating with uncaught exception of type NSException

class GameScene: SKScene, SKPhysicsContactDelegate {
let bg: SKAudioNode = SKAudioNode(fileNamed: "background.mp3")
let fuse = SKAudioNode(fileNamed: "fuse.wav")


override func didMove(to view: SKView) {
if soundIsOn {
self.addChild(bg)
self.addChild(fuse)
}
}

}

编辑:经过进一步调查,我确定导致错误的代码行是我添加子“ fuse ”的行

最佳答案

我感觉你的音频引擎还没有初始化(你无能为力,这一切都在苹果上)所以......

尝试

class GameScene: SKScene, SKPhysicsContactDelegate {
let bg: SKAudioNode = SKAudioNode(fileNamed: "background.mp3")
let fuse = SKAudioNode(fileNamed: "fuse.wav")


override func didMove(to view: SKView) {
DispatchQueue.main.async{
[weak self]
guard let strongSelf = self else {return}
if soundIsOn {
strongSelf.addChild(bg)
strongSelf.addChild(fuse)
}
}
}
}

如果还是不行,试试:

class GameScene: SKScene, SKPhysicsContactDelegate {
let bg: SKAudioNode = SKAudioNode(fileNamed: "background.mp3")
let fuse = SKAudioNode(fileNamed: "fuse.wav")


override func didMove(to view: SKView) {
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
[weak self]
guard let strongSelf = self else {return}
if soundIsOn {
strongSelf.addChild(bg)
strongSelf.addChild(fuse)
}
}
}
}

让我知道其中哪一个有效(如果有的话)。最好是,我们希望第一个有效,但如果第二个仅有效,那么我们需要为您找到一个更好的位置来添加音频节点。

关于ios - 当我添加 SKAudioNode 时应用程序在模拟器中崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56581378/

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