gpt4 book ai didi

android - 将图像从 Android 上传到 Amazon S3?

转载 作者:可可西里 更新时间:2023-11-01 19:04:41 24 4
gpt4 key购买 nike

我需要将位图上传到 Amazon S3。我从未使用过 S3,而且文档证明没有多大帮助,因为我看不到任何内容来满足这一特定要求。不幸的是,我很难在这个项目上抽出时间来花一整天的时间来学习它是如何联系在一起的,所以希望你们中的好心人能给我一些指示。

你能给我指出一个引用来源,解释如何将文件推送到 S3,并获得 URL 引用作为返回吗?

更具体地说:- 使用 S3 Android SDK 时凭据在哪里?- 我是否需要在上传文件之前创建一个存储桶,或者它们可以存在于存储桶之外吗?- 我使用哪种 SDK 方法将位图推送到 S3?- 我是否认为我需要 CORE 和 S3 库来做我需要的,而不是其他的?

最佳答案

String      ACCESS_KEY="****************",
SECRET_KEY="****************",
MY_BUCKET="bucket_name",
OBJECT_KEY="unique_id";
AWSCredentials credentials = new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY);
AmazonS3 s3 = new AmazonS3Client(credentials);
java.security.Security.setProperty("networkaddress.cache.ttl" , "60");
s3.setRegion(Region.getRegion(Regions.AP_SOUTHEAST_1));
s3.setEndpoint("https://s3-ap-southeast-1.amazonaws.com/");
List<Bucket> buckets=s3.listBuckets();
for(Bucket bucket:buckets){
Log.e("Bucket ","Name "+bucket.getName()+" Owner "+bucket.getOwner()+ " Date " + bucket.getCreationDate());
}
Log.e("Size ", "" + s3.listBuckets().size());
TransferUtility transferUtility = new TransferUtility(s3, getApplicationContext());
UPLOADING_IMAGE=new File(Environment.getExternalStorageDirectory().getPath()+"/Screenshot.png");
TransferObserver observer = transferUtility.upload(MY_BUCKET,OBJECT_KEY,UPLOADING_IMAGE);
observer.setTransferListener(new TransferListener() {
@Override
public void onStateChanged(int id, TransferState state) {
// do something
progress.hide();
path.setText("ID "+id+"\nState "+state.name()+"\nImage ID "+OBJECT_KEY);

}

@Override
public void onProgressChanged(int id, long bytesCurrent, long bytesTotal) {
int percentage = (int) (bytesCurrent / bytesTotal * 100);
progress.setProgress(percentage);
//Display percentage transfered to user
}

@Override
public void onError(int id, Exception ex) {
// do something
Log.e("Error ",""+ex );
}

});

关于android - 将图像从 Android 上传到 Amazon S3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7310112/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com