SKAction playSoundFileNamed не работает после получения двух последовательных телефонных звонков

Я пытаюсь выяснить почемуplaySoundFileNamed не работает после получения двух последовательных телефонных звонков. На самом деле это работает только после первого телефонного звонка. Шаги воспроизведения:

Начать игруЖдите телефонного звонка и переходите на задний планТелефонный звонок завершен (отклонен или прерван звонящим)Возвращаясь на передний план

После этого воспроизводится звук изtouchesBegan еще работает.

Когда я повторяю шаги сверху (первый шаг пропущен), механизм от прикосновений начинает работать. Не уверен, почему это происходит ... Вот код, который может производить описанное поведение:

@interface GameScene()

@property (nonatomic, strong) SKAction *sound;
@end

@implementation GameScene

-(void)didMoveToView:(S,KView *)view {
    self.sound = [SKAction playSoundFileNamed:@"sound1.wav" waitForCompletion:NO];
}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    /* Called when a touch begins */
    [self runAction:self.sound];
}
@end

Я знаю, что есть некоторые вопросы, связанные с этим в SO, но данные ответы связаны с обходными путями.Меня не интересует обходной путь, а, скорее, почему это происходит? Это как-то связано с AVAudioSession? (вероятно, нет). Я знаю, что мог бы использовать AVAudioPlayer в качестве обходного пути, но все еще не уверен, сколько стоит этот исполнитель для воспроизведения множества простых коротких звуков ...

Ответы на вопрос(2)

Ваш ответ на вопрос