如何下载音频文件?

时间:2016-12-06 00:54:04

标签: ios google-drive-api swift3

我想用Google Drive API下载音频文件(mp3,m4a,wma ...)。尝试下面的代码,我在模拟器上得到了错误。

错误:

The operation could't be completed. (The user has not granted the app xxxx read access to the file alEnlflseiFNSEi.)

代码:

let url = "https://www.googleapis.com/drive/v3/files/\(identifier)?alt=media"

service.fetchObject(
    with: URL(string: url)!,
    delegate: self,
    didFinish: #selector(GoogleDriveFileListTableViewController.downloadWithTicket(ticket:finishedWithObject:error:))
)
// Parse results and display
func downloadWithTicket(ticket : GTLServiceTicket, finishedWithObject response : GTLDriveFileList, error : NSError?) {
    if let error = error {
        showAlert(title: "Error", message: error.localizedDescription)
        return
    }

}

1 个答案:

答案 0 :(得分:1)

关于您的"读取权限"问题在于Download files states

  

下载文件要求用户至少具有读取权限。   此外,您的应用必须获得允许的范围授权   阅读文件内容。例如,使用的应用程序   drive.readonly.metadata范围无权下载   文件内容。拥有编辑权限的用户可以限制下载   通过将viewersCanCopyContent字段设置为true来使用只读用户。

尝试使用Files.get获取音频文件的webContentLink。在新窗口中单击或打开此链接时,将下载音频文件。

它看起来像这样:

https://drive.google.com/uc?id=0Bzgk4zccNwI7TzBxZTFzbHFhdUU&export=download