From 7ded9bc93b6beb5d7311ed4d013f90c521f85b5e Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期一, 24 八月 2020 11:47:24 +0800 Subject: [PATCH] 2020.08.24.1 --- ZigbeeApp/GateWay.Droid/Application.cs | 107 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 71 insertions(+), 36 deletions(-) diff --git a/ZigbeeApp/GateWay.Droid/Application.cs b/ZigbeeApp/GateWay.Droid/Application.cs old mode 100755 new mode 100644 index 0a7f5d4..a55f42a --- a/ZigbeeApp/GateWay.Droid/Application.cs +++ b/ZigbeeApp/GateWay.Droid/Application.cs @@ -97,10 +97,13 @@ var req = new SendAuth.Req { Scope = "snsapi_userinfo", State = "ZigbeeApp" }; api.SendReq(req); } - /// <summary>鈥� /// 鎵�鏈夊垵濮嬪寲鍏ㄩ儴鍦ㄨ繖涓柟娉曞疄鐜扳�� /// </summary>鈥� void initAll()鈥� {鈥� BaseActivity.IsEnnableGPS = false; + /// <summary>鈥� /// 鎵�鏈夊垵濮嬪寲鍏ㄩ儴鍦ㄨ繖涓柟娉曞疄鐜扳�� /// </summary>鈥� void initAll()鈥� { + string checkFile = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Shared.Phone.UserCenter.DirNameResourse.OpenGbsFile); + Shared.Application.IsGpsEnable = System.IO.File.Exists(checkFile); + //璁剧疆鏋佸厜璋冭瘯妯″紡锛屼负false鏃跺彧鎵撳嵃璀﹀憡淇℃伅 // System.Console.WriteLine($"AAA : {System.DateTime.Now.ToString()}"); -#if Release鈥� JPushInterface.SetDebugMode(false); +#if Release鈥� JPushInterface.SetDebugMode(true); //淇濆瓨鎵嬫満鍚嶇О鍒版湰鍦版枃浠� //System.Console.WriteLine($"BBB : {System .DateTime .Now .ToString ()}"); @@ -153,9 +156,11 @@ }; 鈥� BaseActivity.OnCreateActoin += (activity, application) => { Shared.Application.FontSize = 12; - AppCenter.Start("4802834a-e7e9-4dd8-93f1-c2f88f0bd464", typeof(Analytics), typeof(Crashes));鈥�#if Release鈥� //淇濆瓨鑾峰彇鐨勬瀬鍏夋湇鍔″櫒涓婄殑娉ㄥ唽ID鍒版湰鍦版枃浠垛�� var registrationId = JPushInterface.GetRegistrationID(activity); + AppCenter.Start("4802834a-e7e9-4dd8-93f1-c2f88f0bd464", typeof(Analytics), typeof(Crashes)); +#if Release鈥� //淇濆瓨鑾峰彇鐨勬瀬鍏夋湇鍔″櫒涓婄殑娉ㄥ唽ID鍒版湰鍦版枃浠垛�� var registrationId = JPushInterface.GetRegistrationID(activity); System.Console.WriteLine("registrationId-鏋佸厜id=" + registrationId); - if (!string.IsNullOrEmpty(registrationId))鈥� {鈥� Shared.Common.Config.Instance.RegistrationID = registrationId;鈥� Shared.Common.Config.Instance.Save();鈥� }鈥�#endif鈥� };鈥� BaseActivity.RefreshUIAction += (activity) => {鈥� Shared.Language.CurrentLanguage = "Chinese";鈥� Shared.Common.CommonPage.Instance.Show();鈥� };鈥� BaseActivity.OnResumeAction += (activity) => {鈥� };鈥� BaseActivity.NetworkStateChanged += (v) =>鈥� {鈥� //缃戠粶鐘舵�佸彉鍖栧鐞嗕簨浠� + if (!string.IsNullOrEmpty(registrationId))鈥� {鈥� Shared.Common.Config.Instance.RegistrationID = registrationId;鈥� Shared.Common.Config.Instance.Save();鈥� }鈥� +#endif鈥� };鈥� BaseActivity.RefreshUIAction += (activity) => {鈥� Shared.Language.CurrentLanguage = "Chinese";鈥� Shared.Common.CommonPage.Instance.Show();鈥� 鈥� };鈥� BaseActivity.OnResumeAction += (activity) => {鈥� };鈥� BaseActivity.NetworkStateChanged += (v) =>鈥� {鈥� //缃戠粶鐘舵�佸彉鍖栧鐞嗕簨浠� Shared.Common.CommonPage.nowNetworkMode = v;鈥� };鈥� BaseActivity.OnDestroyAction += (activity) => {鈥� //socket鍋滄杩炴帴鈥� //ZigBee.Device.ZbGateway.FindGateWaySocket.Stop();鈥� };鈥ㄢ�� HDLUtils.SetAuthoritiesName("com.hdl.home.fileProvider");鈥� }鈥ㄢ�� public static bool IsShowTip = true;鈥� JpushNotificationReceiver myReceiver = new JpushNotificationReceiver { };鈥ㄢ�� /// <summary>鈥� /// 椤圭洰鍚姩鏃剁綉缁滄煡璇⑩�� /// </summary>鈥� void checkSomeInfo()鈥� {鈥� var status = isNetworkAvailable(this);鈥� string internetStatus = "Available";鈥� if (!status)鈥� {鈥� internetStatus = "UnaVailable";鈥� }鈥� else鈥� {鈥� var isWifi = isWifiConnected(this);鈥� if (isWifi)鈥� {鈥� internetStatus = "WiFiConnect";鈥� }鈥� else鈥� {鈥� internetStatus = "MobileConnect";鈥� }鈥� }鈥ㄢ�� int connectState = 0;鈥� if (internetStatus == "UnaVailable")鈥� {鈥� connectState = 0;鈥� }鈥� else if (internetStatus == "WiFiConnect")鈥� {鈥� connectState = 2;鈥� }鈥� else鈥� {鈥� connectState = 1;鈥� }鈥� //ZigBee.Device.ZbGateway.CheckConnection(connectState);鈥� }鈥ㄢ�� /// <summary>鈥� /// 缃戠粶鏄惁鍙敤鈥� /// </summary>鈥� /// <returns><c>true</c>, if network available was ised, <c>false</c> otherwise.</returns>鈥� /// <param name="context">Context.</param>鈥� bool isNetworkAvailable(Context context)鈥� {鈥� var cm = (ConnectivityManager)context.GetSystemService(ConnectivityService);鈥ㄢ�� if (cm == null || cm.ActiveNetworkInfo == null)鈥� {鈥� //褰撳墠缃戠粶涓嶅彲鐢ㄢ�� return false;鈥� }鈥� else鈥� {鈥� return cm.ActiveNetworkInfo.IsAvailable;鈥� }鈥� }鈥ㄢ�� /// <summary>鈥� /// 缃戠粶鏄惁杩炴帴鈥� /// </summary>鈥� /// <returns><c>true</c>, if wifi connected was ised, <c>false</c> otherwise.</returns>鈥� /// <param name="context">Context.</param>鈥� bool isWifiConnected(Context context)鈥� {鈥� if (context != null)鈥� {鈥� var cm = (ConnectivityManager)context.GetSystemService(ConnectivityService);鈥ㄢ�� var mWiFiNetworkInfo = cm.GetNetworkInfo(ConnectivityType.Wifi);鈥� if (Android.Net.NetworkInfo.State.Connected == mWiFiNetworkInfo.GetState())鈥� {鈥� //褰撳墠缃戠粶鏄疻i-Fi杩炴帴鈥� return true;鈥� }鈥ㄢ�� var moWiFiNetworkInfo = cm.GetNetworkInfo(ConnectivityType.Mobile);鈥� if (Android.Net.NetworkInfo.State.Connected == moWiFiNetworkInfo.GetState())鈥� {鈥� //褰撳墠缃戠粶鏄疢obile杩炴帴鈥� return false;鈥� }鈥� }鈥� return false;鈥� } } @@ -242,22 +247,27 @@ /// <param name="bundle">Bundle.</param> private void OpenNotification(Context context, Bundle bundle) { + + Intent i = new Intent(context, typeof(BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class); + i.PutExtras(bundle); + i.SetFlags(ActivityFlags.NewTask); + context.StartActivity(i); + String extras = bundle.GetString(JPushInterface.ExtraExtra); - String myValue = ""; + //String myValue = ""; try { - JSONObject extrasJson = new JSONObject(extras); - myValue = extrasJson.OptString("myKey"); + VideoMethod(extras); + //JSONObject extrasJson = new JSONObject(extras); + //myValue = extrasJson.OptString("myKey"); + } catch (Exception e) { System.Console.WriteLine(TAG, "Unexpected: extras is not a valid json", e); return; } - Intent i = new Intent(context, typeof(BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class); - i.PutExtras(bundle); - i.SetFlags(ActivityFlags.NewTask); - context.StartActivity(i); + //if (TYPE_THIS.equals(myValue)) //{ //Intent mIntent = new Intent(context, ThisActivity.class); @@ -273,6 +283,10 @@ //context.startActivity(mIntent); //} } + + /// <summary> /// android閫氱煡鏍忕偣鍑绘墦寮�鍙瀵硅鐨勬柟娉� /// </summary> /// <param name="hiddenJson">浜戠鎺ㄨ繃鏉ョ殑鏁版嵁</param> private void VideoMethod(string hiddenJson) { var hiddanJson = Newtonsoft.Json.Linq.JObject.Parse(hiddenJson); if (hiddanJson == null) { return; } var json = Newtonsoft.Json.Linq.JObject.Parse(hiddanJson["HiddanJson"].ToString()); if (json == null) { return; } Shared.Phone.VideoPhone.ESVideoInfo eSVideoInfo = new Shared.Phone.VideoPhone.ESVideoInfo(); if (json["uuid"].ToString().Contains(",")) { var uuid = json["uuid"].ToString().Split(','); eSVideoInfo.ESVideoUUID = uuid[0]; } else { eSVideoInfo.ESVideoUUID = json["uuid"].ToString(); } eSVideoInfo.DeviceName = Language.StringByID(Shared.R.MyInternationalizationString.theOutdoorUnit); eSVideoInfo.ESRoomID = int.Parse(json["roomno"].ToString()); if (!string.IsNullOrEmpty(json["unitno"].ToString())) { string str = json["unitno"].ToString(); string str1 = str.Substring(0, 2).TrimStart('0'); string str2 = str.Substring(2, 2).TrimStart('0'); eSVideoInfo.RoomName = str1 + Language.StringByID(Shared.R.MyInternationalizationString.dong) + str2 + Language.StringByID(Shared.R.MyInternationalizationString.unit); } Shared.Phone.VideoPhone.ESVideo.ShowESvideoVideoIntercom(eSVideoInfo); + + } } } @@ -280,31 +294,52 @@ { public static class QRCode { - static ZXing.Mobile.MobileBarcodeScanner scanner; - public static void ScanQRcode(Action<string> action) - { - ((BaseActivity)Shared.Application.Activity).SetCamera(async (obj) => { - if (obj) - { - if (scanner == null) - { - MobileBarcodeScanner.Initialize(Shared.Application.Activity.Application); - scanner = new ZXing.Mobile.MobileBarcodeScanner(); - } - - var result = await scanner.Scan(); - - if (result != null) - action?.Invoke(result.Text); - else - action?.Invoke(null); - - } - else - { - action?.Invoke(null); - } - }); + static ZXing.Mobile.MobileBarcodeScanner scanner; + public static void ScanQRcode(Action<string> action, string cancel = "鍙栨秷", string flashText = "闂厜鐏�", string titleText = "浜岀淮鐮佹壂鎻�") + { + ((BaseActivity)Shared.Application.Activity).SetCamera(async (obj) => + { + if (obj) + { + if (scanner == null) + { + MobileBarcodeScanner.Initialize(Shared.Application.Activity.Application); + var mZXingCustomScanView = new GateWay.Droid.ZXingCustomScanView(Shared.Application.Activity.Application); + mZXingCustomScanView.cancelTextView.Text = cancel; + mZXingCustomScanView.flashTextView.Text = flashText; + mZXingCustomScanView.titleTextView.Text = titleText; + var bOn = false; + scanner = new ZXing.Mobile.MobileBarcodeScanner() + { + UseCustomOverlay = true, + CustomOverlay = mZXingCustomScanView + }; + + mZXingCustomScanView.OnCancel += () => { + + scanner?.Cancel(); + }; + + mZXingCustomScanView.OnTorch += () => + { + bOn = !bOn; + scanner?.Torch(bOn); + }; + } + + var result = await scanner.Scan(); + + if (result != null) + action?.Invoke(result.Text); + else + action?.Invoke(null); + + } + else + { + action?.Invoke(null); + } + }); } public static byte[] BytesFromText(string text, int width = 300, int height = 300) -- Gitblit v1.8.0