我想使用android studio从亚马逊s3桶中删除一个文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想使用android studio从亚马逊s3桶中删除一个文件相关的知识,希望对你有一定的参考价值。

我试图使用android studio从s3桶中删除文件。我按照下面的教程设置了我的桶。 https://grokonez.com/android/uploaddownload-files-images-amazon-s3-android。上传和下载工作正常。但是当我尝试删除文件时,我的应用程序崩溃了。

这是我正在使用的代码

BasicAWSCredentials credentials = new BasicAWSCredentials(KEY, SECRET);
AmazonS3Client s3Client = new AmazonS3Client(credentials);
s3Client.deleteObject(bucketName, folderPath);
答案

您的folderPath变量可能不包含指定存储桶中对象的有效密钥。

另一答案

您正在遭遇此崩溃,因为Android不允许您从主线程进行网络调用。您需要从后台线程包装此调用。

new Thread(new Runnable() {
   public void run() 
           BasicAWSCredentials credentials = new BasicAWSCredentials(KEY, SECRET);
           AmazonS3Client s3Client = new AmazonS3Client(credentials);
           s3Client.deleteObject(bucketName, folderPath);
   }
}).start();
另一答案

你应该在后台线程中调用delete object方法。

new Thread(new Runnable() { @Override public void run() { s3client.deleteObject(new DeleteObjectRequest(AWS_BUCKET, "Path")); } }).start();

以上是关于我想使用android studio从亚马逊s3桶中删除一个文件的主要内容,如果未能解决你的问题,请参考以下文章

不使用亚马逊 S3 存储桶创建亚马逊云端分发

如何从亚马逊 s3 存储桶中删除文件?

如何从存储桶根重定向到 AWS S3 中的子目录?

将数据从 gs 存储桶移动到 s3 亚马逊存储桶的 GCP dataproc 集群 hadoop 作业失败 [控制台]

如何在不使用 SDK 的情况下将文件从 Android 上传到 Amazon S3

如何使用通配符搜索 Amazon S3 存储桶?