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 | 93 ++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 85 insertions(+), 8 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 7884f75..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鏇存柊锛�
@@ -49,7 +61,7 @@
@Override
public void onBindView(Bundle savedInstanceState) {
setStatusBarTranslucent();
- getWindow().setNavigationBarColor(getColor(R.color.text_00000000));
+ getWindow().setNavigationBarColor(getColor(R.color.text_FF000000));
//鍒濆鍖�
initView();
//鍒濆鍖栫晫闈㈢洃鍚櫒
@@ -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