2013-12-04 2 views
2

Я настраиваю программу Amazon S3 Uploader для моих нужд. После создания ведра я загружаю на него видео.AWS/Android Невозможно вычислить хеш md5

PutObjectRequest por = new PutObjectRequest(buckets.get(0).getName(), Constants.VIDEO_NAME, new java.io.File(filePath)); 

Когда я запускаю линию выше я вернусь исключение ниже:

Unable to calculate MD5 has: /storage/....../bla.mp4: open failed: EACCES (Permission Denied) 

Трассировка стека:

12-04 14:39:21.981 29372-29441/com.amazonaws.demo.s3uploader E/ERR﹕ com.amazonaws.AmazonClientException: Unable to calculate MD5 hash: /storage/emulated/0/DCIM/Camera/VID_20131203_180120.mp4: open failed: EACCES (Permission denied) 
      at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1139) 
      at com.amazonaws.demo.s3uploader.S3UploaderActivity$S3PutObjectTask.doInBackground(S3UploaderActivity.java:160) 
      at com.amazonaws.demo.s3uploader.S3UploaderActivity$S3PutObjectTask.doInBackground(S3UploaderActivity.java:120) 
      at android.os.AsyncTask$2.call(AsyncTask.java:288) 
      at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
      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:841) 
    Caused by: java.io.FileNotFoundException: /storage/emulated/0/DCIM/Camera/VID_20131203_180120.mp4: open failed: EACCES (Permission denied) 
      at libcore.io.IoBridge.open(IoBridge.java:409) 
      at java.io.FileInputStream.<init>(FileInputStream.java:78) 
      at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1135) 
            at com.amazonaws.demo.s3uploader.S3UploaderActivity$S3PutObjectTask.doInBackground(S3UploaderActivity.java:160) 
            at com.amazonaws.demo.s3uploader.S3UploaderActivity$S3PutObjectTask.doInBackground(S3UploaderActivity.java:120) 
            at android.os.AsyncTask$2.call(AsyncTask.java:288) 
            at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
            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:841) 
    Caused by: libcore.io.ErrnoException: open failed: EACCES (Permission denied) 
      at libcore.io.Posix.open(Native Method) 
      at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110) 
      at libcore.io.IoBridge.open(IoBridge.java:393) 
            at java.io.FileInputStream.<init>(FileInputStream.java:78) 
            at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1135) 
            at com.amazonaws.demo.s3uploader.S3UploaderActivity$S3PutObjectTask.doInBackground(S3UploaderActivity.java:160) 
            at com.amazonaws.demo.s3uploader.S3UploaderActivity$S3PutObjectTask.doInBackground(S3UploaderActivity.java:120) 
            at android.os.AsyncTask$2.call(AsyncTask.java:288) 
            at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
            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:841) 

OS = 4,4/KitKat, Device = Nexus 4

Что происходит?

+0

полный стек следы, устройство версия. – njzk2

+0

@ njzk2 отредактировал Q –

ответ

4

Не быть похожим на меня. Убедитесь, что файл существует до загрузки на S3.

Смежные вопросы