サーバーにセーブする
スマホでは無くサーバーにデータをセーブする事で
機種変更などを行ってもデータを引き継ぐことができるようになります
以下のスクリプトを適当な所に入れます
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using NCMB; // mBaaSを使うのに必要
public class CloudSave : MonoBehaviour
{
public class SaveData
{
public string name;
public int[] no = new
int[5];
}
public static SaveData[] save = new
SaveData[3];
string UserName = "Id";
string PassWord = "Pass";
void Start()
{
// セーブデータを初期化する
for (int i = 0; i
< save.Length; i++)
{
// クラスを初期化する
save[i] = new SaveData();
}
}
// 新規登録
public void Signin()
{
//NCMBUserのインスタンス作成
NCMBUser user = new
NCMBUser();
//ユーザ名とパスワードの設定 ※ユーザー名は重複できません
user.UserName =
UserName;
user.Password =
PassWord;
//会員登録を行う
user.SignUpAsync((NCMBException e) => {
if (e != null)
{
UnityEngine.Debug.Log("新規登録に失敗: " + e.ErrorMessage);
}
else
{
UnityEngine.Debug.Log("新規登録に成功");
// 登録したデータでログインする
Login();
}
});
}
// ログイン
public void Login()
{
//NCMBUserのインスタンス作成
NCMBUser user = new
NCMBUser();
// ユーザー名とパスワードでログイン
NCMBUser.LogInAsync(UserName, PassWord, (NCMBException e) =>
{
if (e != null)
{
UnityEngine.Debug.Log("ログインに失敗: " + e.ErrorMessage);
}
else
{
UnityEngine.Debug.Log("ログインに成功!");
// IDの取得
Debug.Log(NCMBUser.CurrentUser.ObjectId);
}
});
}
// ログアウト
public void Logout()
{
NCMBUser.LogOutAsync((NCMBException e) => {
if (e != null)
{
UnityEngine.Debug.Log("ログアウトに失敗: " + e.ErrorMessage);
}
else
{
UnityEngine.Debug.Log("ログアウトに成功");
}
});
}
// セーブ
public void Save()
{
for (int i = 0; i
< save.Length; i++)
{
// データをjson化
string MyJson = JsonUtility.ToJson(save[i]);
// データを保存
NCMBUser.CurrentUser["Save" + i] = MyJson;
// 操作結果を保存
NCMBUser.CurrentUser.SaveAsync();
}
}
// ロード
public void Load()
{
for (int i = 0; i
< save.Length; i++)
{
// データが存在するなら読み込む
if (NCMBUser.CurrentUser.ContainsKey("Save" + i))
{
// データを読み込み
string JsonData = "" + NCMBUser.CurrentUser["Save" + i];
// jsonをデータ化
save[i] = JsonUtility.FromJson<SaveData>(JsonData);
Debug.Log(save[i].name);
}
}
}
void Update()
{
// ログイン状態の取得
if
(NCMBUser.CurrentUser != null)
{
// ログイン中のユーザーの取得に成功
UnityEngine.Debug.Log("ログイン中");
}
else
{
// 未ログインまたは取得に失敗
UnityEngine.Debug.Log("未ログインまたは取得に失敗");
}
}
}
Signin();を実行することで新規アカウントが追加されます
Login();を実行することで既出アカウントにログインします
Logout();を実行する事でサーバからログアウトします
Save();を実行することでmBssSのサーバにデータが保存されます
Lode();を実行することでmBssSのサーバのデータを読み込みます
アカウントIDを取得する
NCMBUser.CurrentUser.ObjectId
アカウントを削除する
NCMBUser.CurrentUser.DeleteAsync();
認証有効時間を設定する
認証有効時間はmBaaSのサイトから アプリ設定→会員認証設定→認証有効時間 で変更できます

認証有効時間が設定されている場合 その時間が過ぎるまでは アプリを切ってもログ
イン状態が続きます
(最高168時間)
サーバーをTwitter連携する
戻る