我使用TransferUitlty类将文件上传到S3。一切都很好,除了我暂停上传并继续上传之后。文件是从一开始就上传的,而不是从我暂停的地方上传的。
此简历方法是否设计用于重新启动上载或从其暂停的位置恢复? 我可以使用简历的方法,以恢复上传,即使在杀死应用程序?
代码:
private void uploadResume(int id,ProgressBar progress,File f,TextView filelength,ImageView updownststatus){
if(sTransferUtility!=null){
sTransferUtility.resume(id);
observer= sTransferUtility.getTransferById(id);
observer.setTransferListener(new UploadListener(progress, observer,f,filelength,updownststatus));
}
}发布于 2016-05-16 19:07:35
这是亚马逊S3的设计。如果是多部分上传,您可以暂停并继续上传。见S3 多部分上传概述。假设你用TransferUtility上传了一个100 you文件。该文件将被分成20部分,每个5mb,并行上传。当3部分完成,3部分正在处理时,您暂停上传。你以后再继续。TransferUtility将继续从5mb *3=15 5mb上传,它有17个部分要传输。这是因为每个部分都已全部上传,否则将被丢弃。
发布于 2018-11-23 14:37:40
对不起,如果我试图偏离主题,所以我的答案基本上是文件下载。
所以我试着从亚马逊S3下载一个资源。我用转移观察者来知道转移的状态。我能够暂停下载并监视它的状态。但是,即使在尝试使用transferUtility.resume(transferId)之后,我也无法恢复下载。但是后来我尝试了transferObserver.refresh(),并且能够恢复文件的下载。
https://stackoverflow.com/questions/37260137
复制相似问题