From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 30 八月 2022 09:37:38 +0800
Subject: [PATCH] 合并了IOS的代码
---
ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs | 134 ++++++++++++++++++++------------------------
1 files changed, 62 insertions(+), 72 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs
old mode 100755
new mode 100644
index e4266a6..e10d95a
--- a/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs
@@ -42,12 +42,13 @@
/// <summary>
/// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
/// </summary>
- public void ShowForm()
+ /// <param name="autoUpdate">鎵撳紑鐣岄潰涔嬪悗,濡傛灉鏈夋柊鐗堟湰,鏄惁鐩存帴鍗囩骇</param>
+ public void ShowForm(bool autoUpdate)
{
//璁剧疆鏍囬淇℃伅
base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uAboutMe));
//鍒濆鍖栦腑閮ㄦ帶浠�
- this.InitMiddleFrame();
+ this.InitMiddleFrame(autoUpdate);
}
/// <summary>
/// Closes the form.
@@ -65,7 +66,8 @@
/// <summary>
/// 鍒濆鍖栦腑閮ㄦ帶浠�
/// </summary>
- private void InitMiddleFrame()
+ /// <param name="autoUpdate">鎵撳紑鐣岄潰涔嬪悗,濡傛灉鏈夋柊鐗堟湰,鏄惁鐩存帴鍗囩骇</param>
+ private void InitMiddleFrame(bool autoUpdate)
{
//澶撮儴鐧借壊鑳屾櫙
var frameLogo = new FrameLayoutBase();
@@ -157,6 +159,11 @@
//鏇存柊鏈�鏂扮増
btnRightView.TextID = R.MyInternationalizationString.Update;
rowUpdate.CanClick = true;
+ if (autoUpdate == true)
+ {
+ //鐩存帴鍗囩骇
+ rowUpdate.ButtonClickEvent?.Invoke(null, null);
+ }
}
else
{
@@ -203,9 +210,10 @@
if (results[0] == null)
{
return false;
- }
- var newVersion = results[0]["version"]?.ToString();
- var updateContent = results[0]["releaseNotes"]?.ToString();
+ }
+ var newVersion = results[0]["version"]?.ToString();
+
+ var updateContent = results[0]["releaseNotes"]?.ToString();
if (newVersion.CompareTo(CommonPage.CodeIDString) > 0)
{
return true;
@@ -249,36 +257,35 @@
#elif Android
try
{
- var pra = new { RequestVersion = CommonPage.RequestVersion, DistributedMark = distributedMark };
- var result = HdlFirmwareUpdateLogic.Current.RequestZigbeeHttps("FirmwareMana/DownloadPlatformUploadFirmwarePreLength", pra, 8);
- if (result == null || result.Length == 0)
+ var requestObj = new SendDataToServer.DownLoadAndroidApk
{
- HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail));
- return;
- }
- var jobject = Newtonsoft.Json.Linq.JObject.Parse(Encoding.UTF8.GetString(result));
- if (jobject.Property("StateCode") == null || jobject["StateCode"].ToString().ToUpper() != "SUCCESS")
- {
- HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail));
- return;
- }
+ RequestVersion = CommonPage.RequestVersion,
+ DistributedMark = distributedMark
+ };
+ var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj);
- var bytesTotalLength = Newtonsoft.Json.JsonConvert.DeserializeObject<long>(jobject["ResponseData"].ToString());
+ var bytesTotalLengthResult = CommonPage.Instance.RequestHttpsZigbeeAsync("FirmwareMana/DownloadPlatformUploadFirmwarePreLength", Encoding.UTF8.GetBytes(requestJson));
+ if (bytesTotalLengthResult == null || bytesTotalLengthResult.ResponseData == null)
+ {
+ CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.UpdateAppFail);
+ return;
+ }
+ var bytesTotalLength = Newtonsoft.Json.JsonConvert.DeserializeObject<long>(bytesTotalLengthResult.ResponseData.ToString());
if (bytesTotalLength == 0)
{
- HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail));
+ CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.UpdateAppFail);
return;
}
ApkBytesTotalLength = bytesTotalLength;
- var bytes = await DownLoadApkAsync("FirmwareMana/DownloadPlatformUploadFirmware", Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(pra)));
+ var bytes = await DownLoadApkAsync("FirmwareMana/DownloadPlatformUploadFirmware", Encoding.UTF8.GetBytes(requestJson));
if (bytes == null)
{
- HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail));
+ CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.UpdateAppFail);
return;
}
if (bytes.ToString().Contains("DownloadFail"))
{
- HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.FailedPleaseTryAgain));
+ CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain);
return;
}
var path = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, "home.apk");
@@ -356,39 +363,46 @@
/// 鑾峰彇 Android-APP 鐗堟湰淇℃伅
/// </summary>
/// <returns>The https app version async.</returns>
- private ApkInfoOBJ RequestHttpsAndroidAppVersionAsync()
+ private Common.ResponseEntity.ApkInfoOBJ RequestHttpsAndroidAppVersionAsync()
{
try
{
- var pra = new { Name = "ZigbeeApp", RequestVersion = Common.CommonPage.RequestVersion };
- var result = HdlFirmwareUpdateLogic.Current.RequestZigbeeHttps("FirmwareMana/DetectionPlatformUploadFirmware", pra, 4);
- if (result == null || result.Length == 0)
+ var requestOBJ = new SendDataToServer.GetAndroidApkInfoOBJ
+ {
+ Name = "ZigbeeApp",
+ RequestVersion = CommonPage.CodeIDString
+ };
+ var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestOBJ);
+ var result = CommonPage.Instance.RequestHttpsZigbeeAsync("FirmwareMana/DetectionPlatformUploadFirmware", System.Text.Encoding.UTF8.GetBytes(requestJson));
+ if (result == null)
{
return null;
}
- var jobject = Newtonsoft.Json.Linq.JObject.Parse(Encoding.UTF8.GetString(result));
- if (jobject.Property("StateCode") == null || jobject["StateCode"].ToString().ToUpper() != "SUCCESS")
+ if (result.StateCode.ToUpper() == "SUCCESS")
{
- return null;
- }
- string resultValue = jobject["ResponseData"].ToString();
-
- var responeData = Newtonsoft.Json.JsonConvert.DeserializeObject<ApkInfoRes>(resultValue);
- if (responeData == null || responeData.pageData == null || responeData.pageData.Count == 0)
- {
- return null;
- }
-
- ApkInfoOBJ apkInfoOBJ = null;
- for (int i = 0; i < responeData.pageData.Count; i++)
- {
- var apkInfo = responeData.pageData[i];
- if (apkInfoOBJ == null || apkInfo.FirmwareVersion.CompareTo(apkInfoOBJ.FirmwareVersion) > 0)
+ if (result.ResponseData == null)
{
- apkInfoOBJ = apkInfo;
+ return null;
}
+
+ var responeData = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.ResponseEntity.ApkInfoRes>(result.ResponseData.ToString());
+ if (responeData == null || responeData.pageData == null || responeData.pageData.Count == 0)
+ {
+ return null;
+ }
+
+ Common.ResponseEntity.ApkInfoOBJ apkInfoOBJ = null;
+ for (int i = 0; i < responeData.pageData.Count; i++)
+ {
+ var apkInfo = responeData.pageData[i];
+ if (apkInfoOBJ == null || apkInfo.FirmwareVersion.CompareTo(apkInfoOBJ.FirmwareVersion) > 0)
+ {
+ apkInfoOBJ = apkInfo;
+ }
+ }
+ return apkInfoOBJ;
}
- return apkInfoOBJ;
+ return null;
}
catch (Exception ex)
{
@@ -407,9 +421,10 @@
try
{
webClient.Headers.Add(HttpRequestHeader.ContentType, "application/json");
+ webClient.Headers.Add(HttpRequestHeader.Authorization, Config.Instance.Token);
webClient.UploadProgressChanged += Client_DownloadProgressChanged;
webClient.UploadDataCompleted += Client_UploadCompleted;
- var result = webClient.UploadDataTaskAsync($"{HdlFirmwareUpdateLogic.Current.RequestHttpsHost}/{requestUrl}", "POST", byteData);
+ var result = webClient.UploadDataTaskAsync($"{CommonPage.RequestHttpsHost}/{requestUrl}", "POST", byteData);
if (result == null)
{
return null;
@@ -463,30 +478,5 @@
}
#endif
- //[Serializable]
- public class ApkInfoRes
- {
- public int PageIndex;
- public int PageSize;
- public int TotalCount;
- public int TotalPages;
- public bool HasPreviousPage;
- public bool HasNextPage;
- public List<ApkInfoOBJ> pageData = new List<ApkInfoOBJ> { };
- }
-
- /// <summary>
- /// 涓嬭浇apk
- /// </summary>
- [Serializable]
- public class ApkInfoOBJ
- {
- public string Name { get; set; }
- public string FirmwareVersion { get; set; }
- public string Remarks { get; set; }
- public string DistributedMark { get; set; }
- public string Id { get; set; }
- public string CreatedOnUtc { get; set; }
- }
}
}
--
Gitblit v1.8.0