Android прервал загрузку корзины Amazon S3

#android #amazon-s3

#Android #amazon-s3

Вопрос:

Кто-нибудь знает, как прервать загрузку файла для корзины Amazon S3. я использую следующий код для загрузки файла.

 transferManager = new TransferManager(amazonClient);
upload = transferManager.upload(BUCKET_NAME, FILE_NAME, file);
try {

upload.addProgressListener(listner);    
upload.waitForUploadResult();
AppLog.logString("Unable to upload file, upload was aborted");                         

} 
catch (AmazonClientException amazonClientException) {
        System.out.println("Unable to upload file, upload was aborted.");
        amazonClientException.printStackTrace();
} 
  

Ответ №1:

Примерно так я это делаю. Конечно, вам нужно будет адаптировать ее к вашему сценарию.

     PutObjectRequest request = new PutObjectRequest(bucket, key, file);

    request.setProgressListener(new ProgressListener() {
        public void progressChanged(ProgressEvent progressEvent) {
             if (aborted.get()) {
                throw new RuntimeException("Aborted");
            }
        }
    });

    try {
        PutObjectResult result = s3.putObject(request);
    } catch (AmazonClientException e) {
       // Handle exception 
    }
  

Установите aborted значение true, чтобы остановить загрузку. Вам нужно будет распознать ваше исключение в catch .

Комментарии:

1. Индикатор выполнения останавливается.. но файл загружается в фоновом режиме без отображения прогресса

2. У меня это работает. Как вы определяете, что файл все еще передается?

3. Загрузка происходила в фоновом режиме… Я могу достичь этого, внедрив низкоуровневый API ЗАГРУЗКИ<br/> docs.amazonwebservices.com/AmazonS3/latest/dev / …