У меня странная проблема с avaudioPlayer. Он отлично работает, когда я запускаю симулятор iphone 4.0, 4.1 и 4.2. Он также работает нормально, когда я запускаю ipad simulator 4.2, но когда я запускаю ipad simulator 3.2, он падает, потому что код AVAudioPlayer имеет fileURL, который имеет значение Null.
Вот мой код.
NSString *filePath = [[NSBundle mainBundle] pathForResource:appDelegate.globalMP3Name
ofType:@"mp3"];
// Convert the file path to a URL.
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:filePath];
Я использую AVFoundation Framework со слабой ссылкой для того, чтобы сделать его совместимым с iOS3. он получает globalMP3Name (1.mp3) правильно, поэтому filePath 1.mp3 не должен быть нулевым. FileURL работает с другими симуляторами, но происходит сбой только 3.2.
Вот сообщение об ошибке из консоли.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: ' *** -[NSURL initFileURLWithPath:]: nil string parameter'
2011-06-27 18:51:57.092 Stack: (
45475920,
46633772,
45213451,
45213290,
1135303,
18960,
3038446,
3535934,
3545280,
3540077,
3165672,
3057219,
3088856,
53191036,
44755100,
44751016,
53184669,
53184866,
3081074,
10148,
10037
)
terminate called after throwing an instance of 'NSException'
Как мне это исправить?