gpt4 book ai didi

ios - SpriteKit 运行 Action :withKey: combined with repeatActionForever: crashes app

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

以下代码有效(我可以无限期地重复播放声音):

SKAction *playMusic = [SKAction playSoundFileNamed:@"sound.m4a" waitForCompletion:NO];
SKAction *onRepeat = [SKAction repeatActionForever:playMusic];
[myScene runAction:onRepeat];

以下代码有效(我可以播放声音,为以后访问键入):

SKAction *playMusic = [SKAction playSoundFileNamed:@"sound.m4a" waitForCompletion:NO];
[myScene runAction:onRepeat withKey:@"BackgroundMusic"];

以下代码失败(我无法键访问重复的声音):

SKAction *playMusic = [SKAction playSoundFileNamed:@"sound.m4a" waitForCompletion:NO];
SKAction *onRepeat = [SKAction repeatActionForever:playMusic];
[myScene runAction:onRepeat withKey:@"BackgroundMusic"];

有奇怪的点击而不是正在播放的声音,直到应用程序在 10-15 秒后崩溃(“由于内存错误而终止”)。

有没有人知道这个问题,或者这种使用组合是否在您知道的任何地方被记录为无效?

最佳答案

因此,解决方法是更改​​ waitForCompletion:YES

SKAction *playMusic = [SKAction playSoundFileNamed:@"sound.m4a" waitForCompletion:YES];
SKAction *onRepeat = [SKAction repeatActionForever:playMusic];
[myScene runAction:onRepeat withKey:@"BackgroundMusic"];

由于 playSoundFileNamed Action 长度为 0,它会继续尝试一遍又一遍地播放它,从而导致不愉快的声音和内存问题。

我不确定一个重复 Action 是否是唯一一个用该键注册的 Action ,或者是否每个正在播放的 Action 都踩在前一个 Action 上。仅出于学术原因才真正重要。

关于ios - SpriteKit 运行 Action :withKey: combined with repeatActionForever: crashes app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29374549/

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