From f441a3c49f8b5cedee3e4def6fbb448ef40eb9cb Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 10 六月 2020 14:46:58 +0800 Subject: [PATCH] Crabtree-ON 2020-06-10 基于最新HDL ON 优化问题,Crabtree-ONAPP部分功能同步修改优化调整 1. 增加大图片大文件上传处理. 2.远程连接交互提示,由原来的Loading修改成顶部Tip提示。 3.灯光全开、全关和场景控制多线程发送,和HDLON同样加锁处理。 4.Android ,判断移动网络失败,网络监测修复方法修改,后台前台切换优化。 --- Crabtree/ON/Application.cs | 166 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 138 insertions(+), 28 deletions(-) diff --git a/Crabtree/ON/Application.cs b/Crabtree/ON/Application.cs index 6a5a33e..bf70068 100644 --- a/Crabtree/ON/Application.cs +++ b/Crabtree/ON/Application.cs @@ -1,5 +1,6 @@ 锘縰sing System; using Android; +using Android.App; using Android.Content; using Android.Net; using Android.OS; @@ -40,7 +41,7 @@ /// 璁惧畾涓洪粯璁ゅ惎鍔ㄧ殑Application /// </summary> [Android.App.Application] - public class Application : Android.App.Application + public class Application : Android.App.Application, Android.App.Application.IActivityLifecycleCallbacks { static void reStartApp (Android.App.Application application) { @@ -136,8 +137,16 @@ Utlis.WriteLine ("NetworkStateChanged " + obj); UserConfig.Instance.internetStatus = obj; UserConfig.Instance.SaveUserConfig (); - //缃戠粶鍙樺寲閫氱煡 - EquipmentPublicClass.CheckLinkRemote (obj, false); + ////缃戠粶鍙樺寲閫氱煡 + //EquipmentPublicClass.CheckLinkRemote (obj, false); + + //2020-06-10 鍚屾HDLON 淇敼浼樺寲 + if (!IsEnterBackground) { + //缃戠粶鍙樺寲閫氱煡 + EquipmentPublicClass.CheckLinkRemote (obj, false); + } else { + Console.WriteLine ("HHH 缃戠粶鍙樺寲浣嗗浜庡悗鍙�"); + } }; }; BaseActivity.RefreshUIAction += (activity) => { @@ -160,7 +169,9 @@ }; HDLUtils.SetAuthoritiesName ("com.hdl.crabtreenew.fileProvider"); } + public static bool IsShowTip = true; + void init () { Shared.Application.Skin = UserConfig.Instance.CurrentSkinName; @@ -193,48 +204,147 @@ } }; } + void checkSomeInfo () { //RemoteInfo.Current.ReadMsgList (UserConfig.Instance.tokenID, IsShowTip); //JPushInterface.ClearAllNotifications (this); IsShowTip = true; - var status = isNetworkAvailable (this); - Utlis.WriteLine ("status!!!" + status); + //var status = isNetworkAvailable (this); + //Utlis.WriteLine ("status!!!" + status); + //int internetStatus = 0; + //if (status) { + // var isWifi = isWifiConnected (this); + // if (isWifi) { + // internetStatus = 2; + // } else { + // internetStatus = 1; + // } + //} + //Utlis.WriteLine (""); + + //2020-06-10 淇敼缃戠粶鍒ゆ柇鍑洪敊闂 int internetStatus = 0; - if (status) { - var isWifi = isWifiConnected (this); - if (isWifi) { - internetStatus = 2; - } else { - internetStatus = 1; - } - } - Utlis.WriteLine (""); + internetStatus = NetworkUtils.CheckConnectedMode (); + Console.WriteLine ("internetStatus锛�" + internetStatus); + Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote (internetStatus, false); } - bool isNetworkAvailable (Context context) + //bool isNetworkAvailable (Context context) + //{ + // var cm = (ConnectivityManager)context.GetSystemService (ConnectivityService); + // if (cm == null || cm.ActiveNetworkInfo == null) { + // return false; + // } else { + // return cm.ActiveNetworkInfo.IsAvailable; + // } + //} + + //bool isWifiConnected (Context context) + //{ + // if (context != null) { + // var mConnectivityManager = (ConnectivityManager)context.GetSystemService + // (ConnectivityService); + // var mWiFiNetworkInfo = mConnectivityManager.GetNetworkInfo (ConnectivityType.Wifi); + // if (mWiFiNetworkInfo != null) { + // return mWiFiNetworkInfo.IsAvailable; + // } + // } + // return false; + //} + + + public void OnActivityCreated (Activity activity, Bundle savedInstanceState) { - var cm = (ConnectivityManager)context.GetSystemService (ConnectivityService); - if (cm == null || cm.ActiveNetworkInfo == null) { - return false; - } else { - return cm.ActiveNetworkInfo.IsAvailable; + + } + + public void OnActivityDestroyed (Activity activity) + { + //throw new NotImplementedException (); + } + + public void OnActivityPaused (Activity activity) + { + //throw new NotImplementedException (); + } + + public void OnActivityResumed (Activity activity) + { + //throw new NotImplementedException (); + } + + public void OnActivitySaveInstanceState (Activity activity, Bundle outState) + { + //throw new NotImplementedException (); + } + + public void OnActivityStarted (Activity activity) + { + //throw new NotImplementedException (); + + mCount++; + if (mCount == 1) { + Console.WriteLine ("HHH OnActivityStarted锛歠oreground"); + BusSocketStart (); } } - bool isWifiConnected (Context context) + public void OnActivityStopped (Activity activity) { - if (context != null) { - var mConnectivityManager = (ConnectivityManager)context.GetSystemService - (ConnectivityService); - var mWiFiNetworkInfo = mConnectivityManager.GetNetworkInfo (ConnectivityType.Wifi); - if (mWiFiNetworkInfo != null) { - return mWiFiNetworkInfo.IsAvailable; + + mCount--; + if (mCount == 0) { + Console.WriteLine ("HHH OnActivityStopped锛� background"); + BusSocketStop (); + } + } + + + public override void OnTerminate () + { + base.OnTerminate (); + UnregisterActivityLifecycleCallbacks (this); + } + + int mCount; + + /// <summary> + /// 鏄惁杩涘叆鍚庡彴 + /// </summary> + public bool IsEnterBackground = false; + + DateTime closeTime = DateTime.MinValue; + + /// <summary> + /// BusSocketStop + /// </summary> + void BusSocketStop () + { + IsEnterBackground = true; + Shared.BusSocket.Stop (); + closeTime = DateTime.Now; + } + + + /// <summary> + /// BusSocketStart + /// </summary> + void BusSocketStart () + { + IsEnterBackground = false; + + if (closeTime == DateTime.MinValue) { + closeTime = DateTime.Now; + } else if (closeTime.AddSeconds (10) < DateTime.Now) { + if (CommonPage.IsRemote) { + SmartHome.MqttCommon.DisConnectRemoteMqttClient("closeTime"); } } - return false; + + Shared.BusSocket.Start (6000); } } -- Gitblit v1.8.0