iOS Simulator no reproduce el sonido

En XCode 6, todo funciona bien en el dispositivo, pero en el simulador, el sonido no se reproduce.

Hay mi código rápido:

var url = NSURL(string: "http://my.url.com/sound.mp3") var data = NSData(contentsOfURL: url!) // Removed deprecated use of AVAudioSessionDelegate protocol AVAudioSession.shanetworkingInstance().setCategory(AVAudioSessionCategoryPlayback, error: nil) AVAudioSession.shanetworkingInstance().setActive(true, error: nil) self.player = AVAudioPlayer(data: data, error: nil) self.player.prepareToPlay() self.player.delegate = self self.player.volume = 1 self.player.play() 

Hay el logging:

 ERROR: 98: Error '!obj' trying to fetch default input device's sample rate ERROR: 100: Error getting audio input device sample rate: '!obj' WARNING: 230: The input device is 0x0; '(null)' WARNING: 234: The output device is 0x26; 'AppleHDAEngineOutputDP:3,0,1,1:0:{2D4C-092D-00000000}' ERROR: 400: error '!obj' ERROR: 113: * * * NULL AQIONode object ERROR: 180: EXCEPTION thrown ('!dev'): - ERROR: 703: Can't make UISound Renderer ERROR: >aqsrv> 70: Exception caught in (null) - error -1 ERROR: 180: EXCEPTION thrown ('!dev'): - ERROR: >aqsrv> 70: Exception caught in (null) - error -1 

El error se produce porque intenta get device's sample rate del simulador, lo que no es posible.

Porque el simulador no es un hardware. Es un software.

Entonces, alguna funcionalidad de hardware no podrá simularse con ella.

No puede hacer lo siguiente:

  1. Cámara abierta
  2. Reproducir sonidos
  3. Girometro
  4. Acelerómetro
  5. Efecto agitar
  6. Recibir notifications push

Y muchos más que requieren la aceleración del hardware del dispositivo.

Necesita probar esto en un dispositivo real.

Estaba teniendo este problema, el comentario de @Matti Jokipii , me ayudó mucho.

Necesita habilitar una input de sonido, por lo que su Mac no le otorga la exception nula.
Vaya a Preferences del sistema> Sonido. Y compruebe que tiene alguna input conectada. De lo contrario, deberá agregar una microfonía y volver a ejecutar la aplicación.

introduzca la descripción de la imagen aquí