将图像从Android上载到AWS

问题描述 投票:0回答:1

如何将图像/文件从Android上传到AWS S3。我已经有URL由后端开发人员提供。他说我可以在此URL上使用“ PUT”请求,然后图像将被上传。

我从Postman尝试过,在那儿工作正常。但我需要知道,如何从Android将图像上传到该URL,因为没有参数或URL所需的任何内容。

我如何直接从android将图像/文件上传到此URL。

URL(需要上传的位置:]https://jpp-internal-test.s3.amazonaws.com/temp/43a40cb4d2c82a5ea4ae286b16ae3872bac.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAXZKKX3KKZCY7KOYZ%2F20190523%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190523T071047Z&X-Amz-Expires=600&X-Amz-Signature=2faec030f08b9061d0ccd22ea5828f6c88d08eb2c388bd4a188eb512ee92e1b1&X-Amz-SignedHeaders=host%3Bx-amz-acl&x-amz-acl=public-read

android amazon-web-services file-upload image-uploading
1个回答
0
投票

您还可以使用AWS Amplify框架。与存储相关的文档在这里:https://aws-amplify.github.io/docs/android/storage,它将引导您完成S3存储桶的配置和安装Amplify。我建议即使您自己拥有存储桶,也要仔细阅读该文档。如果要使用现有的S3存储桶,则将如何将其添加到amplifyconfiguration.json以配置Amplify Storage插件将更加清楚。

Java代码将如下所示:

Amplify.Storage.uploadFile(
            "myUploadedFileName.txt",
            sampleFile.getAbsolutePath(),
            new ResultListener<StorageUploadFileResult>() {
                @Override
                public void onResult(StorageUploadFileResult result) {
                   Log.i("StorageQuickStart", "Successfully uploaded: " + result.getKey());
                }

                @Override
                public void onError(Throwable error) {
                    Log.e("StorageQuickstart", "Upload error.", error);
                }
            }
    );
© www.soinside.com 2019 - 2024. All rights reserved.