我想使用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桶中删除一个文件的主要内容,如果未能解决你的问题,请参考以下文章
将数据从 gs 存储桶移动到 s3 亚马逊存储桶的 GCP dataproc 集群 hadoop 作业失败 [控制台]