From 351bdda734832d821a9764b0cde8be5d83c4ec50 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 01 十二月 2022 09:56:25 +0800
Subject: [PATCH] 2022年12月01日09:56:23
---
ZigbeeApp/Shared/Common/CommonPage.cs | 99 ++++++++++++++++++++++++++-----------------------
1 files changed, 53 insertions(+), 46 deletions(-)
diff --git a/ZigbeeApp/Shared/Common/CommonPage.cs b/ZigbeeApp/Shared/Common/CommonPage.cs
old mode 100755
new mode 100644
index bc830bf..6aab059
--- a/ZigbeeApp/Shared/Common/CommonPage.cs
+++ b/ZigbeeApp/Shared/Common/CommonPage.cs
@@ -4,7 +4,7 @@
using System.Linq;
using System.Net;
using System.Text;
-using Shared.Phone.UserCenter.Abount;
+
namespace Shared.Common
{
public class CommonPage : UIDrawerLayout
@@ -28,21 +28,16 @@
public static Loading Loading = new Loading();
public void Show()
{
- //if (Application.IsPad)
- //{
- // Application.DesignWidth = 2048;
- // Application.DesignHeight = 1536;
- // Pad.MainPage.Instance .Show();
- // }
- //else
- //{
Application.DesignWidth = 1080;
Application.DesignHeight = 1920;
Application.MainPage.AddChidren(this);
AddChidren(Phone.UserView.HomePage.Instance);
Application.MainPage.AddChidren(Loading);
- //}
- Phone.UserView.HomePage.Instance.InitPage();
+
+ Phone.UserView.HomePage.Instance.InitPage();
+
+ //璁剧疆椤堕儴鐘舵�佹爮鏂囧瓧涓洪粦鑹�
+ Application.SetStatusBarTextBlack(true);
}
//public static string RequestHttpsHost = "https://global.hdlcontrol.com/HangZhouHdlCloudApi";
@@ -50,12 +45,11 @@
/// <summary>
/// 鐗堟湰鍙�
/// </summary>
- public static string CodeIDString = "1.1.0120061001";
+ public static string CodeIDString = "1.1.0121070801";
/// <summary>
/// 娉ㄥ唽鏉ユ簮(0:HDL On 1:Zigbee)
/// </summary>
public static int RegisterSoruceFromZIGBEE = 0;
- public static string Source = "ZIGBEE";
/// <summary>
/// Company 鐢ㄦ埛鍏徃鐢ㄤ簬鍏徃App瀹氬埗鐗� 榛樿0
/// </summary>
@@ -87,17 +81,9 @@
/// </summary>
public static string PhoneZoneStr = "86";
/// <summary>
- /// 鎵嬫満鍖哄悕绉�
- /// </summary>
- public static string ZoneNameStr = "涓浗澶ч檰";
- /// <summary>
/// APP瀹藉害 -- 1080
/// </summary>
public static int AppRealWidth = 1080;
- /// <summary>
- /// 璇诲彇澶氬皯椤�--999
- /// </summary>
- public static int PageSize = 999;
/// <summary>
/// 鐢ㄤ簬涓浗澶ч檰楠岃瘉鎵嬫満鍙锋鍒欒〃杈惧紡
@@ -111,10 +97,6 @@
/// 鐢ㄤ簬楠岃瘉閭姝e垯琛ㄨ揪寮�
/// </summary>
public static string EmailRegexStr = "^\\s*([A-Za-z0-9_-]+(\\.\\w+)*@(\\w+\\.)+\\w{2,5})\\s*$";
- /// <summary>
- /// 褰撳墠缃戠粶杩炴帴鐨勬ā寮� 0:娌℃湁缃戠粶 1锛氳繙绋嬭繛鎺ワ紝涔熷彨3G,4G 2锛歐IFI
- /// </summary>
- public static int nowNetworkMode = 0;
/// <summary>
/// 瀹夊崜鐨勭郴缁熻繑鍥炴寜閿兘鍚︽寜涓�(姣斿鍦ㄥ浠借繕鍘熸椂,涓嶈兘鎸変笅杩斿洖閿�)
/// </summary>
@@ -126,10 +108,11 @@
/// </summary>
/// <param name="requestUrl">璇锋眰Url</param>
/// <param name="byteData">璇锋眰鐨勭殑鏁版嵁</param>
+ /// <param name="timeout">瓒呮椂,榛樿5绉�</param>
/// <returns>寰楀埌鍝嶅簲鐨勬暟鎹�</returns>
- public async System.Threading.Tasks.Task<Shared.Common.ResponseEntity.ResponsePack> RequestHttpsZigbeeAsync(string requestUrl, byte[] byteData)
+ public ResponseEntity.ResponsePack RequestHttpsZigbeeAsync(string requestUrl, byte[] byteData, int timeout = 5)
{
- string result = await this.RequestHttpsZigbeeResultAsync(requestUrl, byteData);
+ string result = this.RequestHttpsZigbeeResultAsync(requestUrl, byteData, timeout);
if (result != null)
{
try
@@ -151,10 +134,11 @@
/// </summary>
/// <param name="requestUrl">璇锋眰Url</param>
/// <param name="byteData">璇锋眰鐨勭殑鏁版嵁</param>
+ /// <param name="timeout">瓒呮椂,榛樿5绉�</param>
/// <returns>寰楀埌鍝嶅簲鐨勬暟鎹�</returns>
- public async System.Threading.Tasks.Task<string> RequestHttpsZigbeeResultAsync(string requestUrl, byte[] byteData)
+ public string RequestHttpsZigbeeResultAsync(string requestUrl, byte[] byteData, int timeout = 5)
{
- var result = await RequestHttpsZigbeeBytesResultAsync(requestUrl, byteData);
+ var result = RequestHttpsZigbeeBytesResultAsync(requestUrl, byteData, "POST", timeout);
if (result != null)
{
return Encoding.UTF8.GetString(result);
@@ -169,12 +153,13 @@
/// <param name="requestUrl">璇锋眰Url</param>
/// <param name="byteData">璇锋眰鐨勭殑鏁版嵁</param>
/// <param name="requestMethod">POST 鎴栬�� GET 绛夌瓑</param>
+ /// <param name="timeout">瓒呮椂,榛樿5绉�</param>
/// <returns>寰楀埌鍝嶅簲鐨勬暟鎹�</returns>
- public async System.Threading.Tasks.Task<byte[]> RequestHttpsZigbeeBytesResultAsync(string requestUrl, byte[] byteData, string requestMethod = "POST")
+ public byte[] RequestHttpsZigbeeBytesResultAsync(string requestUrl, byte[] byteData, string requestMethod = "POST", int timeout = 5)
{
//璇锋眰Url鐨勫畬鎴愯矾寰�
var fullUrl = $"{RequestHttpsHost}/{requestUrl}";
- return await this.DoRequestZigbeeHttpsInterface(fullUrl, byteData, Config.Instance.Token, requestMethod);
+ return this.DoRequestZigbeeHttpsInterface(fullUrl, byteData, Config.Instance.Token, requestMethod, timeout);
}
/// <summary>
@@ -184,13 +169,14 @@
/// <param name="requestUrl">璇锋眰Url</param>
/// <param name="byteData">璇锋眰鐨勭殑鏁版嵁</param>
/// <param name="requestMethod">POST 鎴栬�� GET 绛夌瓑</param>
+ /// <param name="timeout">瓒呮椂,榛樿5绉�</param>
/// <returns>寰楀埌鍝嶅簲鐨勬暟鎹�</returns>
- public async System.Threading.Tasks.Task<byte[]> RequestZigbeeHttpsByAdmin(string requestUrl, byte[] byteData, string requestMethod = "POST")
+ public byte[] RequestZigbeeHttpsByAdmin(string requestUrl, byte[] byteData, string requestMethod = "POST", int timeout = 5)
{
//璇锋眰Url鐨勫畬鎴愯矾寰�
var fullUrl = $"{Config.Instance.AdminRequestBaseUrl}/{requestUrl}";
- return await this.DoRequestZigbeeHttpsInterface(fullUrl, byteData, Config.Instance.AdminRequestToken, requestMethod);
- }
+ return this.DoRequestZigbeeHttpsInterface(fullUrl, byteData, Config.Instance.AdminRequestToken, requestMethod, timeout);
+ }
/// <summary>
/// 璇锋眰鏈嶅姟鍣ㄦ柟娉�
@@ -200,8 +186,9 @@
/// <param name="byteData">璇锋眰鐨勭殑鏁版嵁</param>
/// <param name="token">token</param>
/// <param name="requestMethod">POST 鎴栬�� GET 绛夌瓑</param>
+ /// <param name="timeout">瓒呮椂,榛樿5绉�</param>
/// <returns>寰楀埌鍝嶅簲鐨勬暟鎹�</returns>
- public async System.Threading.Tasks.Task<byte[]> DoRequestZigbeeHttpsInterface(string requestFullUrl, byte[] byteData, string token, string requestMethod = "POST")
+ public byte[] DoRequestZigbeeHttpsInterface(string requestFullUrl, byte[] byteData, string token, string requestMethod = "POST", int timeout = 5)
{
try
{
@@ -211,7 +198,10 @@
//2锛� 鍒濆鍖朒ttpWebRequest瀵硅薄
webRequest.Method = requestMethod;
- webRequest.Timeout = 10 * 1000;
+ webRequest.Timeout = timeout * 1000;
+ //鍙栨秷浣跨敤浠g悊璁块棶
+ webRequest.Proxy = null;
+ webRequest.UseDefaultCredentials = false;
if (token != null)
{
//瀵瑰簲寰俊缃戝潃
@@ -253,11 +243,18 @@
return ms.ToArray();
}
}
- catch (Exception e)
+ catch (WebException e)
{
-#if DEBUG
- System.Console.WriteLine(e.Message);
-#endif
+ if (e.Status == WebExceptionStatus.ConnectFailure//鐢辨湁缃戠粶鍒囨崲鍒版棤缃戠粶鏃惰Е鍙�
+ || e.Status == WebExceptionStatus.Timeout//瓒呮椂
+ || e.Status == WebExceptionStatus.NameResolutionFailure)//鏈韩灏辨槸鏃犵綉缁滄椂鍚姩鏃惰Е鍙�
+ {
+ Phone.UserCenter.HdlWifiLogic.Current.CanAccessHttp = false;
+ }
+ return null;
+ }
+ catch (Exception e)
+ {
return null;
}
}
@@ -359,8 +356,12 @@
/// 鐧诲綍鎴愬姛鍚庝笂鎶ヨ澶噄d绛夌浉鍏充俊鎭粰鍚庣
/// </summary>
/// <returns>杩斿洖鐘舵�佺爜</returns>
- public async System.Threading.Tasks.Task<string> PushRegID()
+ public string PushRegID()
{
+#if DEBUG
+ //璋冭瘯涓嶉渶瑕佸彂閫佽繖涓笢瑗�
+ return null;
+#endif
try
{
string deviceAlias;
@@ -370,8 +371,9 @@
deviceType = "iphone";
#elif Android
deviceAlias = Android.OS.Build.Manufacturer;
- deviceType = "android";
-#endif
+ deviceType = "android";
+#endif
+
var RegIDObj = new SendDataToServer.SignZigbeeNeedPushRegIDObj()
{
RegID = Shared.Common.Config.Instance.RegistrationID,
@@ -379,11 +381,16 @@
DeviceType = deviceType
};
var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(RegIDObj);
- var reverObj = await CommonPage.Instance.RequestHttpsZigbeeAsync("ZigbeeUsers/SignZigbeeNeedPushRegID", System.Text.Encoding.UTF8.GetBytes(requestJson));
+ var reverObj = CommonPage.Instance.RequestHttpsZigbeeAsync("ZigbeeUsers/SignZigbeeNeedPushRegID", System.Text.Encoding.UTF8.GetBytes(requestJson), 4);
if (reverObj == null)
- {
+ {
+ //璋冭瘯:璁板綍鏋佸厜ID
+ Phone.UserCenter.HdlLogLogic.Current.WriteOtherText(Shared.Phone.UserCenter.DirNameResourse.JiguangFile, "send:" + RegIDObj.RegID + " fail,receive obj is null", false, true);
return null;
- }
+ }
+ //璋冭瘯:璁板綍鏋佸厜ID
+ Phone.UserCenter.HdlLogLogic.Current.WriteOtherText(Shared.Phone.UserCenter.DirNameResourse.JiguangFile, "send:" + RegIDObj.RegID + " result:" + reverObj.StateCode, false, true);
+
return reverObj.StateCode;
}
catch
--
Gitblit v1.8.0