2015-04-04 59 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