呦。我正在使用iOS上的AWS S3 SDK,并且需要上传大文件(视频)。

由于它们很大,因此我需要在应用程序在后台,挂起或终止时继续上传(AWSS3TransferUtility在这里很繁重)。

另外,由于它们很大,因此我想在未连接到WiFi时暂停上传,并在重新连接后恢复上传。我相信这是使用NSURLSession配置的allowsCellularAccess = NO的本质。

由于我无法在应用处于后台或终止状态时观看可达性和手动暂停/恢复任务,因此我希望必须在AWSS3TransferUtility上进行配置,但是遗憾的是找不到任何方法。

有谁知道这是否可能,以及如何实现上述目标?

非常感谢。

-

PS:
我正在使用的示例代码是Amazon的示例项目:https://github.com/awslabs/aws-sdk-ios-samples/tree/master/S3BackgroundTransfer-Sample

Obj-c,iOS 9

最佳答案

AWS SDK v2.3.6开始,现在这是可能的:

let credentialsProvider = AWSCognitoCredentialsProvider(regionType: myRegion, identityPoolId: myIdentityPoolId)
let configuration = AWSServiceConfiguration(region: myRegion, credentialsProvider: credentialsProvider)
configuration.allowsCellularAccess = false
AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration

10-04 11:03
查看更多