2012-04-09 73 views
0

IM上的Spotify的iOS应用工作,我一直在尝试使用,以获得用户的播放列表 [[SPSession sharedSession]userPlaylists]userPlaylists返回空

大部分的时间,它不返回任何播放列表,偶尔,它返回所有播放列表。我登录正确的,因为 [[SPSession sharedSession] starredPlaylist][[SPSession sharedSession] inboxPlaylist] 总是返回播放列表
任何人有任何想法怎么回事?

回答

0

在CocoaLibSpotify一切都是异步的 - 你需要等到playlists属性之前的userPlaylists回报YESloaded属性包含有用的东西,并包含在每个播放列表具有被设置为YES当播放列表的名称loaded属性和轨道列表已加载。

播放列表堆栈中的所有属性(以及CocoaLibSpotify中的其他地方)均符合键值观察。最好的方法是观察你感兴趣的属性,然后在设置时作出反应。

+0

我确实有环路,如果用户播放表被加载,检查,但它仍然返回空'code'如果 { loginAttempts ++([[[SPSession sharedSession] userPlaylists] isLoaded]!); if(loginAttempts <10) {self performSelector:_cmd withObject:nil afterDelay:1.0]; return; (@“playlists%@”,[[SPSession sharedSession] userPlaylists] .playlists);'code' – Tony 2012-04-10 00:53:10

+0

以最好的方式可能...这是一个*真*坏的方法。播放列表可能需要很长时间才能加载新的登录信息,尤其是在用户拥有大量登录信息的情况下。我保证,如果您制作了一个类似x次检查的循环,则会遇到播放列表需要x + 1加载的用户。 – iKenndac 2012-04-10 08:59:59

+0

哦,好的,谢谢你,所以真的没有好方法来加载播放列表? – Tony 2012-04-10 13:42:37