1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

UnityからS3にファイルをアップロードするメモ

Last updated at Posted at 2022-12-20

UnityからS3にファイルをアップロードするメモ

UnityでAWSにスクリプトからファイルアップロードする部分で詰まったので備忘録も兼ねえて投稿します。

1.アクセスキーとシークレットキーの取得。

こちらの記事を参考にアクセスキーとシークレットキー取得。
シークレットキーは閉じてしまうと入手することが出来ないため気を付けてください。

2.AWS SDK for .NETをダウンロード

こちらのサイトからaws-sdk-netstandard2.0.zipをダウンロードし、展開後Assets/Pluginsの中に必要なファイルをコピーします。
今回はS3を使用するため、AWSSDK.Core.dllとAWSSDK.S3.dllをコピーしました。

3.依存関係のdllをダウンロードする。

こちらの記事の依存しているDLLもコピー(依存関係の解決)タブを参考にNuGetのパッケージ提供ページからPluginsにdllをインストールします。

4.C#スクリプトの作成

C#スクリプトをいかに示します。

using System.Collections;
using UnityEngine;
using Amazon.S3;
using Amazon.S3.Model;
using Amazon;

public class AWS_Update : MonoBehaviour
{

    public void Update_text()
    {
        AmazonS3Client s3Client = new AmazonS3Client("AccessKey", "SecretKey", RegionEndpoint.APNortheast1);

        s3Client.PutObjectAsync(new PutObjectRequest
        {
            BucketName = "BucketName",
            Key = "Filename",
            FilePath = "Filepath"
        }).Wait();
    }
}

このスクリプトではPutObjectAsync メソッドの同期版を使用していますが、非同期で行うこともできます。
その場合は以下のようになります。

await s3Client.PutObjectAsync(new PutObjectRequest
{
    BucketName = "my-bucket",
    Key = "file.txt",
    FilePath = "C:\\path\\to\\file.txt"
});

5.終了

以上でS3にファイルアップロードするスクリプトができたかと思います。
何か質問があればお気軽にどうぞ。
Unityのバージョンは2022.3.12を使用しています。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?