dimanche 11 janvier 2015

Error when try to Upload/Download File Using Amazon Mobile SDK for Android

I try to Upload/Download file using Amazon Mobile SDK Android. I created my bucket, in the permissions I set that everyone can write and read. In amazon Cognito I just left everything as default.


I get this error when try upload any file...



Process: com.example.jghg.awsamazon, PID: 2815
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:300)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
Caused by: com.amazonaws.services.s3.model.AmazonS3Exception: Forbidden (Service: Amazon S3; Status Code: 403; Error Code: null; Request ID: BC4D4A7771B45D79), S3 Extended Request ID: 45vc24DJDdMjNK11V+dYx103RwFxYPJO9AU4MYa4q3dzfH6R2Vh5iVuViBWv8TDZ
at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(Unknown Source)
at com.amazonaws.http.AmazonHttpClient.executeHelper(Unknown Source)
at com.amazonaws.http.AmazonHttpClient.execute(Unknown Source)
at com.amazonaws.services.s3.AmazonS3Client.invoke(Unknown Source)
at com.amazonaws.services.s3.AmazonS3Client.getObjectMetadata(Unknown Source)
at com.amazonaws.mobileconnectors.s3.transfermanager.TransferManager.doDownload(Unknown Source)
at com.amazonaws.mobileconnectors.s3.transfermanager.TransferManager.download(Unknown Source)
at com.amazonaws.mobileconnectors.s3.transfermanager.TransferManager.download(Unknown Source)
at com.example.jghg.awsamazon.ConnecToAWS.doInBackground(ConnecToAWS.java:67)
at com.example.jghg.awsamazon.ConnecToAWS.doInBackground(ConnecToAWS.java:20)
at android.os.AsyncTask$2.call(AsyncTask.java:288)


This is my code.



@Override
protected Void doInBackground(Void... params) {

cognitoProvider = new CognitoCachingCredentialsProvider(
context,
"15743803132",
"us-east-1:9a873c64-a61b-4871-ab3c-57d77e3be02",
"arn:aws:iam::157438031324:role/Cognito_AndroidTestUnauth_DefaultRole",
"arn:aws:iam::157438031324:role/Cognito_AndroidTestAuth_DefaultRole",
Regions.US_EAST_1
);


CognitoSyncManager syncClient = new CognitoSyncManager(
context,
"us-east-1:6a873c64-a61b-4871-ab3c-57d77e3be024",
Regions.US_EAST_1,
cognitoProvider);

TransferManager transferManager = new TransferManager(cognitoProvider);

Log.e(LOG_TAG,"Data " + cognitoProvider.getIdentityId());


File file = new File(Environment.getExternalStorageDirectory()
+File.separator
+"myDirectory" //folder name
+File.separator
+"myFile");

Download download = transferManager.download(BUCKET_NAME, key, file);


return null;


I have a question what is the key?


Thanks Everyone.





Aucun commentaire:

Enregistrer un commentaire