错误:在模拟器上运行时无法获取默认输入设备

时间:2016-05-20 21:55:17

标签: ios objective-c sprite-kit

WARNING:  40: ERROR: couldn't get default input device, ID = 0, err = 0!

当我尝试使用iOS模拟器时,我遇到了这条错误消息(/ crash)(他们似乎都给出了同样的错误) - 在iPhone上运行就可以了。

问题在某种程度上与声音部分有关,因为当它们被注释掉时,它起作用。代码并不罕见,但我确信有人会要求看到它:

_flipSound = [SKAction playSoundFileNamed:@"flip.wav" waitForCompletion:NO];
_successSound = [SKAction playSoundFileNamed:@"success2.wav" waitForCompletion:NO];
_failureSound = [SKAction playSoundFileNamed:@"failure2.wav" waitForCompletion:NO];

并且在播放声音的地方,它看起来像是像这样:

if (self.blockType == 3){
    [self runAction:[SoundStore sharedStore].successSound];
} else {
    [self runAction:[SoundStore sharedStore].failureSound];
}

3 个答案:

答案 0 :(得分:8)

您可能需要通过在系统偏好设置>中切换"播放用户界面音效" 复选框来重置系统声音偏好设置。声音>声音效果

sound-not-working-in-iphone-simulator

或者可能将音频输入设备调整为模拟器喜欢的设备。

simulator-crashes-on-aqmeiomanger

我在模拟器中使用像上面这样的动作播放.wav文件没有问题,声音作为SKScene对象的属性。因此,您的SoundStore对象可能会出现问题。

答案 1 :(得分:1)

在模拟器主机(即计算机)上似乎不存在声音输入设备(即麦克风)。 Mac Minis和Pros通常不带麦克风。您正在使用其中之一吗?

尝试将带蓝牙/有线耳机的麦克风连接起来,然后重新运行模拟器。它应该使错误消失。

答案 2 :(得分:1)

完全杀死模拟器(按 cmd+Q)然后重新运行应用程序为我修复了它!耸耸肩。