Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS Swift中的流式Spotify预览url_Swift_Mp3_Spotify - Fatal编程技术网

iOS Swift中的流式Spotify预览url

iOS Swift中的流式Spotify预览url,swift,mp3,spotify,Swift,Mp3,Spotify,我正在尝试从Spotify提供的预览url流式传输,该url运行良好,我得到了正确的链接,但它们没有正常播放 一个示例url将是,我正在尝试使用与本文讨论的完全相同的代码,我可以让它与问题中提供的url一起工作,但与Spotify示例不起作用。任何帮助都将不胜感激 let url = URL(string: "https://p.scdn.co/mp3-preview/757bc5732e5c92e36ea249d631120b381a4885e2?cid=e188f3e083e7

我正在尝试从Spotify提供的预览url流式传输,该url运行良好,我得到了正确的链接,但它们没有正常播放

一个示例url将是,我正在尝试使用与本文讨论的完全相同的代码,我可以让它与问题中提供的url一起工作,但与Spotify示例不起作用。任何帮助都将不胜感激

       let url = URL(string: "https://p.scdn.co/mp3-preview/757bc5732e5c92e36ea249d631120b381a4885e2?cid=e188f3e083e741659b2ef6cfb07cddbd.mp3")
    let playerItem:AVPlayerItem = AVPlayerItem(url: url!)
    player = AVPlayer(playerItem: playerItem)

    let playerLayer=AVPlayerLayer(player: player!)
    playerLayer.frame=CGRect(x:0, y:0, width:10, height:50)
    self.view.layer.addSublayer(playerLayer)
    player.play()

类型为的spotify预览url仅持续30秒。它们可以通过AVPlayer播放

import UIKit
import AVFoundation
class AudioVC : UIViewController {
var player = AVAudioPlayer()

    override func viewDidLoad() {
    let previewURL = "https://p.scdn.co/mp3-preview/757bc5732e5c92e36ea249d631120b381a4885e2?cid=e188f3e083e741659b2ef6cfb07cddbd.mp3"

         downloadFileFromURL(url: URL(string: previewURL)!)

       }

    func downloadFileFromURL(url: URL){
        var downloadTask = URLSessionDownloadTask()
        downloadTask = URLSession.shared.downloadTask(with: url, completionHandler: {
            customURL, response, error in

            self.play(url: customURL!)

        })

        downloadTask.resume()


    }

    func play(url: URL) {

        do {
            player = try AVAudioPlayer(contentsOf: url)
            player.prepareToPlay()
            player.play()

        }
        catch{
            print(error)
        }}
 }