From 9ab5bd54fadd8fc9c542b48c99a117a4e182669b Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 14 十月 2021 16:37:56 +0800
Subject: [PATCH] 智能空开能源界面数据更新

---
 HDL-ON_Android/Other/JPush/JPushReceiver.cs |  128 +++++++++++++++++++++++++++++-------------
 1 files changed, 87 insertions(+), 41 deletions(-)

diff --git a/HDL-ON_Android/Other/JPush/JPushReceiver.cs b/HDL-ON_Android/Other/JPush/JPushReceiver.cs
index 2665c1d..9438176 100644
--- a/HDL-ON_Android/Other/JPush/JPushReceiver.cs
+++ b/HDL-ON_Android/Other/JPush/JPushReceiver.cs
@@ -1,26 +1,30 @@
 锘�
+using System;
+using Android.App;
 using Android.Content;
 using CN.Jpush.Android.Api;
 using CN.Jpush.Android.Service;
 using HDL_ON;
 using HDL_ON.DAL.Server;
 using Shared;
+using Android.OS;
 
 namespace HDL_ON_Android
-{
-    
+{
+
     [BroadcastReceiver(Enabled = true, Exported = false)]
     [Android.App.IntentFilter(new string[]
     {
         "cn.jpush.android.intent.RECEIVE_MESSAGE"
     },
-    Categories=new string[] 
+    Categories = new string[]
     {
         "com.hdl.onpro"
     })]
     public class JPushReceiver : JPushMessageReceiver
-    {
-
+    {
+
+
         private static string TAG = "JPushReceiver";
         /// <summary>
         /// 鐢ㄦ埛鐐瑰嚮鎵撳紑浜嗛�氱煡
@@ -30,7 +34,8 @@
         /// <param name="notificationMessage"></param>
         public override void OnNotifyMessageOpened(Context context, NotificationMessage notificationMessage)
         {
-            base.OnNotifyMessageOpened(context, notificationMessage);
+            //2020-12-23 瑙e喅鐐瑰嚮閫氱煡鏍忔墦寮�涓嶄簡APP闂
+            //base.OnNotifyMessageOpened(context, notificationMessage);
 
             OpenNotification(context, notificationMessage);
         }
@@ -55,22 +60,29 @@
             if (jpushExpandData != null && jpushExpandData.messageType != null)
             {
                 pushMes.messageType = jpushExpandData.messageType;
-                System.Console.WriteLine("PushMes messageType : " + pushMes.messageType);
+                pushMes.expantContent = jpushExpandData.expantContent;
+                pushMes.HomeId = jpushExpandData.homeId;
+                Utlis.WriteLine("PushMes messageType : " + pushMes.messageType);
             }
 
-            System.Console.WriteLine("PushMes title : " + pushMes.Title);
-            System.Console.WriteLine("PushMes message : " + pushMes.Content);
-            System.Console.WriteLine("PushMes extras : " + pushMes.Extras);
+            Utlis.WriteLine("PushMes title : " + pushMes.Title);
+            Utlis.WriteLine("PushMes message : " + pushMes.Content);
+            Utlis.WriteLine("PushMes extras : " + pushMes.Extras);
+            Utlis.WriteLine("PushMes HomeId : " + pushMes.HomeId);
+
+            Shared.Application.RunOnMainThread(() =>
+            {
+                HDLCommon.Current.AdjustPushMessage(pushMes);
+            });
 
-            HDLCommon.Current.AdjustPushMessage(pushMes);
-        }
-
+        }
+
         /// <summary>
         /// 
         /// </summary>
         /// <param name="pushMes"></param>
         /// <returns></returns>
-        ExpandData GetJPushExpandData(JPushMessageInfo pushMes)
+        static ExpandData GetJPushExpandData(JPushMessageInfo pushMes)
         {
             try
             {
@@ -96,7 +108,6 @@
         public override void OnRegister(Context context, string p1)
         {
             base.OnRegister(context, p1);
-
             Utlis.WriteLine("JPushOnRegister: " + p1);
         }
 
@@ -110,8 +121,6 @@
         //{
         //    try
         //    {
-               
-
         //        if (JPushMessageInfo.Extras.Contains("Offline") == true)
         //        {
         //            Shared.Application.RunOnMainThread(() =>
@@ -139,12 +148,13 @@
         //}
 
         /// <summary>
-        /// 鎵撳紑娑堟伅鏄剧ず鐣岄潰
+        /// 鎵撳紑娑堟伅鏄剧ず鐣岄潰.010000
         /// </summary>
         /// <param name="context"></param>
         /// <param name="notificationMessage"></param>
-        private void OpenNotification(Context context, NotificationMessage notificationMessage)
-        {
+        public static void OpenNotification(Context context, NotificationMessage notificationMessage)
+        {
+
             try
             {
                 var pushMes = new JPushMessageInfo()
@@ -158,33 +168,69 @@
                 if (jpushExpandData != null && jpushExpandData.messageType != null)
                 {
                     pushMes.messageType = jpushExpandData.messageType;
-                    System.Console.WriteLine("PushMes messageType : " + pushMes.messageType);
+                    pushMes.expantContent = jpushExpandData.expantContent; ;
+                    pushMes.HomeId = jpushExpandData.homeId;
+                    Utlis.WriteLine("PushMes messageType : " + pushMes.messageType);
                 }
 
-                System.Console.WriteLine("PushMes title : " + pushMes.Title);
-                System.Console.WriteLine("PushMes message : " + pushMes.Content);
-                System.Console.WriteLine("PushMes extras : " + pushMes.Extras);
-
-                if (Shared.Application.Activity == null)
-                {
-                    var tempIntent = new Intent(context, typeof(Shared.BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class);
-                    tempIntent.SetFlags(ActivityFlags.BroughtToFront);
-                    context.StartActivity(tempIntent);
-
-                    HDLCommon.Current.AdjustPushMessage(pushMes);
-                }
-                else
-                {
-                    (Shared.Application.Activity as BaseActivity).MoveToFront();
-
-                    HDLCommon.Current.AdjustPushMessage(pushMes);
-                }
+                Utlis.WriteLine("PushMes title : " + pushMes.Title);
+                Utlis.WriteLine("PushMes message : " + pushMes.Content);
+                Utlis.WriteLine("PushMes extras : " + pushMes.Extras);
+                Utlis.WriteLine("PushMes HomeId : " + pushMes.HomeId);
+
+
+                Intent i = new Intent(context, typeof(BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class);
+                i.SetFlags(ActivityFlags.NewTask);
+                context.StartActivity(i);
+                //瑙f瀽msg
+                AdjustPushMessage(pushMes);
+
+                //Shared.Application.RunOnMainThread(() =>
+                //{
+                //    if (Shared.Application.Activity == null)
+                //    {
+                //        var tempIntent = new Intent(context, typeof(Shared.BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class);
+                //        tempIntent.SetFlags(ActivityFlags.BroughtToFront);
+                //        context.StartActivity(tempIntent);
+
+                //        HDLCommon.Current.AdjustPushMessage(pushMes);
+                //    }
+                //    else
+                //    {
+
+                //        (Shared.Application.Activity as BaseActivity).MoveToFront();
+                //        HDLCommon.Current.AdjustPushMessage(pushMes);
+                //    }
+                //});
             }
             catch
             {
 
             }
+            //catch (Exception ex)
+            //{
+            //    Utlis.WriteLine(ex.ToString());
+            //}
         }
-    }
-    
+
+
+
+        public static void AdjustPushMessage(JPushMessageInfo pushMes)
+        {
+
+            new System.Threading.Thread(new System.Threading.ThreadStart(() =>
+            {
+                while (MainPage.BasePageView == null)
+                {
+                    System.Threading.Thread.Sleep(300);
+                }
+                Shared.Application.RunOnMainThread(() =>
+                {
+                    HDLCommon.Current.AdjustPushMessage(pushMes);
+                });
+            })).Start();
+
+        }
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.8.0