【发布时间】:2018-03-01 22:29:29
【问题描述】:
我的要求是在用户希望时取消上传。 我正在关注 TransferUtility 文档来设置和上传视频、显示进度、即使应用程序处于后台也能保留状态。我找不到任何方法来取消uploadTask。
{
let uploadRequest = AWSS3TransferManagerUploadRequest()
let transferUtility = AWSS3TransferUtility.default()
var completionHandler : AWSS3TransferUtilityUploadCompletionHandlerBlock?
var uploadTask : AWSTask<AWSS3TransferUtilityUploadTask>?
let expression = AWSS3TransferUtilityUploadExpression()
}
func startUpload() {
uploadTask = transferUtility.uploadFile((uploadRequest?.body)!,
bucket: (uploadRequest?.bucket)!,
key: (uploadRequest?.key)!,
contentType: "video/mov",
expression: expression,
completionHander: completionHandler).continue({ (task) -> AnyObject! in if let error = task.error {
print("Error: \(error.localizedDescription)")
}
if let _ = task.result {
}
return nil;
}) as? AWSTask<AWSS3TransferUtilityUploadTask>
}
我想知道我应该在任务上使用哪个 continue 块,以及如何像我们用于 TransferManager 任务的方式一样执行诸如 uploadTask.cancel() 之类的操作。
【问题讨论】:
标签: ios swift amazon-s3 aws-sdk awss3transferutility