Spotify API 到 Swift
Posted
技术标签:
【中文标题】Spotify API 到 Swift【英文标题】:Spotify API to Swift 【发布时间】:2015-04-13 22:26:45 【问题描述】:可能是一个简单的问题,但我正在尝试使用 Spotify 的 API,该 API 记录在 Objective C 中,但我一直在尽我所能在 Swift 中进行处理。
@property(非原子、只读、复制)NSArray *genres 然而,是他们的 SPTartist 类的 API 协议之一;我不知道如何在 swift 中以工作方式使用它。
这是我开始工作的示例代码。
func updateTrackLength()
if player?.currentTrackMetadata == nil
trackLength.text = ""
return
let length = player?.currentTrackMetadata[SPTAudiostreamingMetadataTrackDuration] as Int
let convert = length / 60
let remainder = length % 60
var newlength = String(convert)
var newRemainder = String(remainder)
dispatch_async(dispatch_get_main_queue(), () -> Void in
self.trackLength.text = "Track length: " + newlength + " Minutes " + newRemainder + " Seconds"
)
这使用 currentTrackMetaData 和任何 SPT 协议来跟踪字符串输出。当我尝试使用 SPTArtistGenres 或 SPTArtistGenre 代替 SPTAudioStreamingMetaDataTrackDuration 时,它不起作用。 要指定我的问题,我想使用 currentTrackMetaData 来调用上面的流派属性。非常感谢任何建议!
【问题讨论】:
【参考方案1】:这与 Swift 完全无关——如果你尝试在 Objective-C 中做你正在做的事情,它也会失败。
播放器的 currentTrackMetadata
字典返回纯 URL - 如果您只是 println()
对 player.currentTrackMetadata
的响应,您会看到它只包含 URL。
genres
属性在 SPTArtist
类上。要将您的裸 URL 转换为 SPTArtist
,请使用 SPTRequest
类(特别是 requestItemAtURI
方法)。拥有SPTArtist
对象后,您将能够从中获取所需的所有元数据,包括流派。
有关详细信息,请参阅库随附的文档。此外,SDK 中包含的 Simple Player 演示应用也做了类似的事情。
【讨论】:
以上是关于Spotify API 到 Swift的主要内容,如果未能解决你的问题,请参考以下文章
Spotify 如何通过 API 将播放列表发布到 Facebook 墙上?
有啥方法可以找出专辑何时被添加到 web api 的 spotify 中?