Amplify

FlutterのAmplifyでS3にファイルをアップロードするとフォルダにPrefixがつく

FlutterのAmplifyでS3にファイルをアップロードするとフォルダにPrefixをつけられてしまう FlutterでAWS S3にファイルをアップロードするためにprachiFam/amazon_s3_cognitoというライブラリを利用していた。 しかしこのライブラリでは最新のFlutterでAndroid向けにビルドできない問題があり、AWSの公式ライブラリであるaws-amplify/amplify-flutterに乗り換えようとした。 amplifyコマンドでauthとstorageをimport。amplifyライブラリを組み込みセットアップを完了。アップロードは成功した。しかしサービスのサーバ側がファイルを認識しない。S3のbucketを開いてもファイルは無い…と思ったら実はpublic/アップロードで指定したkeyとしてファイルがアップロードされていた。 実はAmplifyライブラリを利用すると自動的にフォルダにprefixが付与され、アクセス権限ごとに別フォルダになるようになっていた。amplify-flutterが内部で利用するiOSやAndroidのライブラリでは設定でprefixを変更できるように修正済みのようだが、Flutterのライブラリは追随できていないようだ。 Feature Request: Support the use of custom storage paths · Issue #416 · aws-amplify/amplify-flutter回避する方法はなさそうなので、