AWS Mobile HubとUnity

  • 0
    いいね
  • 0
    コメント

    AWS Mobile HubとUnity

    はじめに

    最近、サーバーレスとかmbass(mobile backend as a Service)とか流行っていますが、その流行りの数多い製品の中で、AWSのmbassである 「AWS Mobile Hub」を使用してUnityとつなげてみようかと思います。

    (このページでの)目的

    本記事では、AWS Mobile Hubの「認証」(AWS Cognito)
    及びビジネスロジック(API Gateway + Lambda)でサーバーレス環境を構築し、
    Unityからアクセスできるようにするのが目的となります。
    ※AndroidやiOSの場合は、MobileHubで設定するだけで、SDKが自動で生成されますが、
    Unityはまだサポートしてないようです。そのため、繋ぐ方法をご紹介しようかと思います。

    前提知識

    本記事ではAWS Mobile HubとUnityを繋ぐ方法を共有するのが目的であり、
    AWS CognitoやLambdaなどの補足説明は省略します。

    ※Cognito、Lambdaについては以下のURLを参照してください。

    やりたいこと

    • UnityのクライアントアプリからFacebook→Cognito認証を行い、ログインする。
    • ログイン後、APIを投げてLamdaからの適切なレスポンスをもらう。 enterprise-mobile-hub_inventory-management-app.png

    ※上記の画像はAWS公式サイトから持ってきました。

    手順

    1)AWS側

    1. AWS Mobile Hubにてプロジェクト作成
    • 「AWS Mobile Hub」ページへ移動し、「Create a new project」ボタンを押してプロジェクトを新しく生成します。
      스크린샷 2017-07-06 22.26.27.png

    • プロジェクトが生成されると以下のようなページが表示されと思います。
       その中で今回は、「User Sign-in」(Cognito)と「CloudLogic」(API Gateway + Lambda)だけを作成するようにします。
      스크린샷 2017-07-06 22.27.07.png

    2. Cognito作成
    • 「User Sign-in」をクリックすると以下のようなページが表示されます。  今回はFacebookと連動しますので、「Facebook Login」を選択し、「Facebook APP ID」を入力します。 스크린샷 2017-07-06 22.27.55.png ※事前にFacebook APP IDは作成して置いてください。
    3. CloudLogic作成
    • 「Cloud Logic」をクリックすると以下のようなページが表示されると思います。
      「Create new API」をクリックし、新しいAPIを生成します。
      스크린샷 2017-07-06 22.29.05.png

    • 「API Name」と「Path」設定
      스크린샷 2017-07-06 23.08.16.png

    これでAWS側は設定完了です。次はUnity側で繋ぐ準備を行います。

    2) Unity側

    1. Unityのテストプロジェクトを生成する。
    2. Facebook SDKダウンロード&インポート

    ダウンロードページ
    https://developers.facebook.com/docs/unity/

    上記でダウンロードしたものを自分のUnityプロジェクトへインポートする。

    3. AWS Mobile SDK for Unity ダウンロード&インポート

    ダウンロードページ
    http://docs.aws.amazon.com/mobile/sdkforunity/developerguide/what-is-unity-plugin.html

    AWSSDK.IdentityManagement.X.X.X.X.unitypackage ファイルをUnityプロジェクトへインポート

    4. 以下のcsファイルをディレクトリごと、Unityプロジェクトへインポートhttps://github.com/guywald/serverless-auth-msg-board-unity3d-client/tree/master/Assets/AWSSigners

    ここまでできたら、AWS側に繋ぐための準備はOKです。
    繋ぐためのロジックの実装は次回説明します。