Android 调用AWS TransferOnError和onStateChanged
以下是从我的android应用程序中截取的代码 onError也被调用onStateChanged在一段时间后被调用 我得到的错误是 请求的范围不可满足(服务:Amazon S3;状态代码:416 如果有人经历过这种行为,请提供一些见解Android 调用AWS TransferOnError和onStateChanged,android,amazon-web-services,Android,Amazon Web Services,以下是从我的android应用程序中截取的代码 onError也被调用onStateChanged在一段时间后被调用 我得到的错误是 请求的范围不可满足(服务:Amazon S3;状态代码:416 如果有人经历过这种行为,请提供一些见解 observer.setTransferListener(new TransferListener() { @Override public void onStateChanged
observer.setTransferListener(new TransferListener() {
@Override
public void onStateChanged(int i, TransferState transferState) {
Log.d("AWS download state", transferState.toString());
if (transferState == TransferState.COMPLETED) {
downloadCallBack.OnDownloadCompleteSuccess(filename);
}
}
@Override
public void onProgressChanged(int i, long l, long l1) {
Log.d("progress Change", "Dummy logging");
}
@Override
public void onError(int i, Exception e) {
Log.e("aws error", e.toString());
try {
Toast.makeText(gCtx, "Error! Please try again.", Toast.LENGTH_SHORT).show();
}catch (Exception e1){
Log.e("error",e1.getLocalizedMessage().toString());
}
}
});
当上载/下载任务期间发生错误时,SDK会使用适当的异常对象调用onError回调。此外,还会使用TransferState.FAILED调用onStateChanged。因此,您会得到两个回调。是在暂停时清理传输侦听器,还是在暂停时清理anywhere@PraveenRawat什么是相关性在这种情况下,这个问题的答案是什么?由于缓存问题,我已经实现了,但它仍在工作。@PraveenRawat我的问题是,如果调用onError,为什么调用onStateChanged?@SreekanthKarumanaghat调用onStateChanged时,transferState是什么?