我正在尝试将图像选择器中的照片上传到AWS S3。 这是我将照片保存到文件中的方法:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == RESULT_IMAGE && resultCode == RESULT_OK && null != data) {
imgUri = data.getData();
imgViewPicker.setImageURI(comntImgUri);
imgFile = new File(imgUri.getPath());
}
然后我将imgFile传递给此方法进行上传:
public void uploadCommentImg(final File imgFile, String fileName, final AWSUploadListener listener) {
TransferUtility transferUtility =
TransferUtility.builder()
.context(context)
.awsConfiguration(AWSMobileClient.getInstance().getConfiguration())
.s3Client(new AmazonS3Client(AWSMobileClient.getInstance()))
.build();
TransferObserver uploadObserver =
transferUtility.upload("myapp-dev-images/public", imgFile.getName(), imgFile);
}
但是我得到文件无效错误:
java.lang.IllegalArgumentException: Invalid file: /-1/1/content:/media/external/images/media/39/ORIGINAL/NONE/1034841947