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/StartActivity.java |  125 +++++++++++++++++++++++++++++++----------
 1 files changed, 93 insertions(+), 32 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java
index fe166b3..f8667dd 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java
@@ -8,6 +8,7 @@
 import android.text.TextUtils;
 import android.text.method.LinkMovementMethod;
 import android.text.style.ClickableSpan;
+import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
 
@@ -22,13 +23,19 @@
 import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.other.HdlResidenceLogic;
+import com.hdl.photovoltaic.other.HdlUniLogic;
 import com.hdl.photovoltaic.ui.bean.HouseIdBean;
 import com.hdl.photovoltaic.ui.me.WebActivity;
+import com.hdl.photovoltaic.uni.HDLUniMP;
+import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
+import com.hdl.photovoltaic.utils.BadgeUtils;
 import com.hdl.photovoltaic.utils.LocalManageUtil;
 import com.hdl.photovoltaic.utils.SharedPreUtils;
 import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
+import com.umeng.commonsdk.UMConfigure;
 
 import java.util.List;
+import java.util.Objects;
 
 import cn.jpush.android.api.JPushInterface;
 
@@ -45,10 +52,14 @@
 
     @Override
     public void onBindView(Bundle savedInstanceState) {
+        Log.d("StartActivity", "onBindView");
         setStatusBarTranslucent();
         getWindow().setNavigationBarColor(getColor(R.color.text_FF000000));
+        BadgeUtils.cancelAllNotifications(_mActivity);
+        BadgeUtils.clearBadge(_mActivity);
         //鍙戝竷瀹℃牳灏忕背搴旂敤甯傚満瑕佹眰APP绗竴娆″惎鍔ㄦ彁鍓嶆彁绀恒�婄敤鎴峰崗璁�嬪拰銆婇殣绉佹斂绛栥�嬫墠鍏佽涓婄嚎
         final String key = "is_login";
+        HDLUniMPSDKManager.isExistsActivity = false;
         boolean isLogin = SharedPreUtils.getBoolean(key);
         if (!isLogin) {
             ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(this);
@@ -79,45 +90,55 @@
             });
         } else {
             initSdk();
-            //鍒濆鍖栨湇鍔″櫒鍩熷悕锛堢敤鎴锋敞鍐屾墍鍦ㄦ湇鍔″櫒鍩熷悕鍦板潃锛�
-            AppConfigManage.setUserRegionUrl(HDLLinkPMUser.getInstance().getUserRegionUrl());
-            //鍒ゆ柇AccessToken鏄惁null
-            if (!TextUtils.isEmpty(HDLLinkPMUser.getInstance().getAccessToken())) {
-                if (UserConfigManage.getInstance().isBAccount()) {
-                    //瀹夎鍟嗚烦杞晫闈�
-                    Intent intent = new Intent();
-                    intent.setClass(StartActivity.this, BPowerStationActivity.class);
-                    openActivity(intent);
-                } else {
-                    //C绔敤鎴疯烦杞晫闈�
+            if (!UserConfigManage.getInstance().isNoNetworkFlag()) {
+                //鍒濆鍖栨湇鍔″櫒鍩熷悕锛堢敤鎴锋敞鍐屾墍鍦ㄦ湇鍔″櫒鍩熷悕鍦板潃锛�
+                AppConfigManage.setUserRegionUrl(HDLLinkPMUser.getInstance().getUserRegionUrl());
+                //鍒ゆ柇AccessToken鏄惁null
+                if (!TextUtils.isEmpty(HDLLinkPMUser.getInstance().getAccessToken())) {
+                    if (UserConfigManage.getInstance().isBAccount()) {
+                        //瀹夎鍟嗚烦杞晫闈�
+                        Intent intent = new Intent();
+                        intent.setClass(StartActivity.this, BPowerStationActivity.class);
+                        intent.putExtra("pushData", getIntentExpantData());
+                        openActivity(intent);
+                    } else {
+                        //C绔敤鎴疯烦杞晫闈�
 //                showLoading();
-                    HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
-                        @Override
-                        public void onSuccess(List<HouseIdBean> obj) {
+                        HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
+                            @Override
+                            public void onSuccess(List<HouseIdBean> obj) {
 //                        hideLoading();
-                            HdlResidenceLogic.getInstance().setHouseIdList(obj);
-                            Intent intent = new Intent();
-                            intent.setClass(StartActivity.this, CPowerStationActivity.class);
-                            openActivity(intent);
-                        }
+                                HdlResidenceLogic.getInstance().setHouseIdList(obj);
+                                Intent intent = new Intent();
+                                intent.setClass(StartActivity.this, CPowerStationActivity.class);
+                                intent.putExtra("pushData", getIntentExpantData());
+                                openActivity(intent);
+                            }
 
-                        @Override
-                        public void onFailure(HDLException e) {
+                            @Override
+                            public void onFailure(HDLException e) {
 //                        hideLoading();
-                            Intent intent = new Intent();
-                            intent.setClass(StartActivity.this, CPowerStationActivity.class);
-                            openActivity(intent);
-                        }
-                    });
+                                Intent intent = new Intent();
+                                intent.setClass(StartActivity.this, CPowerStationActivity.class);
+                                openActivity(intent);
+                            }
+                        });
+                    }
+                } else {
+                    Intent intent = new Intent();
+                    intent.setClass(StartActivity.this, LoginActivity.class);
+                    openActivity(intent);
                 }
             } else {
-                Intent intent = new Intent();
-                intent.setClass(StartActivity.this, LoginActivity.class);
-                openActivity(intent);
+                //鏃犵綉妯″紡-璺冲埌灏忕▼搴忚澶囧垪琛ㄧ晫闈�
+                String path = HDLUniMP.UNI_EVENT_OPEN_NONETWORKDEVICELIST + "?mac=" + UserConfigManage.getInstance().getNoNetworkDeviceMac() + "&password=" + UserConfigManage.getInstance().getNoNetworkPassword() + "&autoVerify=true";
+                HdlUniLogic.getInstance().openUniMP(path, null);
             }
         }
 
