2013-11-17 3 views
0

Я использую cocoalibspotify (отличный материал) для потоковой передачи. Спотифицируйте музыку в моем проекте.cocoalibspotify: Сбой при загрузке нескольких плейлистов

После выбора списка воспроизведения, этот код работает:

[[SPSession sharedSession] playlistForURL:myPlaylistUrl callback:^(SPPlaylist *playlist) { 
    if(playlist != nil){ 

     _chosenPlaylist = playlist; 
    } 
}]; 

я позже использовать _chosenPlaylist, чтобы создать массив всех треков. Это отлично подходит для первого плейлиста, который я выбираю. Однако, когда я выбираю другой плейлист (или тот же снова), переменная блока playlist равна нулю, что приводит к сбою.

Примечание: Перед выбором второго плейлиста я отклоняю контроллер вида, чтобы он действовал так же, как и в первый раз.

Любые идеи о том, почему плейлист возвращается как ноль во второй раз, когда я запускаю этот код?

Редактировать: Я использую ARC. Декларация для _chosenPlaylist выглядит следующим образом SPPlaylist *_chosenPlaylist;

Катастрофа происходит из-за этой линии: [playlists addObject:_chosenPlaylist];, что имеет смысл, так как _chosenPlaylist равна нулю в этой ситуации.

+0

Немного больше информации пожалуйста: Вы используете ARC? Как объявляется _chosenPlaylist? Код, который вы отправили, проверяет список воспроизведения для nil, так где же происходит катастрофа? – iKenndac

+0

Привет @iKenndac, я обновил свой пост с дополнительной информацией. Спасибо. – marsrover

ответ

0

В принципе, единственный способ, которым playlistForURL:callback: может вернуть плейлист nil, это если вы указали ему неверный URL. Дважды проверьте свой ввод (значение myPlaylistUrl) - принимаются только URL-адреса от spotify:user:xxx:playlist:yyy.

Смежные вопросы