Ich weiß nicht, ob jemand von euch bereits mit der kürzlich verfügbaren API für Spotify gespielt hat, aber es gibt etwas, das mich stört.
Sobald Sie die -(void)sessionDidLoginSuccessfully:(SPSession *)aSession
Rückruf, ist so gut wie keine Information der SPSession
Objekt.
Aber ein wenig Code-Inspektion auf der CocoaLibSpotify scheint dies eigentlich normal, die Daten werden später abgerufen.
Das Problem ist, dass diese Informationen anscheinend nie abgerufen werden. Ich habe ein ähnliches Verhalten wie ihr "Guess the Intro" Beispiel verfolgt und wenn ich:
- (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 */ }
}
Grundsätzlich ist die userTopList
nach weniger als einer Sekunde korrekt gesetzt wird, während die Hauptsitzung userPlaylists
wird weiterhin nil
.
In dem genannten Beispiel geschieht das Gleiche.
Ich glaube also, dass die Bibliothek noch nicht ganz so weit ist, aber ich würde mich über Ihre Anregungen freuen.