+
     }
+
 
     @Override
     public void startActivity(Intent intent) {
@@ -134,6 +155,7 @@
     @Override
     protected void onDestroy() {
         super.onDestroy();
+        Log.d("StartActivity", "onDestroy");
         overridePendingTransition(0, 0);
     }
 
@@ -184,7 +206,7 @@
                     public void updateDrawState(@NonNull TextPaint ds) {
                         super.updateDrawState(ds);
                         //璁剧疆瀛椾綋棰滆壊
-                        ds.setColor(getResources().getColor(R.color.text_FFACACAC, null));
+                        ds.setColor(getResources().getColor(R.color.text_38C494, null));
                         // 鍘绘帀涓嬪垝绾�
                         ds.setUnderlineText(!UserConfigManage.getInstance().isZh());
                     }
@@ -207,7 +229,7 @@
                     public void updateDrawState(@NonNull TextPaint ds) {
                         super.updateDrawState(ds);
                         //璁剧疆瀛椾綋棰滆壊
-                        ds.setColor(getResources().getColor(R.color.text_FFACACAC, null));
+                        ds.setColor(getResources().getColor(R.color.text_38C494, null));
                         // 鍘绘帀涓嬪垝绾�
                         ds.setUnderlineText(!UserConfigManage.getInstance().isZh());
                     }
@@ -220,7 +242,7 @@
             }
             textView.setText(spannable);
             //涓�旈亣鍒扮偣鍑诲悗瀛椾綋鏄剧ず楂樹寒锛屽彇娑堥珮浜�
-            textView.setHighlightColor(getResources().getColor(R.color.text_FF5B5B5B, null));
+            textView.setHighlightColor(getResources().getColor(R.color.text_FFACACAC, null));
             //鏈�鍚庤缃彲鐐瑰嚮锛屽繀椤诲疄鐜帮紝鍚﹀垯鍙兘鏄剧ず鏍峰紡锛屾棤娉曞疄鐜扮偣鍑绘晥鏋�
             textView.setMovementMethod(LinkMovementMethod.getInstance());
         } catch (Exception ignored) {
@@ -237,8 +259,12 @@
             return;
         }
         HDLApp.getInstance().isStartInitThirdSDK = true;
+        //鍒濆鍖栧弸鐩烻DK
+        initUMengSDK();
         //鍒濆鍖栨瀬鍏夋帹閫�
         initJPush();
+
+
     }
 
     /**
@@ -249,4 +275,39 @@
         JPushInterface.init(getBaseContext());
     }
 
+    /**
+     * 鍒濆鍖栧弸鐩烻DK锛屾姄闂��鏃ュ織
+     * 闆嗘垚鏁欑▼鍦板潃锛歨ttps://developer.umeng.com/docs/119267/detail/118588
+     */
+    private void initUMengSDK() {
+        UMConfigure.preInit(this, "6801aec0bc47b67d833fd76d", "XenterraSolar");
+        //appkey鍜宑hannl蹇呴』淇濇寔鍜岄鍒濆鍖栦竴鑷达紒锛侊紒
+        //deviceType锛氳澶囩被鍨嬶紝UMConfigure.DEVICE_TYPE_PHONE涓烘墜鏈恒�乁MConfigure.DEVICE_TYPE_BOX涓虹洅瀛�
+        //pushSecret锛歅ush鎺ㄩ�佷笟鍔$殑secret
+        UMConfigure.init(this, "6801aec0bc47b67d833fd76d", "XenterraSolar", UMConfigure.DEVICE_TYPE_PHONE, "");
+        UMConfigure.setLogEnabled(false);//AppConfigManage.isDebug()
+    }
+
+    /**
+     * 澶勭悊浠庨�氱煡鐐瑰嚮甯︽潵鐨勬暟鎹紝杩欓噷鑾峰彇鏁版嵁锛岀劧鍚庨�忎紶缁欎富鐣岄潰鍋氬鐞�
+     *
+     * @return 杩斿洖闄勫姞鏁版嵁
+     */
+    private String getIntentExpantData() {
+        try {
+            // 澶勭悊浠庨�氱煡鐐瑰嚮甯︽潵鐨勬暟鎹紝杩欓噷鑾峰彇鏁版嵁锛岀劧鍚庨�忎紶缁欎富鐣岄潰鍋氬鐞�
+            if (getIntent().getExtras() != null) {
+                for (String key : getIntent().getExtras().keySet()) {
+                    if (key.equals("pushData")) {
+                        return Objects.requireNonNull(getIntent().getExtras().get(key)).toString();
+                    }
+                }
+            }
+        } catch (Exception e) {
+            return "";
+        }
+        return "";
+    }
+
+
 }

--
Gitblit v1.8.0