繁体   English   中英

'NSInvalidArgumentException',原因:'资源beep.wav无法加载'iOS Sprite Kit

[英]'NSInvalidArgumentException', reason: 'Resource beep.wav can not be loaded' iOS Sprite Kit

我正在使用Sprite Kit(Objective-C)为iPad开发游戏。

我经常使用以下代码(例如):

[self runAction:[SKAction playSoundFileNamed:@"beep.wav" waitForCompletion:YES]];

一切顺利,直到一段时间后我的应用程序崩溃,突然出现以下错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Resource beep.wav can not be loaded'

我不知道为什么,因为可以在错误发生之前正确播放声音。

其他声音也可能发生相同的错误,但总是会在一段时间后出现。

有任何想法吗 ?

您应该尝试预加载声音,并在控制器中保留对动作的引用。

@property (strong, nonatomic) SKAction *playMySound;

并初始化它:

self.playMySound = [SKAction playSoundFileNamed:@"beep.mp3" waitForCompletion:NO];

并使用它:

[self runAction:playMySound]

您将保留对动作的引用,并且避免每次您要播放声音时都重新加载文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM