SPAsyncLoadingクラスを使用したプレイリストの読み込みに問題があります。呼び出しがまったく返されない場合もあれば、久しぶりに戻る場合もあります。
次のコードを使用して、URLからプレイリストを読み込みます。
NSString *playlistUrl = [Config instance].playlistUrl;
[SPPlaylist playlistWithPlaylistURL:[NSURL URLWithString:playlistUrl] inSession:[SPSession sharedSession] callback:^(SPPlaylist *pl) {
playlist = pl;
playlist.delegate = self;
[SPAsyncLoading waitUntilLoaded:playlist then:^(NSArray *array) {
NSLog(@"playlist loaded");
}];
}];
次のコードを使用して、すべてのユーザーのプレイリストを読み込みます。
SPPlaylistContainer *userPlayLists = [[SPSession sharedSession] userPlaylists];
[SPAsyncLoading waitUntilLoaded:userPlayLists then:^(NSArray *result) {
SPPlaylistContainer *userPlayLists = (SPPlaylistContainer*) [result objectAtIndex:0];
[SPAsyncLoading waitUntilLoaded:userPlayLists.playlists then:^(NSArray *result) {
NSLog(@"playlists loaded");
}];
}];
すべてのユーザーのプレイリストをロードする場合、0個のプレイリストがロードされることもあれば、すべてのプレイリストが使用可能になることもありますが、最後のwaitUntilLoadedは返されません。
私のコードに何か問題がありますか?