Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 调用AWS TransferOnError和onStateChanged_Android_Amazon Web Services - Fatal编程技术网

Android 调用AWS TransferOnError和onStateChanged

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

以下是从我的android应用程序中截取的代码

onError也被调用onStateChanged在一段时间后被调用

我得到的错误是

请求的范围不可满足(服务:Amazon S3;状态代码:416

如果有人经历过这种行为,请提供一些见解

 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是什么?