Не удается получить обложку при использовании GNSDK findAlbums на iOS
Возникла небольшая проблема с получением обложки при использовании findAlbums с GNSDK, но IdentifAlbumAsync работает отлично. Если вы посмотрите на пример кода iOS, то увидите, что код, который я должен перебирать возвращенные альбомы, используется так же, когда приложение использует микрофон для идентификации дорожки. Я прикрепил этот код к showTextSearch(), чтобы я мог легко его протестировать. Десять альбомов возвращаются по этому запросу.
do
{
let musicID = try GnMusicId(user: gnUser, locale: gnLocale, statusEventsDelegate: self)
let responseAlbums = try musicID.findAlbums(withAlbumTitle: "Born To Run", trackTitle: nil, albumArtistName: "Bruce Springsteen", trackArtistName: nil, composerName: nil)
var albums:GnAlbumEnumerator
if (responseAlbums.isKind(of: GnResponseAlbums.self))
{
albums = responseAlbums.albums()
}
else
{
albums = responseAlbums as! GnAlbumEnumerator
}
for a in albums
{
let album = a as! GnAlbum
let coverArtContent = album.coverArt()
let coverArtAsset = coverArtContent?.asset(kImageSizeSmall)
let artistImageContent = album.artist()?.contributor()?.image()
let artistImageAsset = artistImageContent?.asset(kImageSizeSmall);
}
}
catch
{
print("Error")
}
Я получаю много данных об альбомах, но не делаю обложек альбомов. Мой идентификатор конфигурации корректен для GNSDK, и, насколько мне известно, мой файл лицензии верен. Документация в лучшем случае сомнительна, так что, может быть, я что-то пропустил, но я не смог найти ничего, что говорило бы о том, почему findAlbums не будет возвращать обложку, когда IdentifAlbumAsync делает.
В любом случае для каждой итерации десяти альбомов coverArtContent и aristImageContent равны нулю. Я даже пытался быть более конкретным с trackTitle и trackArtistName безрезультатно.
Любые идеи о том, почему это будет происходить? Благодарю.
1 ответ
Ну, я разобрался с проблемой. Добавьте это после установки musicID:
let gnMusicIdStreamOptions = musicID.options()
try gnMusicIdStreamOptions.resultSingle(bEnable: true)
try gnMusicIdStreamOptions.lookupData(lookupData: kLookupDataSonicData, bEnable:true)
try gnMusicIdStreamOptions.lookupData(lookupData: kLookupDataContent, bEnable:true)
try gnMusicIdStreamOptions.preferResultCoverart(bEnable: true)