[英]Fetch music file from Cloudkit
我嘗試將用於獲取圖像資產的代碼轉換為獲取cloudkit上的mp3文件。 但是,我無法弄清楚數據部分。 我正在使用此庫播放音頻。 它只有一個叫做“ AudioPlayer”的類,所以如果我想在本地文件夾上播放音樂,就足以聲明它。
https://github.com/tbaranes/AudioPlayerSwift
func loadSong(completion:@escaping (_ song: AudioPlayer?) -> ()) {
// 1
DispatchQueue.global(qos: DispatchQoS.QoSClass.background).async {
var song: AudioPlayer!
defer {
completion(song)
}
// 2
guard let asset = self.record["Song_File"] as? CKAsset else {
return
}
let songData: AudioPlayer
do {
songData = try Data(contentsOf: asset.fileURL)
} catch {
return
}
song = AudioPlayer(contentsOf: <#T##URL#>)
}
}
其實,我不能清楚地做我想要的。 (我想從CloudKit播放一首歌曲,這是下載ckasset)。 下面的代碼獲取CkAsset的URL,以便我可以將其放入AVPlayer並進行播放。
func loadSongURL(completion:@escaping (_ url: URL?) -> ()) {
// 1
DispatchQueue.global(qos: DispatchQoS.QoSClass.background).async {
var song_url: URL!
defer {
completion(song_url)
}
// 2
guard let asset = self.record["Song_File"] as? CKAsset else {
return
}
let songURL: URL
do {
print(asset.fileURL)
songURL = asset.fileURL
} catch {
return
}
song_url = songURL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.