From 135e148183e066795c487c62ef387ba40a621efd Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期一, 23 十一月 2020 10:25:11 +0800 Subject: [PATCH] Merge branch 'CJL' --- HDL_ON/Common/HDLCommon.cs | 314 ++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 293 insertions(+), 21 deletions(-) diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs index f0295ef..0bd5640 100644 --- a/HDL_ON/Common/HDLCommon.cs +++ b/HDL_ON/Common/HDLCommon.cs @@ -2,6 +2,7 @@ using Shared; using HDL_ON; using HDL_ON.UI.CSS; +using HDL_ON.DAL.Server; namespace HDL_ON { @@ -11,25 +12,25 @@ /// </summary> public class HDLCommon { - #region 鈻� 鍙橀噺澹版槑___________________________ - /// <summary> - /// 閫氱敤鏂规硶 - /// </summary> - private static HDLCommon m_Current = null; - /// <summary> - /// 閫氱敤鏂规硶 - /// </summary> - public static HDLCommon Current - { - get - { - if (m_Current == null) - { - m_Current = new HDLCommon(); - } - return m_Current; - } - } + #region 鈻� 鍙橀噺澹版槑___________________________ + /// <summary> + /// 閫氱敤鏂规硶 + /// </summary> + private static HDLCommon m_Current = null; + /// <summary> + /// 閫氱敤鏂规硶 + /// </summary> + public static HDLCommon Current + { + get + { + if (m_Current == null) + { + m_Current = new HDLCommon(); + } + return m_Current; + } + } #endregion #region 鈻� Alter寮圭獥鎻愮ず_______________________ @@ -50,7 +51,8 @@ public void ShowActionAlert(string mes, Action okAction) { Alert alert = new Alert("", mes, Language.StringByID(StringId.Cancel), Language.StringByID(StringId.Confirm)); - alert.ResultEventHandler += (sender2, e2) => { + alert.ResultEventHandler += (sender2, e2) => + { if (e2) { okAction?.Invoke(); @@ -62,9 +64,279 @@ #endregion #region 鈻� 閫氱敤Dialog_______________________ - + #endregion + #region 妫�娴嬫洿鏂� + /// <summary> + /// 妫�娴嬫洿鏂扮嚎绋� + /// </summary> + public void CheckIfNeedForceUpdate() + { + // //return; + System.Threading.Tasks.Task.Run(() => + { + try + { + var requestObj = new ForceUpdateObj() + { + + }; +#if Android + requestObj.DeviceType = 1; +#endif + var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj); + var revertObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_CheckAppVersion, requestJson); + if (revertObj.Code == StateCode.SUCCESS) + { + var mForceUpdateInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<ForceUpdateInfo>(revertObj.Data.ToString()); + if (mForceUpdateInfo != null) + { + Application.RunOnMainThread(() => + { + ShowForceUpdateDialog(mForceUpdateInfo); + }); + } + } + else + { + Utlis.WriteLine("璇锋眰澶辫触"); + } + } + catch (Exception ex) + { + //Shared.Utlis.WriteLine (ex.ToString ()); + } + finally + { + + } + + }); + + + //ForceUpdateInfo mForceUpdateInfo = new ForceUpdateInfo () { + // IsNeedForceUpdate = true, + // AndroidUrl = "https://shouji.baidu.com/software/26667787.html", + // AndroidUrl_En = "https://shouji.baidu.com/software/26667787.html", + // IosUrl = "https://apps.apple.com/cn/app/hdl-on/id1029839624", + // ReasonStr = "1.鍙戠幇鏂扮増鏈珹pp,褰撳墠鐗堟湰宸插仠鐢�,椹笂鏇存柊!\n2.璇蜂笅杞藉拰瀹夎鏂扮増鏈�!", + // ReasonStr_En = "1. Discover the new version of the App, the current version is disabled, update now! \n2. Please download and install the new version!" + //}; + + //ShowForceUpdateDialog (mForceUpdateInfo); + } + + /// <summary> + /// 鎻愮ず寮哄埗鏇存柊Dialog + /// 鐐瑰嚮纭璺宠浆娴忚鍣� + /// </summary> + public void ShowForceUpdateDialog(ForceUpdateInfo mForceUpdateInfo) + { + + //if (!mForceUpdateInfo.IsNeedForceUpdate) return; + + if (mForceUpdateInfo.UpdateType == 0) return; + + if (mForceUpdateInfo.UpdateType == 1 && (UserInfo.Current.IgnoreUpdateVersion == mForceUpdateInfo.NewVersion)) return; + + Dialog dialog = new Dialog(); + + FrameLayout dialogBodyView = new FrameLayout() + { + Gravity = Gravity.Center, + Width = Application.GetRealWidth(500), + Height = Application.GetRealHeight(500), + BackgroundColor = 0xFF000000, + Radius = (uint)Application.GetRealWidth(10), + //BorderColor = SkinStyle.Current.Transparent, + BorderWidth = 0, + }; + dialog.AddChidren(dialogBodyView); + + Button btnTitle = new Button() + { + Height = Application.GetRealHeight(80), + BackgroundColor = 0x00000000, + TextAlignment = TextAlignment.Center, + TextID = StringId.Tip, + TextColor = 0xFFFFFFFF + }; + dialogBodyView.AddChidren(btnTitle); + + + FrameLayout centerView = new FrameLayout() + { + Y = Application.GetRealHeight(80), + Height = Application.GetRealHeight(340), + BackgroundColor = 0xFFFFFFFF, + }; + dialogBodyView.AddChidren(centerView); + + Button btnMessage = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(20), + Width = Application.GetRealWidth(400), + //Height = Application.GetRealHeight (300), + //Text = mForceUpdateInfo.ReasonStr, + TextAlignment = TextAlignment.TopLeft, + //TextColor = SkinStyle.Current.TextColor, + IsMoreLines = true + }; + centerView.AddChidren(btnMessage); + + + FrameLayout bottomView = new FrameLayout() + { + Y = Application.GetRealHeight(420), + Height = Application.GetRealHeight(80), + BackgroundColor = 0xFFFFFFFF, + + }; + dialogBodyView.AddChidren(bottomView); + + var mAndroidUrl = mForceUpdateInfo.AndroidUrl; + if (Language.CurrentLanguage == "Chinese") + { + btnMessage.Text = mForceUpdateInfo.ReasonStr; + + } + else + { + btnMessage.Text = mForceUpdateInfo.ReasonStr_En; + mAndroidUrl = mForceUpdateInfo.AndroidUrl_En; + } + + + if (mForceUpdateInfo.UpdateType == 1) + { + #region 鎻愮ず鏇存柊 + Button btnNext = new Button() + { + Width = Application.GetRealWidth(249), + TextID = StringId.Ignore, + TextAlignment = TextAlignment.Center, + TextColor = 0xFFFFFFFF, + BackgroundColor = 0xFF000000, + //Text = "蹇界暐" + }; + bottomView.AddChidren(btnNext); + btnNext.MouseUpEventHandler += (sender2, e2) => + { + //UserConfig.Instance.IfIgnoreUpdate = true; + UserInfo.Current.IgnoreUpdateVersion = mForceUpdateInfo.NewVersion; + UserInfo.Current.SaveUserInfo(); + dialog.Close(); + }; + + Button btnSave = new Button() + { + X = btnNext.Right + 1, + Width = Application.GetRealWidth(250), + TextID = StringId.Update, + TextAlignment = TextAlignment.Center, + TextColor = 0xFFFFFFFF, + BackgroundColor = 0xFF000000, + //Text = "鏇存柊" + }; + bottomView.AddChidren(btnSave); + + btnSave.MouseUpEventHandler += (sender2, e2) => + { + dialog.Close(); + try + { + +#if __IOS__ + HDLUtils.OpenUrl(mForceUpdateInfo.IosUrl); + //UIApplication.SharedApplication.OpenUrl (new Foundation.NSUrl ("https://apps.apple.com/cn/app/hdl-on/id1029839624")); + +#elif Android + HDLUtils.OpenUrl(mAndroidUrl); + SharedMethod.SharedMethod.OpenUrl (mAndroidUrl); + //SharedMethod.SharedMethod.OpenUrl ("https://shouji.baidu.com/software/26667787.html"); + +#endif + } + catch + { + //璺宠浆涓嬭浇鍦板潃澶辫触 + Utlis.WriteLine("open url error"); + } + }; + + #endregion + + } + else if (mForceUpdateInfo.UpdateType == 2) + { + #region 寮哄埗鏇存柊 + Button btnSave = new Button() + { + Width = Application.GetRealWidth(500), + TextID = StringId.Confirm, + TextAlignment = TextAlignment.Center, + TextColor = 0xFFFFFFFF, + BackgroundColor = 0xFF000000, + }; + bottomView.AddChidren(btnSave); + + //var mAndroidUrl = mForceUpdateInfo.AndroidUrl; + //if (Language.CurrentLanguage == "Chinese") { + // btnMessage.Text = mForceUpdateInfo.ReasonStr; + + //} else { + // btnMessage.Text = mForceUpdateInfo.ReasonStr_En; + // mAndroidUrl = mForceUpdateInfo.AndroidUrl_En; + //} + + btnSave.MouseUpEventHandler += (sender2, e2) => + { + try + { + +#if __IOS__ + HDLUtils.OpenUrl(mForceUpdateInfo.IosUrl); + //UIApplication.SharedApplication.OpenUrl (new Foundation.NSUrl ("https://apps.apple.com/cn/app/hdl-on/id1029839624")); + +#elif Android + HDLUtils.OpenUrl(mAndroidUrl); + //SharedMethod.SharedMethod.OpenUrl ("https://shouji.baidu.com/software/26667787.html"); + +#endif + } + catch + { + //璺宠浆涓嬭浇鍦板潃澶辫触 + Utlis.WriteLine("open url error"); + } + }; + #endregion + } + else + { + #region 鎻愮ず閫氱煡 + Button btnSave = new Button() + { + Width = Application.GetRealWidth(500), + TextID = StringId.Close, + TextAlignment = TextAlignment.Center, + TextColor = 0xFFFFFFFF, + BackgroundColor = 0xFF000000, + }; + bottomView.AddChidren(btnSave); + + btnSave.MouseUpEventHandler += (sender2, e2) => + { + dialog.Close(); + }; + #endregion + } + dialog.Show(); + + } + #endregion } } -- Gitblit v1.8.0