Android

Android JavaでS3への画像アップロード

投稿日:2017年4月20日 更新日:

はじめに

こんにちは、初Androidの記事になります!

iOSの初記事と同じく、AWSのS3へ画像をアップロードする方法について、ブログを書きたいと思います(笑)。

今回も簡単にIAMユーザを作成し、ACCESS KEYとSECRET ACCESS KEYを利用した方法で紹介したいと思います。

アプリをリリースする場合は、AWS Cognitoを利用するか、IAMユーザの場合はアクセス権限を十分に絞ってください。

また、iOSのSwiftでS3への画像アップロードの記事も合わせてお読みいただければと思います。

AWS上での事前準備

AWS上での準備については、省略しますが下記の2つを準備してください。

  • S3にバケットを作成
  • IAMユーザの作成(上記のバケットへの「s3:PutObject」権限あり)

Android StudioのGradleでAWS SDKをインストール

app/build.gradleに下記を記載して、インストールします。

ManifestにPermissionの追加

AndroidManifest.xmlにインターネット接続のPermissionを追加します。

カメラで写真を撮影し、保存先のPathを取得

Intentを使い、標準のカメラアプリで写真を撮影します。カメラ撮影された写真のUriはmImageUriに保存され、後ほど説明するS3へのアップロードにも利用されます。

S3へアップロード

カメラ撮影された写真のUriを引数に渡して、S3へアップロードします。

accessKeyとsecretKeyにはAWSで作成したIAMユーザのものを設定してください。

contentTypeには「image/jpeg」、リージョンには「AP_NORTHEAST_1」を指定してください。

あとは、PutObjectRequestクラスのコンストラクタの引数である、bucketNameにはAWS上で作成したバケット名を、keyにはS3上で重複しないようなファイル名を指定してください。

なお、ファイル名はtest/hello.jpgとするとAWSコンソールなどから見た際にtestフォルダ内にhello.jpgファイルが保存されているように見えるので、ファイルをまとめて管理したい場合には、「test/」などのプレフィックスをつけるとよいでしょう。

 

さいごに

iOSのSwiftでS3への画像アップロードの記事の文書構成となるべく合わせるようにブログを書きました。iOS / AndroidのスマートフォンアプリでAWS S3へファイルアップロードする場合は、ご参考にしていただければと思います。

page_footer_300rect




page_footer_300rect




-Android
-,

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

【Kotlin】FirebaseAuthenticationでGoogle・Facebook連携する

1 はじめに2 Firebaseプロジェクトの設定3 build.gradleに追記4 Googleログイン5 Facebookログイン6 さいごに7 参考8 おすすめ書籍 はじめに はじめまして。m ...

[Android] パーミッション管理を簡単・簡潔に書けそうなPermissionsDispatcher

1 はじめに2 環境3 導入4 Activityでの実装例5 @RuntimePermissions(必須)6 PermissionsDispatcherに処理を移譲する7 @NeedsPermiss ...

GCM 2.0からFCMに移行する(AWS SNS対応版)

1 はじめに2 FCM移行で大事なポイント3 Firebaseプロジェクトへの引き継ぎ3.1 Firebaseの初期設定4 依存ライブラリの変更4.1 “com.google.androi ...

Kotlin MPAndroidChartライブラリを使いボリンジャーバンドを描画してみる。

1 はじめに2 ボリンジャーバンドとは2.1 ライブラリの導入2.2 描画の準備3 ボリンジャーバンドを描画する3.1 CombinedChartの設定3.2 CombinedChart用のデータ作成 ...

Android Studioでエラーログを詳細表示する

1 はじめに2 初期設定でのビルドエラーメッセージ3 詳細なビルドエラーメッセージを出力4 おまけ5 さいごに6 おすすめ書籍 はじめに こんにちは。Android開発を久しぶりにやっているのですが、 ...

フォロー

follow us in feedly

page_side_300rect

2017年4月
« 3月 5月 »
 1
2345678
9101112131415
16171819202122
23242526272829
30 

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。