Eine sehr häufige Frage, aber ich kann nicht herausfinden, was in der Wiedergabe eine einfache Audiodatei in iOS 10 und 9. mache mir falsch habe ich den folgenden Code:eine einfache Audio-Datei in iOS Spielen
#import <AudioToolbox/AudioToolbox.h>
#import <AVFoundation/AVFoundation.h>
NSString *soundFilePath = [NSString stringWithFormat:@"%@",[[NSBundle mainBundle] pathForResource:@"www/sounds/ringbacktone" ofType:@"mp3"]];
[self playTone:soundFilePath Loop:YES];
-(void) playTone:(NSString *) soundFilePath Loop:(BOOL) loop{
NSLog(@"Sound File Path: %@",soundFilePath);
NSFileManager *fileManager = [NSFileManager defaultManager];
if ([fileManager fileExistsAtPath:soundFilePath]){
NSURL *soundFileURL = [NSURL fileURLWithPath:soundFilePath];
NSError *error = nil;
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFileURL error:&error];
if (error){
NSLog(@"Error creating the audio player: %@",error);
}else{
if (loop == YES)
player.numberOfLoops = -1; //Infinite
[player setVolume:1.0];
[player play];
}
}else{
NSLog(@"No sound will be played. The file doesn't exist.");
}
}
der Ausgang ist
Sound File Path: /var/containers/Bundle/Application/E8CCA88C-B6AB-4C36-9426-EFBB94E1D509/myapp.app/www/sounds/myfile.mp3
die Datei existiert, so sollte der Ton spielen. Ich habe wav, m4a und mp3 Dateien ohne Erfolg versucht.
Ich benutze die Funktion vor dem Aufruf pjsip Bibliothek. Nicht sicher, ob es eine Rolle spielt.
Irgendwelche Gedanken? Gibt es eine andere Möglichkeit, es weiter zu debuggen?
Sind Sie Audio-Sitzung aktiviert? Welche Kategorie verwenden Sie? –
AVAudioSessionCategoryPlayAndRecord –