Я пытаюсь определить, существует ли песня в библиотеке пользователя до ее воспроизведения. Если пользователь удаляет песню в своей библиотеке, следующую строку кода, действующего на MPMediaItem еще дает URL:Проверка наличия песни
NSURL *songURL=[song valueForProperty:MPMediaItemPropertyAssetURL];
songURL
находится в форме «IPOD-библиотеки: //item/item.m4a? ID = 5050 ... и т.д. «. И тогда следующая строка падает при вызове:
[[AVAudioPlayer alloc] initWithContentsOfURL:songURL error:nil];
Я попытался использовать следующую строку, чтобы увидеть, если песня все еще существует, но она возвращает ноль, существует ли эта песня или нет. Я считаю, что это связано с тем, что он несовместим с URL-адресом «ipod-library».
NSData* songData = [NSData dataWithContentsOfURL:songURL];
Любые предложения были бы замечательными. Спасибо за прочтение!
Попробуйте пропускании 'NSError' файл' initWithContentsOfURL: ошибка: '. Если вы получите сообщение об ошибке, вы узнаете, что файл не существует (или был поврежден). –
@IanMacDonald Спасибо! – Rogare