From 2f5411b86c59706d31f6ec7de629d8f860725e46 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 26 十一月 2025 19:56:56 +0800
Subject: [PATCH] 2025年11月26日19:56:45 集成谷歌推送

---
 app/src/main/java/com/hdl/photovoltaic/ui/me/AsRegardsActivity.java |   91 ++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 84 insertions(+), 7 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/AsRegardsActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/AsRegardsActivity.java
index 05583af..57fb1c4 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/me/AsRegardsActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/me/AsRegardsActivity.java
@@ -1,32 +1,44 @@
 package com.hdl.photovoltaic.ui.me;
 
 
+import android.app.NotificationChannel;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.Context;
 import android.content.Intent;
 import android.graphics.Bitmap;
 import android.graphics.Color;
-import android.graphics.drawable.Drawable;
+import android.os.Build;
 import android.os.Bundle;
 import android.view.View;
 
-import androidx.appcompat.content.res.AppCompatResources;
+import androidx.annotation.RequiresApi;
+import androidx.core.app.NotificationCompat;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.TypeReference;
 import com.hdl.linkpm.sdk.core.exception.HDLException;
 import com.hdl.linkpm.sdk.user.bean.NewVersionBean;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.base.CustomBaseActivity;
 import com.hdl.photovoltaic.config.AppConfigManage;
-import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.databinding.ActivityAsRegardsBinding;
 import com.hdl.photovoltaic.enums.ShowErrorMode;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.other.HdlAppUpdateLogic;
 import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.ui.BPowerStationActivity;
+import com.hdl.photovoltaic.ui.CPowerStationActivity;
+import com.hdl.photovoltaic.ui.StartActivity;
+import com.hdl.photovoltaic.utils.BadgeUtils;
 import com.hdl.photovoltaic.widget.FlashingBoxDialog;
-import com.hdl.photovoltaic.widget.FlashingIconBoxDialog;
 import com.hdl.photovoltaic.widget.apkwgtupload.ApkDownLoadService;
 import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
 import com.hdl.photovoltaic.widget.UpdateConfirmationCancelDialog;
+
+import java.util.Map;
 
 /**
  * 鍏充簬鐣岄潰锛坅pp鏇存柊锛�
@@ -67,7 +79,7 @@
                 if (newVersionBean != null) {
                     //todo 鍙戠幇鏂扮増鏈�,鏀瑰彉UI鏍峰紡
                     viewBinding.asRegardsRlRightContentTv.setText(R.string.app_discover_new_version);
-                    viewBinding.asRegardsRlRightContentTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF, null));
+                    viewBinding.asRegardsRlRightContentTv.setTextColor(getResources().getColor(R.color.text_FFACACAC, null));
                 }
             }
 
@@ -80,7 +92,7 @@
         String content = "https://developer.hdlcontrol.com/AppDownload/HDLPhotovoltaicDownload.html";
         if (!AppConfigManage.getOnlineServer()) {
             //娴嬭瘯鐜
-            content = "https://developer.hdlcontrol.com/AppDownload/HDLDebugerDownload.html";
+            content = "https://developer.hdlcontrol.com/AppDownload/HDLPhotovoltaicDebugDownload.html";
         }
         Bitmap bitmap = HdlCommonLogic.getInstance().createQRCodeBitmap(content, 168, 168, "UTF-8", "H", "0", getColor(R.color.text_00000000), Color.WHITE);
         viewBinding.asRegardsQrCodeIv.setImageBitmap(bitmap);
@@ -129,7 +141,15 @@
                 Intent intent = new Intent();
                 intent.setClass(_mActivity, ContactUsActivity.class);
                 startActivity(intent);
-
+//                String json = "{\"expandData\":{\"expantContent\":\"{\\\"createTime\\\":1763705189605,\\\"homeName\\\":\\\"鏅鸿兘妯″紡娴嬭瘯\\\",\\\"isRead\\\":false,\\\"msgId\\\":1991742202645020673,\\\"type\\\":\\\"EVENT\\\",\\\"homeId\\\":1990254883420880898,\\\"status\\\":\\\"UNTREATED\\\"}\",\"homeId\":1990254883420880898,\"messageType\":\"Alarm\"},\"aps\":{\"badge\":2,\"alert\":{\"title\":\"event\",\"body\":\"Battery voltage low\"}}}";
+////                Gson gson = new Gson();
+////                Type type = new TypeToken<Map<String, String>>() {
+////                }.getType();
+////                Map<String, String> map = gson.fromJson(json, type);
+//                Map<String, String> map = JSONObject.parseObject(json, new TypeReference<Map<String, String>>() {
+//                });
+//                showCustomNotification("妯℃嫙鏍囬", "妯℃嫙鏁版嵁", map);
+////                HdlPushLogic.getInstance().pushDataProcessing("", "", json);
             }
         });
 
@@ -189,4 +209,61 @@
             }
         }, this, ShowErrorMode.YES);
     }
+
+    private void showCustomNotification(String title, String message, Map<String, String> data) {
+        NotificationManager notificationManager =
+                (NotificationManager) _mActivity.getSystemService(Context.NOTIFICATION_SERVICE);
+
+        // 鍒涘缓閫氱煡娓犻亾锛圓ndroid 8.0+锛�
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+            createNotificationChannel(notificationManager);
+        }
+
+        NotificationCompat.Builder builder = new NotificationCompat.Builder(_mActivity, "fcm_channel")
+                .setSmallIcon(R.drawable.desktop_logo)
+                .setContentTitle(title)
+                .setContentText(message)
+                .setAutoCancel(true)
+                .setNumber(5)
+                .setWhen(System.currentTimeMillis());
+
+
+        // 璁剧疆鐐瑰嚮鎰忓浘
+        Intent intent = createNotificationIntent(data);
+        PendingIntent pendingIntent = PendingIntent.getActivity(
+                _mActivity, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
+        builder.setContentIntent(pendingIntent);
+
+        // 鏄剧ず閫氱煡
+        notificationManager.notify((int) System.currentTimeMillis(), builder.build());
+    }
+
+    private Intent createNotificationIntent(Map<String, String> data) {
+        Intent intent = new Intent(_mActivity, StartActivity.class);
+        intent.putExtra("from_fcm", true);
+        intent.putExtra("pushData", JSON.toJSON(data).toString());
+//        if (data != null) {
+//            for (Map.Entry<String, String> entry : data.entrySet()) {
+//                intent.putExtra(entry.getKey(), entry.getValue());
+//            }
+//        }
+
+//        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
+        return intent;
+    }
+
+    @RequiresApi(api = Build.VERSION_CODES.O)
+    private void createNotificationChannel(NotificationManager notificationManager) {
+        NotificationChannel channel = new NotificationChannel(
+                "fcm_channel",
+                "FCM 娑堟伅",
+                NotificationManager.IMPORTANCE_HIGH
+        );
+        channel.setDescription("Firebase Cloud Messaging 閫氱煡");
+        // 鍚敤瑙掓爣
+        channel.setShowBadge(true);
+        notificationManager.createNotificationChannel(channel);
+        BadgeUtils.setBadgeCount(_mActivity, 7);
+    }
 }
\ No newline at end of file

--
Gitblit v1.8.0