Мой mp3 играет код:AVAudioPlayer работает в симуляторе, но не на устройстве
NSError *error;
soundObject = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:audioPathString] error:&error];
if (soundObject == nil) NSLog(@"%@", [error description]);
soundObject.delegate = self;
soundObject.numberOfLoops = 0;
soundObject.volume = 1.0;
NSLog(@"about to play");
[soundObject prepareToPlay];
[soundObject play];
NSLog(@"[soundObject play];");
mp3 играл хорошо, и это все еще делает на тренажере. Но не на устройстве.
Я недавно добавил код для записи звука (не мой) в программное обеспечение. Он использует материал AudioQueue, который немного превосходит меня. Это противоречит AVAudioPlayer? Или что может быть проблемой? Я заметил, что как только код звуковой записи начинает работать, я больше не могу регулировать громкость на устройстве, так что, возможно, он блокирует воспроизведение звука ?.
EDIT
Решение, кажется, чтобы поставить это в моем коде. Я положил его в applicationDidFinishLaunching:
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayAndRecord error: nil];
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);
Первая строка позволяет одновременно воспроизводить и записывать, в то время как другие линии, по-видимому перенаправлять вещи, чтобы сделать громкость громче.
Весь звуковой код - вуду для меня.
Какая часть не работает? –
Воспроизведение звуков не работает, на устройстве. Он работает на симуляторе. – cannyboy