| | |
| | | /// 未知版本 |
| | | /// 无需升级 2022-12-08 14:23:07 |
| | | /// </summary> |
| | | string text_UnknownVersion = "无需升级"; |
| | | string text_UnknownVersion = "其他版本"; |
| | | /// <summary> |
| | | /// 读取失败 |
| | | /// </summary> |
| | |
| | | text_Upgraded = "Upgraded"; |
| | | text_Upgrading = "Upgrading"; |
| | | text_UpgradeFailed = "Upgrade failed"; |
| | | text_UnknownVersion = "No upgrade required"; |
| | | text_UnknownVersion = "Other version"; |
| | | text_readFailure = "Read failure"; |
| | | text_search = "Search and configure"; |
| | | text_reading = "Reading"; |
| | |
| | | /// 底部 |
| | | /// </summary> |
| | | Button AddSystemEquipmentButton = new Button () { |
| | | Y = Application.GetRealHeight (846 + 80), |
| | | Y = Application.GetRealHeight (846 + 80 ), |
| | | Height = Application.GetRealHeight (90), |
| | | Text = text_search, |
| | | TextAlignment = TextAlignment.Center, |
| | |
| | | AddChidren (AddSystemEquipmentButton); |
| | | AddSystemEquipmentButton.MouseUpEventHandler += (sender, e) => { |
| | | VerticalScrolViewMiddle.RemoveAll (); |
| | | CommonPage.FindGateway = true; |
| | | MainPage.Loading.Start (); |
| | | System.Threading.Tasks.Task.Run (() => { |
| | | try { |
| | | #region 搜索设备 |
| | | CommonPage.LocalPhoneFindDevice = true; |
| | | CommonPage.RandomHigh = (byte)new Random ().Next (255); |
| | | CommonPage.RandomLow = (byte)new Random ().Next (255); |
| | | CommonPage.GateWayList.Clear (); |
| | | CommonPage.FindGateway = true; |
| | | //如果两次都没有数据反馈,就不读取 |
| | | int readCount = 2; |
| | | while (0 < readCount) { |
| | |
| | | Control control = new Control (); |
| | | control.Send (new Target () { |
| | | IPEndPoint = CommonPage.EndPoint, |
| | | Command = Command.ReadGateway, |
| | | Command = Command.ReadRemark, |
| | | //Command = Command.ReadGateway, |
| | | SubnetID = 0xFF, |
| | | DeviceID = 0xFF, |
| | | AddData = ms.ToArray () |
| | | AddData = new byte [] { }, |
| | | }, SendCount.Zero, false); |
| | | |
| | | control.Send (new Target () { |
| | | IPEndPoint = new System.Net.IPEndPoint (new Net.NetWiFi ().BroadcastIpAddress, 6000), |
| | | Command = Command.ReadGateway, |
| | | SubnetID = 0xFF, |
| | | DeviceID = 0xFF, |
| | | AddData = ms.ToArray () |
| | | }, SendCount.Zero, false); |
| | | //control.Send (new Target () { |
| | | // IPEndPoint = new System.Net.IPEndPoint (new Net.NetWiFi ().BroadcastIpAddress, 6000), |
| | | // Command = Command.ReadRemark, |
| | | // //Command = Command.ReadGateway, |
| | | // SubnetID = 0xFF, |
| | | // DeviceID = 0xFF, |
| | | // AddData = ms.ToArray () |
| | | //}, SendCount.Zero, false); |
| | | |
| | | System.Threading.Thread.Sleep (800); |
| | | //如果数量不相等,就重置次数 |
| | |
| | | readCount = 2; |
| | | } |
| | | } |
| | | CommonPage.FindGateway = false; |
| | | |
| | | |
| | | Application.RunOnMainThread (() => { |
| | | ShowGateWayView (); |
| | | }); |
| | | |
| | | CommonPage.LocalPhoneFindDevice = false; |
| | | #endregion |
| | | } catch (Exception ex) { |
| | | Console.WriteLine (ex.ToString ()); |
| | |
| | | |
| | | Button rightButton1 = new Button () { |
| | | X = Application.GetRealWidth (480), |
| | | Width = Application.GetRealWidth (100), |
| | | Height = Application.GetRealHeight (40), |
| | | Width = Application.GetRealWidth (150), |
| | | Gravity = Gravity.CenterVertical, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = SkinStyle.Current.TextColor1, |
| | |
| | | }; |
| | | wirelessView.AddChidren (rightButton1); |
| | | |
| | | new System.Threading.Thread (() => { |
| | | var serverIPBytes = Control.ControlBytesSendHasReturn (Command.ReadGatewayServerIP, common.SubnetID, common.DeviceID, new byte [] { }); |
| | | if (serverIPBytes != null) { |
| | | try { |
| | | string serverIP1 = serverIPBytes [0].ToString () + "." + serverIPBytes [1].ToString () + "." + |
| | | serverIPBytes [2].ToString () + "." + serverIPBytes [3].ToString (); |
| | | string serverIP1Point = ((serverIPBytes [4] * 256) + serverIPBytes [5]).ToString (); |
| | | string serverIP2 = serverIPBytes [6].ToString () + "." + serverIPBytes [7].ToString () + "." + |
| | | serverIPBytes [8].ToString () + "." + serverIPBytes [9].ToString (); |
| | | string serverIP2Point = ((serverIPBytes [10] * 256) + serverIPBytes [11]).ToString (); |
| | | |
| | | if (serverIP1 == "118.31.3.103" || serverIP2 == "118.31.3.103") { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgraded; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | return; |
| | | }); |
| | | } else if (serverIP1 != "115.29.251.24" && serverIP2 != "115.29.251.24") { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UnknownVersion; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | return; |
| | | }); |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgrading; |
| | | rightButton1.TextColor = 0xFF0000FF; |
| | | }); |
| | | if (serverIP1 == "115.29.251.24") { |
| | | serverIP1 = "118.31.3.103"; |
| | | serverIP1Point = "9999"; |
| | | if (Language.CurrentLanguage != "Chinese" ) { |
| | | //修改国外服务器 |
| | | new System.Threading.Thread (() => { |
| | | var serverIPBytes = Control.ControlBytesSendHasReturn (Command.ReadGatewayServerIP, common.SubnetID, common.DeviceID, new byte [] { }); |
| | | if (serverIPBytes != null) { |
| | | try { |
| | | string serverIP1 = serverIPBytes [0].ToString () + "." + serverIPBytes [1].ToString () + "." + |
| | | serverIPBytes [2].ToString () + "." + serverIPBytes [3].ToString (); |
| | | string serverIP1Point = ((serverIPBytes [4] * 256) + serverIPBytes [5]).ToString (); |
| | | string serverIP2 = serverIPBytes [6].ToString () + "." + serverIPBytes [7].ToString () + "." + |
| | | serverIPBytes [8].ToString () + "." + serverIPBytes [9].ToString (); |
| | | string serverIP2Point = ((serverIPBytes [10] * 256) + serverIPBytes [11]).ToString (); |
| | | |
| | | serverIPBytes [0] = 118; |
| | | serverIPBytes [1] = 31; |
| | | serverIPBytes [2] = 3; |
| | | serverIPBytes [3] = 103; |
| | | serverIPBytes [4] = Convert.ToByte (9999 / 256); |
| | | serverIPBytes [5] = Convert.ToByte (9999 % 256); |
| | | |
| | | } |
| | | if (serverIP2 == "115.29.251.24") { |
| | | serverIP2 = "118.31.3.103"; |
| | | serverIP2Point = "9999"; |
| | | |
| | | serverIPBytes [0 + 6] = 118; |
| | | serverIPBytes [1 + 6] = 31; |
| | | serverIPBytes [2 + 6] = 3; |
| | | serverIPBytes [3 + 6] = 103; |
| | | serverIPBytes [4 + 6] = Convert.ToByte (9999 / 256); |
| | | serverIPBytes [5 + 6] = Convert.ToByte (9999 % 256); |
| | | |
| | | } |
| | | var mobytes = Control.ControlBytesSendHasReturn (Command.SetGateWayModelInternetInfo, common.SubnetID, common.DeviceID, serverIPBytes); |
| | | if (mobytes == null || mobytes [0] == 0xF5) { |
| | | if (serverIP1 == "157.175.231.123" || serverIP2 == "157.175.231.123") {//巴林服务器 |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgraded; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | }); |
| | | } else if (serverIP1 == "115.29.251.24" || serverIP2 == "115.29.251.24"//旧服务器 |
| | | || serverIP1 == "118.31.3.103" || serverIP2 == "118.31.3.103") {//新国内服务器 |
| | | |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgrading; |
| | | rightButton1.TextColor = 0xFF0000FF; |
| | | }); |
| | | if (serverIP1 == "115.29.251.24" || serverIP1 == "118.31.3.103") {//旧服务器//新国内服务器 |
| | | serverIP1 = "157.175.231.123";//巴林服务器 |
| | | serverIP1Point = "9999"; |
| | | |
| | | serverIPBytes [0] = 157; |
| | | serverIPBytes [1] = 175; |
| | | serverIPBytes [2] = 231; |
| | | serverIPBytes [3] = 123; |
| | | serverIPBytes [4] = Convert.ToByte (9999 / 256); |
| | | serverIPBytes [5] = Convert.ToByte (9999 % 256); |
| | | |
| | | } |
| | | if (serverIP2 == "115.29.251.24" || serverIP2 == "118.31.3.103") {//旧服务器//新国内服务器 |
| | | serverIP2 = "157.175.231.123";//巴林服务器 |
| | | serverIP2Point = "9999"; |
| | | |
| | | serverIPBytes [0 + 6] = 157; |
| | | serverIPBytes [1 + 6] = 175; |
| | | serverIPBytes [2 + 6] = 231; |
| | | serverIPBytes [3 + 6] = 123; |
| | | serverIPBytes [4 + 6] = Convert.ToByte (9999 / 256); |
| | | serverIPBytes [5 + 6] = Convert.ToByte (9999 % 256); |
| | | |
| | | } |
| | | var mobytes = Control.ControlBytesSendHasReturn (Command.SetGateWayModelInternetInfo, common.SubnetID, common.DeviceID, serverIPBytes); |
| | | if (mobytes == null || mobytes [0] == 0xF5) { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UpgradeFailed; |
| | | rightButton1.TextColor = 0x99ff0000; |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UpgradeFailed; |
| | | rightButton1.TextColor = 0x99ff0000; |
| | | }); |
| | | }); |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgraded; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | }); |
| | | }); |
| | | } |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UnknownVersion; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | }); |
| | | } |
| | | |
| | | |
| | | } catch (Exception ex) { |
| | | Console.WriteLine ("一端口远程ip信息转译失败."); |
| | | } |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_readFailure; |
| | | rightButton1.TextColor = 0x99FF0000; |
| | | }); |
| | | } |
| | | }) { IsBackground = true }.Start (); |
| | | |
| | | } else { |
| | | new System.Threading.Thread (() => { |
| | | var serverIPBytes = Control.ControlBytesSendHasReturn (Command.ReadGatewayServerIP, common.SubnetID, common.DeviceID, new byte [] { }); |
| | | if (serverIPBytes != null) { |
| | | try { |
| | | string serverIP1 = serverIPBytes [0].ToString () + "." + serverIPBytes [1].ToString () + "." + |
| | | serverIPBytes [2].ToString () + "." + serverIPBytes [3].ToString (); |
| | | string serverIP1Point = ((serverIPBytes [4] * 256) + serverIPBytes [5]).ToString (); |
| | | string serverIP2 = serverIPBytes [6].ToString () + "." + serverIPBytes [7].ToString () + "." + |
| | | serverIPBytes [8].ToString () + "." + serverIPBytes [9].ToString (); |
| | | string serverIP2Point = ((serverIPBytes [10] * 256) + serverIPBytes [11]).ToString (); |
| | | |
| | | if (serverIP1 == "118.31.3.103" || serverIP2 == "118.31.3.103") { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgraded; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | return; |
| | | }); |
| | | } else if (serverIP1 != "115.29.251.24" && serverIP2 != "115.29.251.24") { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UnknownVersion; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | return; |
| | | }); |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgraded; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | }); |
| | | rightButton1.Text = text_Upgrading; |
| | | rightButton1.TextColor = 0xFF0000FF; |
| | | }); |
| | | } |
| | | } |
| | | } catch (Exception ex) { |
| | | Console.WriteLine ("一端口远程ip信息转译失败."); |
| | | } |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UnknownVersion; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | }); |
| | | } |
| | | }) { IsBackground = true }.Start (); |
| | | } |
| | | if (serverIP1 == "115.29.251.24") { |
| | | serverIP1 = "118.31.3.103"; |
| | | serverIP1Point = "9999"; |
| | | |
| | | serverIPBytes [0] = 118; |
| | | serverIPBytes [1] = 31; |
| | | serverIPBytes [2] = 3; |
| | | serverIPBytes [3] = 103; |
| | | serverIPBytes [4] = Convert.ToByte (9999 / 256); |
| | | serverIPBytes [5] = Convert.ToByte (9999 % 256); |
| | | |
| | | } |
| | | if (serverIP2 == "115.29.251.24") { |
| | | serverIP2 = "118.31.3.103"; |
| | | serverIP2Point = "9999"; |
| | | |
| | | serverIPBytes [0 + 6] = 118; |
| | | serverIPBytes [1 + 6] = 31; |
| | | serverIPBytes [2 + 6] = 3; |
| | | serverIPBytes [3 + 6] = 103; |
| | | serverIPBytes [4 + 6] = Convert.ToByte (9999 / 256); |
| | | serverIPBytes [5 + 6] = Convert.ToByte (9999 % 256); |
| | | |
| | | } |
| | | var mobytes = Control.ControlBytesSendHasReturn (Command.SetGateWayModelInternetInfo, common.SubnetID, common.DeviceID, serverIPBytes); |
| | | if (mobytes == null || mobytes [0] == 0xF5) { |
| | | Application.RunOnMainThread (() => { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_UpgradeFailed; |
| | | rightButton1.TextColor = 0x99ff0000; |
| | | }); |
| | | }); |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_Upgraded; |
| | | rightButton1.TextColor = 0xFF00FF00; |
| | | }); |
| | | }); |
| | | } |
| | | } |
| | | } catch (Exception ex) { |
| | | Console.WriteLine ("一端口远程ip信息转译失败."); |
| | | } |
| | | } else { |
| | | Application.RunOnMainThread (() => { |
| | | rightButton1.Text = text_readFailure; |
| | | rightButton1.TextColor = 0x99ff0000; |
| | | }); |
| | | } |
| | | }) { IsBackground = true }.Start (); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |