Reputation: 293
I correctly retrieve my logged user's Spotify
playlist :
- (IBAction)loadPlaylist{
SPTAuth *auth = [SPTAuth defaultInstance];
[SPTPlaylistList playlistsForUserWithSession:auth.session callback:^(NSError *error, id object) {
SPTListPage *pl= object;
NSLog(@"%@ my playlist items",pl.items);
}];
}
However, I don't understand how can I start to play this playlist.
Upvotes: 0
Views: 453
Reputation: 951
Retrieve all playlists and pass it to player.
[self.player loginWithSession:auth.session callback:^(NSError *error) {
if (error != nil) {
NSLog(@"*** Error occurred while trying to log in %@", error);
return;
}
[SPTPlaylistList playlistsForUserWithSession:auth.session callback:^(NSError *error, id object) {
if (!error) {
NSURL *playlistURL = nil;
SPTListPage *pl= object;
if(pl != nil && pl.items.count > 0)
playlistURL = [pl.items[1] uri];
NSURLRequest *playlistReq = [SPTPlaylistSnapshot createRequestForPlaylistWithURI:playlistURL accessToken:auth.session.accessToken error:nil];
[[SPTRequest sharedHandler] performRequest:playlistReq callback:^(NSError *error, NSURLResponse *response, NSData *data) {
if (error != nil) {
NSLog(@"*** Failed to get playlist %@", error);
return;
}
SPTPlaylistSnapshot *playlistSnapshot = [SPTPlaylistSnapshot playlistSnapshotFromData:data withResponse:response error:nil];
[self.player playURIs:playlistSnapshot.firstTrackPage.items fromIndex:0 callback:nil];
}];
}
}];
Upvotes: 1
Reputation: 16803
Check the following sample code:
id plistRep = [[NSUserDefaults standardUserDefaults] valueForKey:@"SpotifySession"];
SPTSession *session = [[SPTSession alloc] initWithPropertyListRepresentation:plistRep];
[SPTRequest playlistsForUser:[session canonicalUsername] withSession:session callback:^(NSError *error, id object) {
SPTPlaylistList *playlist = (SPTPlaylistList *)object;
for (SPTPartialPlaylist *item in [playlist items]) {
NSLog(@"Playlist %@", [item name]);
}
}];
Upvotes: 0