そういうのがいいブログ

アプリ個人開発 まるブログ

アプリ開発覚え書き

【Unity】PlayFab テスト通信

はじめに

UnityでのPlayFab使用におけるUnity側での初期設定方法です。

前回までの記事でPlayFabを使う準備ができたら
試しにPlayFabと通信してログインができるか試してみます。

前回の記事1 marumaro7.hatenablog.com

前回の記事2 marumaro7.hatenablog.com

オブジェクト作成

スクリプトを入れるオブジェクトを作ります。
「空のゲームオブジェクト」を作成し、「PlayFabLogin」と名前をつけておきます。

UdemyTestScene_-_UdemyKakinTest_-_iOS_-_Unity_2020_3_18f1_Personal__Personal___Metal_.png

スクリプト作成

Assets直下にScripsフォルダを作成
→作成したフォルダ内でスクリプトを新規作成
スクリプトの名前を「PlayFabLogin」としてスクリプトを作成します。
(名前はなんでも良いのですが、テスト用のコードと同じにしておきます。)

PlayFabTest_-_PushTest_-_PC__Mac___Linux_Standalone_-_Unity_2020_3_2f1_Personal__Personal___Metal_.png

コードは、PlayFabの公式ページにテスト用のコードがあるので、
こちらを少しわかりやすくしたものを使用します。
元コードはリンク先の「最初の API 呼び出しを実行する」の部分です。

docs.microsoft.com

ちなみに「API」とは、「Application Programming Interface」の頭文字です。
ひらたくいうと、PlayFabで用意している便利関数のことです。
PlayFabのAPIを呼び出して処理をしていきます。

下記のコードを、作成したスクリプトに貼り付けます。

using PlayFab;//追加
using PlayFab.ClientModels;//追加
using UnityEngine;

public class PlayFabLogin : MonoBehaviour
{
    public void Start()
    {
        //リクエスト生成
        var request = new LoginWithCustomIDRequest { CustomId = "GettingStartedGuide", CreateAccount = true };

        //ログイン処理実行
        PlayFabClientAPI.LoginWithCustomID(request, OnLoginSuccess, OnLoginFailure);
    }

    //ログイン成功時に呼び出される関数
    private void OnLoginSuccess(LoginResult result)
    {
        Debug.Log("ログイン成功!!");
    }

    //ログイン失敗時に呼び出される関数
    private void OnLoginFailure(PlayFabError error)
    {        
        Debug.LogError("ログインに失敗しました。");
        Debug.LogError(error.GenerateErrorReport());//エラー内容
    }
}

   

オブジェクトへ割り当て

ひとまず、コード内容はおいておいて、スクリプトをセーブし、
「PlayFabManager」に割り当てて、実行してみます。


実行後、無事ログインが成功しました! PlayFabTest_-_PushTest_-_PC__Mac___Linux_Standalone_-_Unity_2020_3_2f1_Personal__Personal___Metal_.png

   

ここでPlayFab側のダッシュボードを見てみると、ユーザーの数が増えていることがわかります。
(変化がない場合は2分程度待ってください。)
※「金額」と書いてありますが、「数」の間違い(原文は「amount」)なので
  ユーザー数と思ってください。

ダッシュボード_·_PlayFab.png


ユーザーIDは
プレイヤー>検索
で確認することができます。

プレイヤー_·_PlayFab.png

ちなみに「前回のログイン」に表示される日時は
協定世界時 (UTC)となっているので、
表示されるのは日本時間から9時間引いたものとなります。

 

これでPlayFabと通信ができました!

次回

実運用上このままのコードでは問題があるので、
次回は問題点を考慮したログイン機能を実装していきます。

marumaro7.hatenablog.com