Привет, я использую следующий код для воспроизведения аудиофайла
NSString *stringPath = [[NSBundle mainBundle]pathForResource:@"audioFileName" ofType:@"mp3" inDirectory:@"/Downloads"];
NSURL *url = [NSURL fileURLWithPath:stringPath];
NSError *error;
avPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:url error:&error];
avPlayer.delegate = self;
[avPlayer play];
Но я получаю сообщение об ошибке, потому что мои аудиофайлы находятся в папке «Загрузки». Путь: AppName/Library/ApplicationSupport/Downloads/audioFileName.mp3
Ошибка, которую я получаю, заключается в том, что строка stringPath равна нулю, вероятно, потому, что эта строка кода написана неправильно. Я точно знаю, что файл там!
Вот изображение с использованием программного обеспечения для просмотра файлов
Итак, мой вопрос, как изменить приведенный выше код, чтобы он указывал на мой каталог загрузок при воспроизведении аудиофайла. Спасибо
Я даже пытался поставить весь путь вот так.
NSString *stringPath = [[NSBundle mainBundle]pathForResource:@"audioFileName" ofType:@"mp3" inDirectory:@"Library/Application Support/Downloads"];
Обновление статуса!
Теперь я делаю следующее, и ошибка исчезла, но я не уверен, что она все еще указывает на правильную папку, и если да, то возможно ли, что у меня нет разрешений на использование файлов в ней. Это каталог, который я создал, поэтому меняет ли права доступа к нему после его создания, что-то, что я тоже делал?
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *libraryDirectory = [paths objectAtIndex:0];
NSString *stringPath = [[libraryDirectory stringByAppendingPathComponent:@"Downloads"] stringByAppendingPathComponent:@"audioFileName.mp3"];