libspotify на iOS или MacOS: не удается получить части SPSession - PullRequest
3 голосов
/ 07 сентября 2011

Я не знаю, играл ли кто-нибудь из вас с недавно доступным API для spotify, но есть кое-что, что меня беспокоит.

Как только вы прошли обратный вызов -(void)sessionDidLoginSuccessfully:(SPSession *)aSession, в значительной степенинет никакой информации о SPSession объекте.

Но немного проверки кода на CocoaLibSpotify это кажется нормальным, данные извлекаются позже.

Проблема в том, чтоэтой информации фактически никогда не извлекается.Я следовал тому же поведению, что и их пример «Угадай вступление», и если я это сделаю:

- (void)sessionDidLoginSuccessfully:(SPSession *)aSession
{
    // trying to fetch another piece of info about the user
    userTopList = [[SPToplist toplistForCurrentUserInSession:session] retain];
    [self waitForReadiness];
}

- (void)waitForReadiness
{
    // Event after 10 seconds userPlaylists is still nil
    if (![[[SPSession sharedSession] userPlaylists] isLoaded])
    {
        playlistsAttempts++;

        if (playlistsAttempts < 10) 
        {
            [self performSelector:_cmd withObject:nil afterDelay:1.0];
            return;
        }
    }
    // However, after only 1 second, userTopList is fetched
    if (userTopList.isLoaded )
        { /* do stuff */ }

}

В основном userTopList правильно установлен менее чем через секунду, пока основной сеанс userPlaylists сохраняетсяБыть nil.

На данном примере происходит то же самое.

Итак, я начинаю думать, что библиотека еще не совсем готова, но я с удовольствием приму ваши замечания.

1 Ответ

3 голосов
/ 15 сентября 2011

У меня возникла та же проблема, и я обнаружил, что следующий патч решил мою проблему:

https://github.com/spotify/cocoalibspotify/commit/2c9b85e306a8849675e5b30169481d82dbeb34f5

Надеюсь, это поможет.

-Dx

...