2017-09-05 7 views
0

Amazon S3にアップロードしたいImageFilesのArrayListがあります。彼らのドキュメントは、このコードを提供します:Amazon s3複数のファイルをアップロードするandroid

credentials = new BasicAWSCredentials(key, secret); 
s3 = new AmazonS3Client(credentials);    
transferUtility = new TransferUtility(s3, getContext()); 
observer.setTransferListener(new TransferListener() { 
@Override 
public void onStateChanged(int id, TransferState state) { 

} 

@Override 
public void onProgressChanged(int id, long bytesCurrent, long bytesTotal) { 
} 
@Override 
public void onError(int id, Exception ex) { 

               } 
              }); 
observer = transferUtility.upload(
"buket name", 
upload_file.getNew_name(), 
new File(upload_file.getFile_path())); 

しかし、このコードは1つのファイルだけをとります。一度に複数のファイルをアップロードするにはどうすればよいですか?そして、もし彼らがこれを許可しないと、ユーザーはより多くのリクエストをすることができます。

答えて

0

TransferUtilityクラス、

http://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/s3transferutility.html

https://aws.amazon.com/blogs/mobile/aws-sdk-for-android-transfer-manager-to-transfer-utility-migration-guide/

は歴史のために、以下の答えを保ち、以下のクラスが推奨されていません。

あなたはそれが複数のファイルのアップロードのためのオプションを持っている

http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/transfer/TransferManager.html

、TransferManagerクラスを検討する必要があります。

+0

TransferManagerは推奨されていません。問題は – iMyth

+0

です。このマニュアルでも推奨されている例です。 http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/examples-s3-transfermanager.html。ドキュメントのどこにも非難されています。 – Kannaiyan

+0

下を見下ろして、彼らの文書はすべて正常に機能していないコード、または古いコードを削除しないでください。 – iMyth

0

アップロードコードをメソッドに移動し、ファイルパスを渡すことができます。 その後、そのメソッドをファイルパスリストにループすることができます。少なくとも私はそれをどのようにしたのですか。さらなる助けが必要な場合はお知らせください。

関連する問題