2015-04-04 64 views
3

嗨我试图从用户带星号的歌曲中提取艺术家。我明白,starredListForUserInSession返回一个PlaylistSnapshot。这有一个第一个TrackPage属性,它是一个SPTListPage。Spotify iOS SDK返回SPTListPage.items返回零

在我的测试中,当打印出SPTListPage时,它说该列表有8个项目。当我尝试使用ListPage.items获取ListPage中的项目时,它返回nil。我不确定有什么问题。我打电话错了吗?

func retrieveStarred() -> Void { 
    SPTRequest.starredListForUserInSession(self.session, callback: { (error:NSError!, starred: AnyObject!) -> Void in 
     if error != nil { 
      println("error retrieving starred playlist") 
     } else { 
      self.starred = starred as SPTPlaylistSnapshot 
      self.scrapePlaylist(self.starred) 
     } 
    }) 
} 
func scrapePlaylist(playlist: SPTPlaylistSnapshot) -> Void { 
    println(playlist); 
    var firstTracks = playlist.firstTrackPage 
    println(firstTracks) 
    println(firstTracks.hasNextPage) 
    var songs = firstTracks as SPTListPage 
    println(songs.items) 
    for song in songs.items { 
     var track = song as SPTPartialTrack 
     for artist in track.artists { 
      updateSongsCount(artist as SPTPartialArtist) 
     } 
    } 
} 
+0

你有没有想过这个?我有同样的问题。谢谢 – David 2017-08-29 15:37:42

回答

0

尝试将链接器标志“-all_load”添加到项目文件中的其他链接器标志。

1

我认为这个页面(github.com/spotify/ios-sdk/issues/377)是由提问这个问题的同一个人设置的,他最终在该页面的评论中找到了它。我以为我会把它粘贴到任何其他有同样问题的人。该网页上的评论工作对我来说:

“好 - 明白了固定

要完成构建环境的建立,交换机从信息选项卡,以生成设置选项卡,并找到其它链接器标记建立设置(您可以使用设置列表顶部的搜索字段进行搜索)如果您没有看到它,则可能需要单击“全部”才能显示所有生成设置

添加值 - ObjC到这个设置。“ -github.com/spotify/ios-sdk/issues/377