swift URLSession响应数据音频文件保存和播放

标签 swift audio request response

我在从 URLSession 请求的响应数据中保存和播放音频文件时遇到一些问题。如何从响应数据播放音频文件?

let task = URLSession.shared.dataTask(with: request) {data, response, error in
        if let error = error {
            print("Error:", error)
        }
        if let response = response {
             print("Voice Response:", response)
        }
        self.playMusic(data: data!)
    }

最佳答案

我自己解决了如下:

func playMusic(data: Data) {

    let fileURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false).appendingPathComponent("voice.mp3")

    do {
        try data.write(to: fileURL, options: .atomic)
    } catch {
        print("Error")
        print(error)
    }


    do{

        audio = try AVAudioPlayer(contentsOf: fileURL)
        audio.prepareToPlay()
        audio.play()
    }
    catch {
        print("Error")
    }
}

关于swift URLSession响应数据音频文件保存和播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41311939/

相关文章:

javascript - 当我在 chrome 中切换设备模式时 $http.get 请求失败

java - request.setcharacterencoding() 方法似乎在源代码中没有执行任何操作

ios - 在自定义 UITableView 中--类型 'AnyObject->()' 的值没有成员 'tag' 错误

swift - UITabBarController 不加载自定义 UITableView

linux - 标记音频和 ogg

matlab - 在Matlab中使用memmapfile读取并表示mp3文件

javascript - Audiolib.js:更改现有 “objects”的值

android - 在 Android 中模拟 HTML 表单

ios - 使用 Swift 的带有 MVVM 的 UITableView

swift - 计算参数的平均值