0

嗨,我正在使用 aws sdk v2

下载我正在使用 ASWSS3Transfermanager 和 AWSS3TransferManagerDownloadRequest

问题场景如下:

  1. 用户下载文件。
  2. 文件总大小为 500MB,但用户下载到 200MB 并退出应用程序。
  3. 检查结果 200MB 文件仍然完好。
  4. 重新启动应用程序并开始下载相同的文件,aws sdk 从 0MB 开始下载。

我如何下载 200MB 的文件?有没有办法保存 AWSS3TransferManagerDownloadRequest?

请帮我..

4

1 回答 1

0

当应用程序重新启动时,如果您重新创建AWSS3TransferManagerDownloadRequest一次(即使使用相同的参数)并通过创建下载任务ASWSS3TransferManager,您之前的下载任务将丢失并且新的下载将被初始化。

要恢复之前的下载,有两种选择:

  1. 当应用程序重新启动时,调用resumeAll而不是重新创建一个新的AWSS3TransferManagerDownloadRequest

[AWSS3TransferManager resumeAll:nil] continueWithBlock:^id(AWSTask *task) { //process your task.result }];

  1. 在最新的适用于 iOS 的 AWS 移动开发工具包中使用AWSS3TransferUtility而不是。AWSS3TransferManagerAWSS3TransferUtility将利用 Apple 的后台传输功能,因此即使应用程序已关闭,下载任务也将继续。
于 2015-08-20T23:59:30.973 回答