2012-03-31 11 views
0

Ok, so weiß ich, dass dies ein häufiger Fehler ist, aber ich kann nichts finden, das mir damit online helfen kann.Beenden App aufgrund der nicht abgefangenen Ausnahme 'NSInvalidArgumentException' Fehler

Wenn ich Eingang:

NSString *path = [[NSBundle mainBundle] pathForResource:@"backgroundLoop" ofType:@"m4a"]; 
AVAudioPlayer* theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
[theAudio play]; 

in meine app (im -ViewDidLoad-Methode), erhalte ich diese Fehlermeldung:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSURL initFileURLWithPath:]: nil string parameter'

First throw call stack: (0x1a31022 0x1ed9cd6 0x19d9a48 0x19d99b9 0xcad53b 0xcad4c5 0x2f85 0x10cba1e 0x102a401 0x102a670 0x102a836 0x103172a 0x2d8d 0x1002386 0x1003274 0x1012183 0x1012c38 0x1006634 0x317fef5 0x1a05195 0x1969ff2 0x19688da 0x1967d84 0x1967c9b 0x1002c65 0x1004626 0x2bbc 0x2b55) terminate called throwing an exception(lldb)

Bitte beachten Sie: Ich bin mit ARC.

Antwort

0

Die Datei existiert wahrscheinlich nicht in dem Pfad, den Sie an -initFileURLWithPath: übergeben. Was ist der Wert von path vor dem Anruf? Es ist wahrscheinlich Null, würde ich vermuten.

+0

Der Wert des Pfades wird nicht direkt angezeigt, bevor er aufgerufen wird. Soll ich das reinstecken? und wenn ja, wie? –

+0

Sie können es drucken, indem Sie an der Eingabeaufforderung der Debug-Konsole "po path" eingeben. – user1118321

0

Nur NSLog verwenden:

NSLog(@"%@", path); 

sehen, ob der Dateiname gleich ist.