Example #1
0
        private void _Connection(object callback)
        {
            GameObject   gameObj  = GameObject.Find("NCMBSettings");
            NCMBSettings settings = gameObj.GetComponent <NCMBSettings> ();

            settings.Connection(this, callback);
        }
    // 初期化
    public static void Initialize(string filePath = null)
    {
        if (GameObject.Find("NCMBManager") == null)
        {
            GameObject manager = new GameObject();
            manager.name = "NCMBManager";
            manager.AddComponent <NCMBManager> ();
        }

        if (GameObject.Find("NCMBSettings") == null)
        {
            GameObject settings = new GameObject();
            settings.name = "NCMBSettings";
            settings.AddComponent <NCMBSettings> ();
        }

        NCMBSettings.Initialize(
            APP_KEY,
            CLIENT_KEY,
            DOMAIN_URL,
            API_VERSION
            );
        CallbackFlag = false;

        if (GameObject.Find("settings") == null)
        {
            GameObject    o     = new GameObject("settings");
            System.Object obj   = o.AddComponent <NCMBSettings> ();
            FieldInfo     field = obj.GetType().GetField("filePath", BindingFlags.Static | BindingFlags.NonPublic);
            field.SetValue(obj, Application.persistentDataPath);
        }

        NCMBUser.LogOutAsync();
        MockServer.startMock(filePath);
    }
Example #3
0
    public IEnumerator FileResponseSignatureTest()
    {
        NCMBSettings.EnableResponseValidation(true);

        byte[]   data = System.Text.Encoding.UTF8.GetBytes("hello");
        NCMBFile file = new NCMBFile("test.txt", data);

        file.SaveAsync((NCMBException error) => {
            Assert.Null(error);
            NCMBTestSettings.CallbackFlag = true;
        });
        yield return(NCMBTestSettings.AwaitAsync());

        NCMBTestSettings.CallbackFlag = false;

        NCMBFile getFile = new NCMBFile("test.txt");

        getFile.FetchAsync((byte[] fileData, NCMBException error) => {
            Assert.Null(error);
            NCMBTestSettings.CallbackFlag = true;
        });


        yield return(NCMBTestSettings.AwaitAsync());

        Assert.NotNull(file.CreateDate);
        Assert.True(NCMBTestSettings.CallbackFlag);
    }
Example #4
0
 public void Init()
 {
     NCMBSettings.Initialize(
         _appKey,
         _clientKey
         );
     _callbackFlag = false;
 }
Example #5
0
 public void Init()
 {
     //set sample API Key (from document)
     NCMBSettings.Initialize(
         _appKey,
         _clientKey
         );
     _callbackFlag = false;
 }
Example #6
0
    // 初期化
    public static void Initialize()
    {
        NCMBSettings.Initialize(
            APP_KEY,
            CLIENT_KEY
            );
        CallbackFlag = false;

        GameObject o = new GameObject("settings");

        System.Object obj   = o.AddComponent <NCMBSettings> ();
        FieldInfo     field = obj.GetType().GetField("filePath", BindingFlags.Static | BindingFlags.NonPublic);

        field.SetValue(obj, Application.persistentDataPath);

        NCMBUser.LogOutAsync();
    }
Example #7
0
        /// <summary>
        /// 疎通テストのプロセス
        /// </summary>
        /// <param name="i_callback">完了コールバック</param>
        /// <returns></returns>
        private IEnumerator CommunicateTestProcess(Action i_callback)
        {
            this.IsRunning = true;

            UnityEngine.Object settingprefab = Resources.Load(PATH_NCMBSETTING_PREFAB);
            GameObject         settingObject = GameObject.Instantiate <GameObject>(settingprefab as GameObject);
            NCMBSettings       settings      = settingObject != null?settingObject.GetComponent <NCMBSettings>() : null;

            if (settings == null)
            {
                yield break;
            }

            // マルチシーンで意図しないシーンにインスタンス化しないように親子付け
            settingObject.transform.SetParent(this.transform);

            // アプリケーションキー、クライアントキー設定確認(空かどうかだけ)
            if (string.IsNullOrEmpty(settings.applicationKey) || string.IsNullOrEmpty(settings.clientKey))
            {
                EditorUtility.DisplayDialog("Error", "NCMBSettingsの設定不備があります。\n講師へ申し出をして下さい。", "OK");
                yield break;
            }

            // 疎通用送信データとしてローカルIPアドレスを取得
            string ipAddress = GetIpAddress();

            if (ipAddress == string.Empty)
            {
                EditorUtility.DisplayDialog("Error", "ローカルIPアドレスの取得に失敗しました。\nネットワークに未接続の可能性があります。", "OK");
                yield break;
            }

            bool isFinshed = false;
            NCMBQuery <NCMBObject> query = new NCMBQuery <NCMBObject>("CommunicateTest");

            query.WhereEqualTo("IP", ipAddress);
            query.FindAsync((List <NCMBObject> i_objectList, NCMBException i_exception) =>
            {
                if (i_exception != null)
                {
                    EditorUtility.DisplayDialog("Error", string.Format("NCMB接続時にエラーが発生しました。\n講師へ申し出をして下さい。\n(エラーメッセージ:{0})", i_exception.Message), "OK");
                    return;
                }

                if (i_objectList.Count > 0)
                {
                    i_objectList[0]["IP"] = ipAddress;
                    i_objectList[0].Save();
                }
                else
                {
                    NCMBObject newObject = new NCMBObject("CommunicateTest");
                    newObject["IP"]      = ipAddress;
                    newObject.Save();
                }

                EditorUtility.DisplayDialog("完了", "疎通テストが正常に完了しました。", "OK");

                isFinshed = true;
            });

            while (isFinshed == false)
            {
                yield return(null);
            }

            if (i_callback != null)
            {
                i_callback();
            }

            this.IsRunning = false;
        }