From d8545fbd1b36a6766c57c987e5d89862b470fed9 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期四, 03 九月 2020 09:46:29 +0800 Subject: [PATCH] 2020-09-03 1.修改风扇默认为关状态。2.Alexa添加设备时,去掉空调和通用开关选择添加支持。 3.场景增加通用开关添加和发送控制支持,Alexa 的场景同样增加通用开关的支持。 --- Crabtree/ON/Application.cs | 179 ++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 150 insertions(+), 29 deletions(-) diff --git a/Crabtree/ON/Application.cs b/Crabtree/ON/Application.cs index 6a5a33e..ab2173c 100644 --- a/Crabtree/ON/Application.cs +++ b/Crabtree/ON/Application.cs @@ -1,8 +1,10 @@ 锘縰sing System; using Android; +using Android.App; using Android.Content; using Android.Net; using Android.OS; +using Android.Views; //using CN.Jpush.Android.Api; //using CN.Jpush.Android.Service; using Java.Lang; @@ -40,7 +42,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) { @@ -57,6 +59,9 @@ reStartApp (this); return; } + + RegisterActivityLifecycleCallbacks (this); + //Shared.Application.IsGpsEnable = false; base.OnCreate (); @@ -121,7 +126,7 @@ }; Shared.Application.FontSize = 16; - BaseActivity.IsHideVirualButtons = false; + BaseActivity.IsHideVirualButtons = true; ZXing.Mobile.MobileBarcodeScanner.Initialize (this); init (); BaseActivity.OnCreateActoin += (activity, application) => { @@ -136,8 +141,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 +173,9 @@ }; HDLUtils.SetAuthoritiesName ("com.hdl.crabtreenew.fileProvider"); } + public static bool IsShowTip = true; + void init () { Shared.Application.Skin = UserConfig.Instance.CurrentSkinName; @@ -193,49 +208,155 @@ } }; } + 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 (20) < DateTime.Now) { + if (CommonPage.IsRemote) { + SmartHome.MqttCommon.DisConnectRemoteMqttClient ("closeTime"); } } - return false; + + Shared.BusSocket.Start (6000); } + void Hide () { +// Window _window; +// _window = this.GetWindow (); +// WindowManager.LayoutParams params = _window.getAttributes (); +//params.systemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; +// _window.setAttributes (params); + } } } -- Gitblit v1.8.0