Хорошо. Это сходит с ума. Я работал над этим несколько дней, пробуя разные странные вещи. Я думаю, прошлой ночью мне приснился кошмар о libSpotify, возможно, это результат моих привычек сна, но я отвлекся.
Так или иначе. Давайте найдем исполнителя «The XX» по следующему коду. Предположим, что artist инициализирован исполнителем "xx", Spotify url spotify:artist:3iOvXCl6edW5Um0fXEBRXy
artistBrowse = [[SPArtistBrowse alloc] initWithArtist: artist inSession: spotifySession type: SP_ARTISTBROWSE_ALBUMS];
[SPAsyncLoading waitUntilLoaded: artistBrowse timeout: kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedItems, NSArray *notLoadedItems) {
[SPAsyncLoading waitUntilLoaded: artistBrowse.albums timeout: kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedItems, NSArray *notLoadedItems) {
NSArray *types = @[@"a", @"s", @"c", @"u"];
for(SPAlbum *album in loadedItems) {
NSLog(@"%@, %@, %@, %d, %-50s, %@", types[album.type], album.available ? @"Y" : @" N", album.artist.name, album.year, album.name.UTF8String, album.spotifyURL);
}
}];
}];
Вот результат. Извините, как-то длинно. Обратите внимание, что первый столбец относится к SP_ALBUM_TYPE альбома (a = альбом, s = сингл, c = компиляция, u = неизвестно), второй столбец — это Y или N в зависимости от того, доступен ли альбом в регионе моего сеанса ( США), третий столбец — это имя исполнителя, пятый — год выпуска альбома, шестой — название альбома и, наконец, URL-адрес альбома в Spotify.
u, N, The xx , 2012, Coexist , spotify:album:2cRMVS71c49Pf5SnIlJX3U
u, N, The xx , 2009, xx , spotify:album:2rmMeEq5D1Bg7YFRwtHBDr
a, N, The xx , 2009, xx , spotify:album:2nXJkqkS1tIKIyhBcFMmwz
s, Y, The xx , 2013, Reunion (Edu Imbernon Remix) , spotify:album:4GRHNZJ1dWCqgWfiyyJF2L
u, N, The xx , 2013, Fiction , spotify:album:4fUxANSrGWQlRtF2kpxo6g
s, Y, The xx , 2013, Innervisions Remixes , spotify:album:4ZmviA6XFr2D2Bfw0bicwa
s, Y, The xx , 2013, Sunset (Jamie Jones Remix) , spotify:album:1XlsTZcDbHQmLr3tNvuV5o
s, Y, The xx , 2013, Sunset (Kim Ann Foxman Remix) , spotify:album:26gAjcYx9iGrOuplES6jC1
s, Y, The xx , 2012, Angels , spotify:album:7kuu8alOjlFTGJmwsRINz9
s, Y, The xx , 2012, Angels (Four Tet Remix) , spotify:album:4ZLWktgv4GJSgzzskz6rpI
s, Y, The xx , 2012, Chained (John Talabot and Pional Blinded Remix) , spotify:album:2PsFbWSt7nAwZuO6M6zeMU
s, Y, The xx , 2012, Chained (LIAR Remix) , spotify:album:6HrD4wpVXVfXkZP1gxcKyH
s, Y, The xx , 2012, Jamie xx Edits , spotify:album:33UOrxCqUHQDH3XvNEYWoP
s, N, The xx , 2009, Basic Space , spotify:album:0LusnqOZqR8IYXHWE3DSQI
s, N, The xx , 2009, Basic Space , spotify:album:6aStvQrltK28rgDFsyOsBS
s, Y, The xx , 2009, Crystalised , spotify:album:6npsIAD3tolsM1htkmCDpT
s, N, The xx , 2009, Islands , spotify:album:7rW7Zf8fTJT25wMo4z6ww3
s, N, The xx , 2009, Islands , spotify:album:0KVBiUIqhl087FgJyvr8kS
s, N, The xx , 2009, VCR , spotify:album:0eRJD5ey3HqIgsGheUwZqg
s, Y, The xx , 2009, VCR (Four Tet Remix) , spotify:album:0L1Dg07wMBxRkzO5qlN1li
s, N, The xx , 2009, xx , spotify:album:0z6ErTRiEcAML2IPrkWI5W
a, N, Various Artists , 2013, Circus HalliGalli , spotify:album:0SCDZwyv5MbWsCdmeRHJUb
a, N, Craig Armstrong , 2013, The Orchestral Score From Baz Luhrmann's Film The Great Gatsby, spotify:album:7hTAlVO7LPTI5Q3KI5rTkR
a, Y, Craig Armstrong , 2013, The Orchestral Score From Baz Luhrmann's Film The Great Gatsby, spotify:album:6OuywehyzlNMYklKnPpr1W
a, N, Various Artists , 2013, Ministry Of Sound Chillout Sessions Classics , spotify:album:4yfIS04c7NLu20GEx0fKLm
a, N, Various Artists , 2013, Young Folks , spotify:album:56HMwAOWW0jnAH7J1S71Q1
a, N, Various Artists , 2013, Dance Anthems (Summer Edition 2013) , spotify:album:25uYDaqMIFjCSKKWgDpDuM
a, N, Various Artists , 2013, FluxFM - Popkultur kompakt Vol. 1 , spotify:album:44OoPqLioRdPtG181OSWXO
a, Y, Various Artists , 2013, Music From Baz Luhrmann's Film The Great Gatsby , spotify:album:0ke0VwcET1D6neauEyk4U4
a, Y, Various Artists , 2013, Music From Baz Luhrmann's Film The Great Gatsby , spotify:album:1ApOUkhympslVqgf9QFHUj
a, Y, Various Artists , 2013, Music From Baz Luhrmann's Film The Great Gatsby , spotify:album:4fPvaODSSdvvP7nuVKCYW2
a, N, Various Artists , 2013, Music From Baz Luhrmann's Film The Great Gatsby , spotify:album:0WXuzb6XoO21qOswVOH0xG
a, N, Various Artists , 2013, Music From Baz Luhrmann's Film The Great Gatsby , spotify:album:2XVXltseIMrGuK09ck7TpS
a, N, Various Artists , 2013, Music From Baz Luhrmann's Film The Great Gatsby , spotify:album:4zmVotzGvedZLgLt7b9enu
a, N, Various Artists , 2013, De Afrekening 54 , spotify:album:5v4Mk83IAaZF8v2ZJlR3zJ
a, N, Various Artists , 2013, Ministry of Sound FUT.UR.ISM , spotify:album:2oliIwXGnek066NvzFOyMh
a, N, Various Artists , 2013, Dermot O'Leary Presents The Saturday Sessions 2013, spotify:album:0vxrNQhxXzFHDoDe8ujfmC
a, N, Various Artists , 2013, Dermot O'Leary Presents The Saturday Sessions 2013, spotify:album:4IjdYP8ejVAUVhYEHIxV69
a, N, Various Artists , 2013, Switch 21 , spotify:album:2asHAel3cC4en0vj8OvL14
a, N, Various Artists , 2013, BRIT Awards 2013 , spotify:album:42DRlqFzejkEI1wTjggazF
a, N, Various Artists , 2013, about:berlin vol:2 , spotify:album:2M4eESAbUIRLtcoTZWKSwd
a, N, Various Artists , 2012, De Afrekening 53 - Best Of 2012 , spotify:album:3EZr5R7qYv49m80jTjjURV
a, N, Various Artists , 2012, Thank God It's Friday , spotify:album:0uUKY9EW6pQN8SPzU9vUyd
a, N, Various Artists , 2012, Humo 2012 , spotify:album:3JUslyKt2lAhaQdwX2nsCu
a, N, Various Artists , 2012, FM4 Soundselection Vol.27 , spotify:album:6vWWIRMgDoy3bYkX6oYy6j
a, N, Various Artists , 2012, Ministry of Sound Chillout Sessions XV , spotify:album:1luLiZ8M8yvlwwaLZNkBxI
a, N, Various Artists , 2012, Life Is Music 2012/2 , spotify:album:5uobOKU5V5Gdkr89uioVSk
a, N, Various Artists , 2012, Pure FM Vol.3 - Best Of 2012 , spotify:album:6VZUAizoJYpXS614EhuErD
a, N, Various Artists , 2012, Festivalitis , spotify:album:1Wzv0KyuSgZhXJTVSHuZMR
a, N, Various Artists , 2012, Sonar 1000 Vol.2 , spotify:album:6RygdphSUzqmQI0tY0XTC8
a, N, Various Artists , 2012, We Love Real Music , spotify:album:3YTlHLpLTpAPYzkh05iewe
a, N, Various Artists , 2012, Alle 40 Goed: Alternative , spotify:album:2v7n6Lgf0IV3bWqsxczFYO
a, N, Various Artists , 2012, Alle 40 Goed: Alternative , spotify:album:3Xy2qnFEUNjHMXAF3AlHhD
a, N, The Antlers , 2011, Together , spotify:album:5k6JBXhKxclnxOtGtvpxXP
a, N, Various Artists , 2011, Radio 1 Sonar 1000 , spotify:album:0ZiepVOAQGrWIl7AeUUsEy
a, N, Various Artists , 2011, Ministry of Sound Uncovered 3 , spotify:album:31Ut6kXlaSoADr5k52rYQb
a, N, Various Artists , 2011, The Weather Channel Presents – The Sounds Of Winter, spotify:album:3TWTfxuFaMCcQMHomKRTpN
a, N, Various Artists , 2011, Solid Sounds 2011/1 , spotify:album:46lwy99LsDyubeZU2KK5kB
a, N, Various Artists , 2010, Humo's Top 2010 , spotify:album:6Cvt2RPh9ANl4CUMXGSFHu
a, N, Various Artists , 2010, Ministry Of Sound Chillout Sessions XIII , spotify:album:2ze7hxcYnwo4CpdyK63xGQ
a, Y, The Big Pink , 2010, Tapes , spotify:album:1RW3Hq6dTHn1Phur2dRvg3
c, Y, The Big Pink , 2010, Tapes , spotify:album:2GJplTNzOUot6it93FtfLu
a, N, Mario Basanov , 2010, Future Balearica: New Chill & Warm Sunset Sounds , spotify:album:0I3COq9K4saT03qXsCmq6c
a, N, Various Artists , 2010, Volume.at - Alternative Summer 2010 , spotify:album:5juF4xi88AVJCreQCdm319
a, N, Various Artists , 2010, Festivalguide 2010 , spotify:album:3B066qff9ZcbFuFWC4vYai
a, N, Various Artists , 2010, Life Is Music 2010-1 , spotify:album:2jsGbNXBbjI933cmL9kGms
a, N, Various Artists , 2010, Uncovered 2 , spotify:album:3TEnNtbEnahNSkmcp0xQFZ
a, N, Various Artists , 2010, Various Artists/Rough Trade Counter Culture 09 , spotify:album:0KRR3PXLfJlIccrlgAllBh
Из этих данных я хочу извлечь что-то вроде следующего. Это альбомы xx на их странице исполнителя, официальном настольном клиенте Spotify с той же учетной записью, которую я использую для входа в libSpotify.
Обратите внимание, что в выходных данных, даже после того, как я загрузил все альбомы из artistBrowse.albums, два элемента, которые фактически являются альбомами, доступными в моем регионе, все указаны как недоступные, и только один фактический указан как альбом.
u, N, The xx , 2012, Coexist , spotify:album:2cRMVS71c49Pf5SnIlJX3U
u, N, The xx , 2009, xx , spotify:album:2rmMeEq5D1Bg7YFRwtHBDr
a, N, The xx , 2009, xx , spotify:album:2nXJkqkS1tIKIyhBcFMmwz
Как решить эту проблему? Много раз, если вы идете и проверяете веб-API с URL-адресами альбомов Spotify, которые говорят, что они недоступны в моем регионе через альбом.доступный, код региона «США» находится прямо в выводе со страницы результатов альбома. из веб-API. Во-вторых, я постоянно получаю ОЧЕНЬ разные результаты. Ничто не соответствует действительности, иногда альбом Red Hot Chili Peppers «I’m With You» отображается как доступный в моем регионе, иногда его нет в моем регионе. Если есть альбомы, недоступные в моем регионе, иногда вызывается другой вызов waitUntiLoaded: с loadedItems, возвращенным в вызове waitUntilLoaded с artistBrowse. альбомы решают проблему; повторная загрузка «загруженных элементов» иногда решает проблему? Это даже не имеет смысла.
Наконец, втф.
a, N, Rihanna , 2012, Unaplogetic , spotify:album:4owyFvp5H3UXKIOBBT9x3m
a, Y, Rihanna , 2012, Unapologetic , spotify:album:0XJya16l3K1J2dEwY19F8z
a, Y, Rihanna , 2012, Unapologetic , spotify:album:4eddbruVtOqw8khwxSH6H2
a, N, Rihanna , 2012, Unapologetic , spotify:album:4XBfFj0WYyh5mBtU61EdyY
a, N, Rihanna , 2012, Unapologetic , spotify:album:5pLlGJrxuQO3jMoQe1XxZY
a, N, Rihanna , 2012, Unapologetic , spotify:album:0giyQojM6DkyXVYigNo72p
a, Y, Rihanna , 2012, Unapologetic , spotify:album:1ciAVKFdlpLi2eGDlXv6Bo
a, N, Rihanna , 2012, Unapologetic , spotify:album:1jlYso6n0IxsGTLIvZOXUn
a, N, Rihanna , 2012, Unapologetic , spotify:album:5UDXzVwWnn3mDy3mTpQPYb
ПОМОГИТЕ пожалуйста, это огромный облом. Я буквально в полной растерянности, как получить любой надежный список, хотя я убежден, что если официальный клиент может это сделать, то и я тоже. Я смотрел на это так много дней, что думаю о том, чтобы подкрепить свой поиск вызовом веб-API и, например, использовать веб-API, чтобы дать мне списки альбомов для исполнителей .... звучит очень неприятно хотя. В остальном работать с библиотекой было довольно приятно. В очередной раз благодарим за помощь!