Home / Articles

【PlayFab】關於 ID 的生成與登入【Unity】的文章圖片

【PlayFab】關於 ID 的生成與登入【Unity】

發布日: 2020/05/25 更新日: 2020/05/29

本文使用的版本

  • PlayFab SDK: 2.86.2005 18

前言

PlayFab 有許多功能,但要使用它們,第一步就是登入。

有「匿名登入」與「可恢復的登入」

PlayFab 的登入方式大致可以分成兩種。

匿名登入

這是最簡單的登入方式。

因為使用者不需要輸入任何資訊,所以遊戲可以自動完成登入處理。

因此就不會發生 「登入太麻煩了,還是算了」 這種事。(很重要)

不過,如果玩家遺失裝置,帳號就很難恢復。

進行匿名登入的函式

匿名登入的實作範例


using UnityEngine;
using PlayFab;
using PlayFab.ClientModels;

// LoginWithCustomIDを使った実装例
public void Login (string id) {
	bool shouldCreateAccount = string.IsNullOrEmpty(id);

	PlayFabClientAPI.LoginWithCustomID(
		new LoginWithCustomIDRequest {
			CustomId = shouldCreateAccount ? CreateNewId() : id,
			CreateAccount = shouldCreateAccount
		},
		result => {
			// 成功時の処理
			Debug.Log("Login successfully");
		},
		error => {
			// 失敗時の処理
			Debug.LogError(error.GenerateErrorReport());
		}
	);
}

// 一意のIdを生成する
string CreateNewId () {
	return System.Guid.NewGuid().ToString();
}

可恢復的登入

這是一種在裝置發生問題等情況時,仍能恢復帳號的登入方式。

但這種方式需要玩家輸入像下面這些資訊。

  • 透過外部提供者(Facebook、iOS、Google 等)進行驗證
  • 輸入使用者名稱或電子郵件地址,以及密碼

因此,如果在安裝遊戲後立刻要求玩家採用這種登入方式,就很可能發生 「登入太麻煩了,還是算了」。使用時要特別注意。

另外,如果和匿名登入搭配使用,就可以做到「一開始先以匿名登入開始,之後再引導玩家追加可恢復的登入方式」。(參考:帳號連結快速入門

進行可恢復登入的函式

以下這些方法則可以透過第三方服務登入。

結語

關於 PlayFab,我目前仍處於導入專案、邊做邊學的階段。

如果有任何錯誤,也歡迎告訴我。

參考資料

分享

Twitter