From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 27 八月 2021 13:21:21 +0800
Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1

---
 HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs |  347 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 347 insertions(+), 0 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs
new file mode 100644
index 0000000..fa1831f
--- /dev/null
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs
@@ -0,0 +1,347 @@
+锘縰sing System;
+using Shared;
+using HDL_ON.UI.CSS;
+using System.Net;
+using System.Text;
+using HDL_ON.DAL.Server;
+using System.Threading.Tasks;
+
+namespace HDL_ON.UI
+{
+    /// <summary>
+    /// 鍏充簬椤甸潰
+    /// </summary>
+    public class AboutOnPage : FrameLayout
+    {
+        /// <summary>
+        /// 
+        /// </summary>
+        FrameLayout bodyView;
+        /// <summary>
+        /// 鐗堟湰鏇存柊ListCellView
+        /// </summary>
+        ListCellView versionUpdateView;
+
+        /// <summary>
+        /// 鏂扮増鏈殑鐗堟湰鍙凤紝鏌ヨ鍒版柊鐗堟湰鎵嶈祴鍊�
+        /// </summary>
+        string newAppVersion;
+        /// <summary>
+        /// 鏂扮増鏈殑涓嬭浇鍦板潃
+        /// iOS 榛樿涓鸿嫻鏋滃晢搴楀湴鍧�
+        /// Android 浜戠杩斿洖鍦板潃
+        /// </summary>
+        string newAppVersionUrl = "";
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public AboutOnPage()
+        {
+            bodyView = this;
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public void LoadPage()
+        {
+            new TopViewDiv(bodyView, Language.StringByID(StringId.About)).LoadTopView();
+
+            Button btnOnIcon = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealWidth(106),
+                Width = Application.GetRealWidth(58),
+                Height = Application.GetRealWidth(58),
+                UnSelectedImagePath = "OnIcon.png",
+            };
+            bodyView.AddChidren(btnOnIcon);
+
+            Button btnOnTitle = new Button()
+            {
+                //Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealWidth(184),
+                Height = Application.GetRealWidth(28),
+                TextAlignment = TextAlignment.Center,
+                Text = "ON+",
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.EmphasisFontSize_Secondary,
+                IsBold = true,
+            };
+            bodyView.AddChidren(btnOnTitle);
+
+#if DEBUG
+            //btnOnIcon.MouseUpEventHandler += (sender, e) =>
+            //{
+            //    ESOnVideo.Current.Test();
+            //};
+
+            //btnOnTitle.MouseUpEventHandler += (sender, e) =>
+            //{
+            //    ESOnVideo.Current.Test(false);
+            //};
+
+#endif
+
+            Button btnOnVersion = new Button()
+            {
+                Y = btnOnTitle.Bottom,
+                Height = Application.GetRealWidth(25),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.TextualColor,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+                Text = Language.StringByID(StringId.VersionNumber) + " " + MainPage.VersionString,
+            };
+            bodyView.AddChidren(btnOnVersion);
+
+
+            var lineView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(281),
+                Height = Application.GetRealHeight(1),
+                BackgroundColor = CSS_Color.DividingLineColor,
+            };
+            bodyView.AddChidren(lineView);
+
+            #region 鍔熻兘浠嬬粛
+            var functionView = new ListCellView()
+            {
+                Y = lineView.Bottom,
+            };
+            bodyView.AddChidren(functionView);
+            functionView.BtnTilte.TextID = StringId.FunctionIntroduced;
+            Action functionAction = () =>
+            {
+                var mPage = new FunctionIntroductionPage();
+                MainPage.BasePageView.AddChidren(mPage);
+                mPage.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+            functionView.GoAction = functionAction;
+            #endregion
+
+            #region 鎶曡瘔
+            var complaintsView = new ListCellView()
+            {
+                Y = functionView.Bottom,
+            };
+            bodyView.AddChidren(complaintsView);
+            complaintsView.BtnTilte.TextID = StringId.Complaints;
+            Action complaintsAction = () =>
+            {
+                var mPage = new ComplaintsPage();
+                MainPage.BasePageView.AddChidren(mPage);
+                mPage.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+            complaintsView.GoAction = complaintsAction;
+            #endregion
+
+            #region 鐗堟湰鏇存柊
+            versionUpdateView = new ListCellView()
+            {
+                Y = complaintsView.Bottom,
+            };
+            bodyView.AddChidren(versionUpdateView);
+            versionUpdateView.BtnTilte.TextID = StringId.VersionUpdate;
+            Action versionUpdateAction = () =>
+            {
+                OpenUrl();
+                //TestDDDDD();
+                //HDLCommon.Current.CheckIfNeedForceUpdate();
+            };
+            versionUpdateView.GoAction = versionUpdateAction;
+            #endregion
+
+            CheckIfNeedUpdateAsync();
+        }
+
+
+        /// <summary>
+        /// 鍒ゆ柇鏄惁闇�瑕佽皟鏁存柊鐗堟湰涓嬭浇鍦板潃
+        /// </summary>
+        void OpenUrl()
+        {
+            if (!string.IsNullOrEmpty(newAppVersion))
+            {
+                HDLUtils.OpenUrl(newAppVersionUrl);
+            }
+            else
+            {
+                Utlis.ShowTip(Language.StringByID(StringId.IsLatestVersion));
+            }
+        }
+
+        /// <summary>
+        /// 妫�娴嬫槸鍚﹂渶瑕佹洿鏂�
+        /// Android绛夋帴鍙e疄鐜�
+        /// </summary>
+        /// <returns></returns>
+        void CheckIfNeedUpdateAsync(bool isTip = false)
+        {
+            new System.Threading.Thread(() =>
+            {
+                newAppVersion = CanUpdateAsync();
+                Application.RunOnMainThread(() =>
+                {
+                    if (!string.IsNullOrEmpty(newAppVersion))
+                    {
+                        //鍙戠幇鏂扮増鏈�
+                        versionUpdateView.BtnSubtitle.TextColor = CSS_Color.MainColor;
+                        versionUpdateView.BtnSubtitle.Text = Language.StringByID(StringId.DiscoverNewVersion) + "(" + newAppVersion + ")";
+                    }
+                    else
+                    {
+                        //宸茬粡鏄渶鏂扮増鏈�
+                        versionUpdateView.BtnSubtitle.TextColor = CSS_Color.PromptingColor1;
+                        versionUpdateView.BtnSubtitle.Text = Language.StringByID(StringId.IsLatestVersion);
+                    }
+                });
+
+            })
+            { IsBackground = true }.Start();
+        }
+
+        /// <summary>
+        /// 妫�鏌ョ増鏈�
+        /// </summary>
+        /// <returns></returns>
+        string CanUpdateAsync()
+        {
+#if __IOS__
+            try
+            {
+                var versionResult = RequestHttpsiOSAppVersionAsync();
+                if (versionResult == null || versionResult.Results == null)
+                {
+                    return "";
+                }
+                var results = Newtonsoft.Json.Linq.JArray.Parse(versionResult.Results.ToString());
+                if (results[0] == null)
+                {
+                    return "";
+                }
+                var newVersion = results[0]["version"]?.ToString();
+                //var updateContent = results[0]["releaseNotes"]?.ToString();
+                if (newVersion.CompareTo(MainPage.VersionString) > 0)
+                {
+                    newAppVersionUrl = Constant.URL_APPSTORE;
+                    return newVersion;
+                }
+                return "";
+            }
+            catch
+            {
+                return "";
+            }
+
+#else
+            try
+            {
+                var versionResult = CheckAppVersion();
+                if (versionResult == null)
+                {
+                    return "";
+                }
+                var newVersion = versionResult.version;
+                if (newVersion.CompareTo(MainPage.VersionString) > 0)
+                {
+                    newAppVersionUrl = versionResult.androidUrl;
+                    return newVersion;
+                }
+                return "";
+            }
+            catch (Exception ex)
+            {
+                return "";
+            }
+#endif
+        }
+
+
+#if __IOS__
+        /// <summary>
+        /// 鑾峰彇iOS-APP鐗堟湰淇℃伅
+        /// </summary>
+        /// <returns>The https app version async.</returns>
+        ResultPack RequestHttpsiOSAppVersionAsync()
+        {
+            try
+            {
+                var webClient = new WebClient { };
+                var result = webClient.DownloadData("https://itunes.apple.com/cn/lookup?id=1532353432");
+                if (result == null)
+                {
+                    return null;
+                }
+                return Newtonsoft.Json.JsonConvert.DeserializeObject<ResultPack>(Encoding.UTF8.GetString(result));
+            }
+            catch
+            {
+                return null;
+            }
+        }
+
+        //#else
+
+
+
+
+#endif
+
+        /// <summary>
+        /// 妫�娴嬫柊鐗堟湰
+        /// </summary>
+        /// <returns>The https app version async.</returns>
+        private AppVersionRes CheckAppVersion()
+        {
+            try
+            {
+                var result = new HttpServerRequest().CheckAppVersion();
+                if (result.Code == StateCode.SUCCESS)
+                {
+                    if (result.Data == null)
+                    {
+                        return null;
+                    }
+
+                    var responeData = Newtonsoft.Json.JsonConvert.DeserializeObject<AppVersionRes>(result.Data.ToString());
+                    return responeData;
+                }
+                return null;
+            }
+            catch (Exception ex)
+            {
+                return null;
+            }
+        }
+
+        int updateType = 0;
+        void TestDDDDD()
+        {
+            updateType = 1;
+
+            UpdateDialogInfo forceUpdateInfo = new UpdateDialogInfo()
+            {
+                UpdateType = updateType,
+                NewVersionUrl = Constant.URL_APPSTORE,
+                NewVersion = "1.0.0925",
+                ReasonStr = "1銆侀椤靛叏鏂版敼鐗堣璁★紝UI鏇存竻鏅� \n2銆佷慨澶岯UG \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳� \n3銆佹柊澧為煶绠卞姛鑳�"
+            };
+
+            HDLCommon.Current.ShowForceUpdateDialog(forceUpdateInfo);
+        }
+
+    }
+
+    /// <summary>
+    /// 鑻规灉鍟嗗簵鏌ヨ鍝嶅簲鍖呮牸寮�
+    /// </summary>
+    [System.Serializable]
+    public class ResultPack
+    {
+        public int ResultCount { get; set; }
+        public object Results { get; set; }
+    }
+}

--
Gitblit v1.8.0