我在使用 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 不会返回。
我的代码有问题吗?