private static void _ncmbLogIn(string name, string password, string email, NCMBCallback callback) { string url = _getLogInUrl(); ConnectType type = ConnectType.GET; Dictionary <string, object> paramDic = new Dictionary <string, object>(); paramDic["password"] = password; //nameがあればLogInAsync経由 無ければLogInWithMailAddressAsync経由、どちらも無ければエラー if (name != null) { paramDic["userName"] = name; } else if (email != null) { paramDic["mailAddress"] = email; } else { throw new NCMBException(new ArgumentException("UserName or Email can not be null.")); } url = _makeParamUrl(url + "?", paramDic); //ログを確認(通信前) NCMBDebug.Log("【url】:" + url + Environment.NewLine + "【type】:" + type); //通信処理 NCMBConnection con = new NCMBConnection(url, type, null, null); con.Connect(delegate(int statusCode, string responseData, NCMBException error) { try { NCMBDebug.Log("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { Dictionary <string, object> responseDic = MiniJSON.Json.Deserialize(responseData) as Dictionary <string, object>; //save Current user NCMBUser logInUser = new NCMBUser(); logInUser._handleFetchResult(true, responseDic); _saveCurrentUser(logInUser); } } catch (Exception e) { error = new NCMBException(e); } if (callback != null) { callback(error); } return; }); }
/// <summary> /// 非同期処理でユーザ名とパスワードを指定して、ユーザのログインを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="name">ユーザ名</param> /// <param name="password">パスワード</param> /// <param name="callback">コールバック</param> public static void LogInAsync(string name, string password, NCMBCallback callback) { //logIn通信を実施 new AsyncDelegate(delegate { _ncmbLogIn(name, password, null, callback); }).BeginInvoke((IAsyncResult r) => { }, null); }
/// <summary> /// 非同期処理でユーザのパスワード再発行依頼を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="email">メールアドレス</param> /// <param name="callback">コールバック</param> public static void RequestPasswordResetAsync(string email, NCMBCallback callback) { //request通信を実施 new AsyncDelegate(delegate { _requestPasswordReset(email, callback); }).BeginInvoke((IAsyncResult r) => { }, null); }
private static void _ncmbLogIn(string name, string password, string email, NCMBCallback callback) { string url = _getLogInUrl(); //URL作成 ConnectType type = ConnectType.GET; //set username, password NCMBUser logInUser = new NCMBUser(); logInUser.Password = password; //nameがあればLogInAsync経由 無ければLogInWithMailAddressAsync経由、どちらも無ければエラー if (name != null) { logInUser.UserName = name; } else if (email != null) { logInUser.Email = email; } else { throw new NCMBException(new ArgumentException("UserName or Email can not be null.")); } string content = logInUser._toJSONObjectForSaving(logInUser.StartSave()); Dictionary <string, object> paramDic = (Dictionary <string, object>)MiniJSON.Json.Deserialize(content); url = _makeParamUrl(url + "?", paramDic); //ログを確認(通信前) NCMBDebug.Log("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); //通信処理 NCMBConnection con = new NCMBConnection(url, type, content, NCMBUser._getCurrentSessionToken()); con.Connect(delegate(int statusCode, string responseData, NCMBException error) { try { NCMBDebug.Log("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { Dictionary <string, object> responseDic = MiniJSON.Json.Deserialize(responseData) as Dictionary <string, object>; logInUser._handleFetchResult(true, responseDic); //save Current user _saveCurrentUser(logInUser); } } catch (Exception e) { error = new NCMBException(e); } if (callback != null) { Platform.RunOnMainThread(delegate { callback(error); }); } return; }); }
/// <summary> /// 非同期処理で現在ログインしているユーザのauthDataの削除を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="provider">SNS名</param> /// <param name="callback">コールバック</param> public void UnLinkWithAuthDataAsync(string provider, NCMBCallback callback) { if (this.AuthData == null) { throw new NCMBException(new ArgumentException("Current User authData not exist")); } List <string> providerList = new List <string> () { "facebook", "twitter" }; if (string.IsNullOrEmpty(provider) || !providerList.Contains(provider)) { throw new NCMBException(new ArgumentException("Provider must be facebook or twitter")); } // authDataの退避 Dictionary <string, object> currentParam = new Dictionary <string, object> (); currentParam = this.AuthData; Dictionary <string, object> providerParam = new Dictionary <string, object> () { { provider, null } }; this.AuthData = providerParam; SignUpAsync((NCMBException error) => { if (error == null) { // authDataの削除 currentParam.Remove(provider); this.AuthData = currentParam; } else { this.AuthData = currentParam; } if (callback != null) { // callbackを実施 Platform.RunOnMainThread(delegate { callback(error); }); } }); }
/// <summary> /// 非同期処理でファイルの保存を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public override void SaveAsync(NCMBCallback callback) { if ((this.FileName == null)) { throw new NCMBException("fileName must not be null."); } new AsyncDelegate(delegate { ConnectType type; if (this.CreateDate != null) { type = ConnectType.PUT; } else { type = ConnectType.POST; } IDictionary <string, INCMBFieldOperation> currentOperations = null; currentOperations = this.StartSave(); string content = _toJSONObjectForSaving(currentOperations); NCMBConnection con = new NCMBConnection(_getBaseUrl(), type, content, NCMBUser._getCurrentSessionToken(), this); con.Connect(delegate(int statusCode, string responseData, NCMBException error) { try { NCMBDebug.Log("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { // 失敗 this._handleSaveResult(false, null, currentOperations); } else { Dictionary <string, object> responseDic = MiniJSON.Json.Deserialize(responseData) as Dictionary <string, object>; this._handleSaveResult(true, responseDic, currentOperations); } } catch (Exception e) { error = new NCMBException(e); } if (callback != null) { Platform.RunOnMainThread(delegate { callback(error); }); } return; }); }).BeginInvoke((IAsyncResult r) => { }, null); }
/*** Push送信 ***/ /// <summary> /// プッシュの送信を行います。 /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> public void SendPush(NCMBCallback callback) { //エラー判定 if (ContainsKey("deliveryExpirationDate") && ContainsKey("deliveryExpirationTime")) { throw new ArgumentException("DeliveryExpirationDate and DeliveryExpirationTime can not be set at the same time.Please set only one."); } else if (ContainsKey("deliveryTime") && ContainsKey("immediateDeliveryFlag") && ImmediateDeliveryFlag == true) { throw new ArgumentException("deliveryTime and immediateDeliveryFlag can not be set at the same time.Please set only one."); } //配信時間設定 if (!ContainsKey("deliveryTime")) //配信日時(日付)の指定がなければ即時配信 { ImmediateDeliveryFlag = true; } base.SaveAsync(callback); }
/// <summary> /// 非同期処理でauthDataを用いて、ユーザを登録します。<br/> /// 既存会員のauthData登録はLinkWithAuthDataAsyncメソッドをご利用下さい。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public void LogInWithAuthDataAsync(NCMBCallback callback) { if (this.AuthData == null) { throw new NCMBException(new ArgumentException("Post authData not exist")); } SignUpAsync((NCMBException error) => { if (error != null) { // authDataの削除 this.AuthData.Clear(); } if (callback != null) { // callbackを実施 callback(error); } }); }
internal static void _logOut(NCMBCallback callback) { string url = _getLogOutUrl(); //URL作成 ConnectType type = ConnectType.GET; string content = null; //ログを確認(通信前) NCMBDebug.Log("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); //通信処理 NCMBConnection con = new NCMBConnection(url, type, content, NCMBUser._getCurrentSessionToken()); con.Connect(delegate(int statusCode, string responseData, NCMBException error) { try { NCMBDebug.Log("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { _logOutEvent(); } } catch (Exception e) { error = new NCMBException(e); } if (callback != null) { //If the system get ErrorCode is E401001 when LogOutAsync, We will return null. if (error != null && NCMBException.INCORRECT_HEADER.Equals(error.ErrorCode)) { callback(null); } else { callback(error); } } return; }); }
internal static void _requestPasswordReset(string email, NCMBCallback callback) { string url = _getRequestPasswordResetUrl(); //URL ConnectType type = ConnectType.POST; //set username, password NCMBUser pwresetUser = new NCMBUser(); pwresetUser.Email = email; string content = pwresetUser._toJSONObjectForSaving(pwresetUser.StartSave()); //ログを確認(通信前) NCMBDebug.Log("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); //通信処理 NCMBConnection con = new NCMBConnection(url, type, content, NCMBUser._getCurrentSessionToken()); con.Connect(delegate(int statusCode, string responseData, NCMBException error) { try { NCMBDebug.Log("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { NCMBDebug.Log("[DEBUG AFTER CONNECT] Successful: "); } } catch (Exception e) { error = new NCMBException(e); } if (callback != null) { Platform.RunOnMainThread(delegate { callback(error); }); } return; }); }
/// <summary> /// 非同期処理で現在ログインしているユーザに、authDataの追加を行います。<br/> /// authDataが登録されていないユーザならログインし、authDataの登録を行います。<br/> /// authDataが登録されているユーザなら、authDataの追加を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="linkParam">authData</param> /// <param name="callback">コールバック</param> public void LinkWithAuthDataAsync(Dictionary <string, object> linkParam, NCMBCallback callback) { if (this.AuthData == null) { // authDataの登録 this.AuthData = linkParam; LogInWithAuthDataAsync(callback); } // authDataの退避 Dictionary <string, object> currentParam = new Dictionary <string, object> (); currentParam = this.AuthData; this.AuthData = linkParam; SignUpAsync((NCMBException error) => { if (error == null) { // authDataのmerge var mergeParam = linkParam.Concat(currentParam).ToDictionary(x => x.Key, x => x.Value); this.AuthData = mergeParam; } else { this.AuthData = currentParam; } if (callback != null) { // callbackを実施 Platform.RunOnMainThread(delegate { callback(error); }); } }); }
/// <summary> /// 非同期処理でユーザのログアウトを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public static void LogOutAsync(NCMBCallback callback) { if (_currentUser != null) { //logOut通信を実施 _logOut(callback); } else { try { _logOutEvent(); } catch (NCMBException e) { if (callback != null) { callback(e); } return; } if (callback != null) { callback(null); } } }
/// <summary> /// 非同期処理でユーザ名とパスワードを指定して、ユーザのログインを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="name">ユーザ名</param> /// <param name="password">パスワード</param> /// <param name="callback">コールバック</param> public static void LogInAsync(string name, string password, NCMBCallback callback) { //logIn通信を実施 _ncmbLogIn(name, password, null, callback); }
/// <summary> /// 非同期処理でユーザのパスワード再発行依頼を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="email">メールアドレス</param> /// <param name="callback">コールバック</param> public static void RequestPasswordResetAsync(string email, NCMBCallback callback) { //request通信を実施 _requestPasswordReset(email, callback); }
/// <summary> /// 非同期処理でユーザの保存を行います。<br/> /// SaveAsync()を実行してから編集などをしていなく、保存をする必要が無い場合は通信を行いません。<br/> /// オブジェクトIDが登録されていない新規会員ならログインし、登録を行います。<br/> /// オブジェクトIDが登録されている既存会員ならログインせず、更新を行います。<br/> /// 既存会員のログインはLogInAsyncメソッドをご利用下さい。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public override void SaveAsync(NCMBCallback callback) { base.SaveAsync(callback); }
/// <summary> /// 非同期処理でユーザを登録します。<br/> /// オブジェクトIDが登録されていない新規会員ならログインし、登録を行います。<br/> /// オブジェクトIDが登録されている既存会員ならログインせず、更新を行います。<br/> /// 既存会員のログインはLogInAsyncメソッドをご利用下さい。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public void SignUpAsync(NCMBCallback callback) { base.SaveAsync(callback); //Cleanup authdata for other Services if needed }
/// <summary> /// ユーザの削除を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public override void DeleteAsync(NCMBCallback callback) { base.DeleteAsync(callback); //Cleanup authdata for other Services if needed }
private static void _ncmbLogIn(string name, string password, string email, NCMBCallback callback) { string url = _getLogInUrl ();//URL作成 ConnectType type = ConnectType.GET; //set username, password NCMBUser logInUser = new NCMBUser (); logInUser.Password = password; //nameがあればLogInAsync経由 無ければLogInWithMailAddressAsync経由、どちらも無ければエラー if (name != null) { logInUser.UserName = name; } else if (email != null) { logInUser.Email = email; } else { throw new NCMBException (new ArgumentException ("UserName or Email can not be null.")); } string content = logInUser._toJSONObjectForSaving (logInUser.StartSave ()); Dictionary<string, object> paramDic = (Dictionary<string, object>)MiniJSON.Json.Deserialize (content); url = _makeParamUrl (url + "?", paramDic); //ログを確認(通信前) NCMBDebug.Log ("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); //通信処理 NCMBConnection con = new NCMBConnection (url, type, content, NCMBUser._getCurrentSessionToken ()); con.Connect (delegate(int statusCode , string responseData, NCMBException error) { try { NCMBDebug.Log ("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log ("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { Dictionary<string, object> responseDic = MiniJSON.Json.Deserialize (responseData) as Dictionary<string, object>; logInUser._handleFetchResult (true, responseDic); //save Current user _saveCurrentUser (logInUser); } } catch (Exception e) { error = new NCMBException (e); } if (callback != null) { Platform.RunOnMainThread (delegate { callback (error); }); } return; }); }
/// <summary> /// 非同期処理でユーザ名とパスワードを指定して、ユーザのログインを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="name">ユーザ名</param> /// <param name="password">パスワード</param> /// <param name="callback">コールバック</param> public static void LogInAsync(string name, string password, NCMBCallback callback) { //logIn通信を実施 new AsyncDelegate (delegate { _ncmbLogIn (name, password, null, callback); }).BeginInvoke ((IAsyncResult r) => { }, null); }
/// <summary> /// 非同期処理で指定したメールアドレスに対して、<br/> /// 会員登録を行うためのメールを送信するよう要求します。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="email">メールアドレス</param> /// <param name="callback">コールバック</param> public static void RequestAuthenticationMailAsync(string email, NCMBCallback callback) { new AsyncDelegate (delegate { //URL string url = _getmailAddressUserEntryUrl ();//URL //コンテント NCMBUser user = new NCMBUser (); user.Email = email; string content = user._toJSONObjectForSaving (user.StartSave ()); //Type ConnectType type = ConnectType.POST; NCMBConnection con = new NCMBConnection (url, type, content, NCMBUser._getCurrentSessionToken ()); NCMBDebug.Log ("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); con.Connect (delegate(int statusCode , string responseData, NCMBException error) { NCMBDebug.Log ("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (callback != null) { Platform.RunOnMainThread (delegate { callback (error); }); } return; }); }).BeginInvoke ((IAsyncResult r) => { }, null); }
/// <summary> /// 非同期処理でユーザのパスワード再発行依頼を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="email">メールアドレス</param> /// <param name="callback">コールバック</param> public static void RequestPasswordResetAsync(string email, NCMBCallback callback) { //request通信を実施 new AsyncDelegate (delegate { _requestPasswordReset (email, callback); }).BeginInvoke ((IAsyncResult r) => { }, null); }
/// <summary> /// ユーザの削除を行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public override void DeleteAsync(NCMBCallback callback) { base.DeleteAsync (callback); //Cleanup authdata for other Services if needed }
/// <summary> /// 非同期処理でユーザの保存を行います。<br/> /// SaveAsync()を実行してから編集などをしていなく、保存をする必要が無い場合は通信を行いません。<br/> /// オブジェクトIDが登録されていない新規会員ならログインし、登録を行います。<br/> /// オブジェクトIDが登録されている既存会員ならログインせず、更新を行います。<br/> /// 既存会員のログインはLogInAsyncメソッドをご利用下さい。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public override void SaveAsync(NCMBCallback callback) { base.SaveAsync (callback); }
/// <summary> /// 非同期処理でユーザを登録します。<br/> /// オブジェクトIDが登録されていない新規会員ならログインし、登録を行います。<br/> /// オブジェクトIDが登録されている既存会員ならログインせず、更新を行います。<br/> /// 既存会員のログインはLogInAsyncメソッドをご利用下さい。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public void SignUpAsync(NCMBCallback callback) { base.SaveAsync (callback); //Cleanup authdata for other Services if needed }
/*** Push送信 ***/ /// <summary> /// プッシュの送信を行います。 /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> public void SendPush(NCMBCallback callback) { //エラー判定 if (ContainsKey ("deliveryExpirationDate") && ContainsKey ("deliveryExpirationTime")) { throw new ArgumentException ("DeliveryExpirationDate and DeliveryExpirationTime can not be set at the same time.Please set only one."); } else if (ContainsKey ("deliveryTime") && ContainsKey ("immediateDeliveryFlag") && ImmediateDeliveryFlag == true) { throw new ArgumentException ("deliveryTime and immediateDeliveryFlag can not be set at the same time.Please set only one."); } //配信時間設定 if (!ContainsKey ("deliveryTime")) { //配信日時(日付)の指定がなければ即時配信 ImmediateDeliveryFlag = true; } base.SaveAsync (callback); }
internal static void _logOut(NCMBCallback callback) { string url = _getLogOutUrl ();//URL作成 ConnectType type = ConnectType.GET; string content = null; //ログを確認(通信前) NCMBDebug.Log ("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); //通信処理 NCMBConnection con = new NCMBConnection (url, type, content, NCMBUser._getCurrentSessionToken ()); con.Connect (delegate(int statusCode , string responseData, NCMBException error) { try { NCMBDebug.Log ("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log ("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { _logOutEvent (); } } catch (Exception e) { error = new NCMBException (e); } if (callback != null) { Platform.RunOnMainThread (delegate { callback (error); }); } return; }); }
/// <summary> /// 非同期処理でメールアドレスとパスワードを指定して、ユーザのログインを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="email">メールアドレス</param> /// <param name="password">パスワード</param> /// <param name="callback">コールバック</param> public static void LogInWithMailAddressAsync(string email, string password, NCMBCallback callback) { _ncmbLogIn(null, password, email, callback); }
/// <summary> /// 非同期処理でユーザのログアウトを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="callback">コールバック</param> public static void LogOutAsync(NCMBCallback callback) { if (_currentUser != null) { //logOut通信を実施 new AsyncDelegate (delegate { _logOut (callback); }).BeginInvoke ((IAsyncResult r) => { }, null); } else { try { _logOutEvent (); } catch (NCMBException e) { if (callback != null) { Platform.RunOnMainThread (delegate { callback (e); }); } return; } if (callback != null) { Platform.RunOnMainThread (delegate { callback (null); }); } } }
/// <summary> /// 非同期処理でメールアドレスとパスワードを指定して、ユーザのログインを行います。<br/> /// 通信結果が必要な場合はコールバックを指定するこちらを使用します。 /// </summary> /// <param name="email">メールアドレス</param> /// <param name="password">パスワード</param> /// <param name="callback">コールバック</param> public static void LogInWithMailAddressAsync(string email, string password, NCMBCallback callback) { new AsyncDelegate (delegate { _ncmbLogIn (null, password, email, callback); }).BeginInvoke ((IAsyncResult r) => { }, null); }
/// <summary> /// yield return で待機可能なSaveAsync /// </summary> /// <param name="ncmbobj"></param> /// <param name="callback"></param> /// <returns></returns> public static CustomYieldInstruction YieldableSaveAsync(this NCMBObject ncmbobj, NCMBCallback callback = null) { var isComplete = false; ncmbobj.SaveAsync(error => { if (callback != null) { callback(error); } isComplete = true; }); return(new WaitUntil(() => isComplete)); }
internal static void _requestPasswordReset(string email, NCMBCallback callback) { string url = _getRequestPasswordResetUrl ();//URL ConnectType type = ConnectType.POST; //set username, password NCMBUser pwresetUser = new NCMBUser (); pwresetUser.Email = email; string content = pwresetUser._toJSONObjectForSaving (pwresetUser.StartSave ()); //ログを確認(通信前) NCMBDebug.Log ("【url】:" + url + Environment.NewLine + "【type】:" + type + Environment.NewLine + "【content】:" + content); //通信処理 NCMBConnection con = new NCMBConnection (url, type, content, NCMBUser._getCurrentSessionToken ()); con.Connect (delegate(int statusCode , string responseData, NCMBException error) { try { NCMBDebug.Log ("【StatusCode】:" + statusCode + Environment.NewLine + "【Error】:" + error + Environment.NewLine + "【ResponseData】:" + responseData); if (error != null) { NCMBDebug.Log ("[DEBUG AFTER CONNECT] Error: " + error.ErrorMessage); } else { NCMBDebug.Log ("[DEBUG AFTER CONNECT] Successful: "); } } catch (Exception e) { error = new NCMBException (e); } if (callback != null) { Platform.RunOnMainThread (delegate { callback (error); }); } return; }); }