From 589d1dff2ce8554ee53b818a98db000df7fdf4e7 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 22 七月 2025 10:19:17 +0800
Subject: [PATCH] 2025年07月22日10:19:08
---
app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java | 172 ++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 116 insertions(+), 56 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
index 5423b6f..27c4788 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/BPowerStationActivity.java
@@ -5,9 +5,9 @@
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
+import androidx.lifecycle.Lifecycle;
import android.Manifest;
-import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
@@ -19,7 +19,6 @@
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
-import android.view.WindowManager;
import android.widget.TextView;
import com.google.gson.Gson;
@@ -40,7 +39,6 @@
import com.hdl.photovoltaic.other.HdlCommonLogic;
import com.hdl.photovoltaic.other.HdlDeviceLogic;
import com.hdl.photovoltaic.other.HdlESLocalJsonLogic;
-import com.hdl.photovoltaic.other.HdlFileLogic;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlMessageLogic;
import com.hdl.photovoltaic.other.HdlMqttLogic;
@@ -57,8 +55,10 @@
import com.hdl.photovoltaic.ui.powerstation.HouseAndDeviceFragment;
import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.utils.AppManagerUtils;
+import com.hdl.photovoltaic.utils.FragmentUtils;
import com.hdl.photovoltaic.utils.GPSManagerUtils;
import com.hdl.photovoltaic.utils.PermissionUtils;
+import com.hdl.photovoltaic.utils.SharedPreUtils;
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
import com.hdl.photovoltaic.widget.ConfirmationTipDialog;
import com.hdl.sdk.link.HDLLinkLocalSdk;
@@ -70,6 +70,7 @@
import com.hdl.sdk.link.core.config.HDLLinkConfig;
import com.hdl.sdk.link.core.connect.HDLUdpConnect;
import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
+//import com.umeng.analytics.MobclickAgent;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
@@ -107,7 +108,7 @@
setStatusBarTranslucent();
getWindow().setNavigationBarColor(getColor(R.color.text_FF1C1C1E));
//鍒濆鍖栫鐗�
- initFragment(savedInstanceState);
+ initFragment(null);
//鍒濆鍖�
this.initView();
//鍒濆鍖栫晫闈㈢洃鍚櫒
@@ -146,23 +147,38 @@
if (savedInstanceState != null) {
//鈥滃唴瀛橀噸鍚�濇椂璋冪敤 鑾峰彇鈥滃唴瀛橀噸鍚�濇椂淇濆瓨鐨勭储寮曚笅鏍�
currentFragmentIndex = savedInstanceState.getInt(CURRENT_FRAGMENT, 0);
- if (fragmentList.size() != 0) {
+ if (!fragmentList.isEmpty()) {
fragmentList.clear();
}
fragmentList.add(mFragmentManager.findFragmentByTag(0 + ""));
fragmentList.add(mFragmentManager.findFragmentByTag(1 + ""));
fragmentList.add(mFragmentManager.findFragmentByTag(2 + ""));
fragmentList.add(mFragmentManager.findFragmentByTag(3 + ""));
- restoreFragment();//鎭㈠fragment椤甸潰
+ this.restoreFragment();//鎭㈠fragment椤甸潰
} else {
+ //
+ this.removeAllFragments(mFragmentManager);
//姝e父鍚姩鏃惰皟鐢�
+ if (!fragmentList.isEmpty()) {
+ fragmentList.clear();
+ }
fragmentList.add(mHomePageFragment);
fragmentList.add(mHouseAndDeviceFragment);
fragmentList.add(mMessageFragment);
fragmentList.add(mMeFragment);
- showFragment();
+ this.showFragment();
}
+
+// if (!fragmentList.isEmpty()) {
+// fragmentList.clear();
+// }
+// // 姝e父鍚姩鏃惰皟鐢�
+// fragmentList.add(mHomePageFragment);
+// fragmentList.add(mHouseAndDeviceFragment);
+// fragmentList.add(mMessageFragment);
+// fragmentList.add(mMeFragment);
+// FragmentUtils.loadMultipleFragment(R.id.module_fcv, mFragmentManager, fragmentList.toArray(new Fragment[0]));
}
@@ -171,6 +187,7 @@
* 鏄剧ずfragment
*/
private void showFragment() {
+// FragmentUtils.showHideFragment(mFragmentManager, fragmentList.toArray(new Fragment[0])[currentFragmentIndex]);
FragmentTransaction ft = mFragmentManager.beginTransaction();
//濡傛灉涔嬪墠娌℃湁娣诲姞杩�
if (!fragmentList.get(currentFragmentIndex).isAdded()) {
@@ -179,12 +196,10 @@
} else {
ft.hide(currentFragment).show(fragmentList.get(currentFragmentIndex));
}
+ //鎶婂綋鍓嶆樉绀虹殑fragment璁板綍涓嬫潵
currentFragment = fragmentList.get(currentFragmentIndex);
ft.commit();
//鎶婂綋鍓嶆樉绀虹殑fragment璁板綍涓嬫潵
- currentFragment = fragmentList.get(currentFragmentIndex);
-
-
}
/**
@@ -200,6 +215,28 @@
}
}
ft.commit();
+ }
+
+ private void removeAllFragments(FragmentManager manager) {
+ if (manager == null) return;
+ try {
+ final List<Fragment> fragments = manager.getFragments();
+ if (fragments.isEmpty()) {
+ return;
+ }
+ FragmentTransaction transaction = manager.beginTransaction();
+ for (int i = 0; i < fragments.size(); i++) {
+ Fragment fragment = fragments.get(i);
+ if (fragment != null) {
+// FragmentManager childManager = fragment.getChildFragmentManager();
+// removeAllFragments(childManager);
+ transaction.remove(fragment);
+ }
+ }
+ transaction.commit();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
@@ -245,14 +282,15 @@
}
}
if (!TextUtils.isEmpty(registrationID)) {
- UserConfigManage.getInstance().setRegistrationID(registrationID);
- UserConfigManage.getInstance().Save();
+// UserConfigManage.getInstance().setRegistrationID(registrationID);
+// UserConfigManage.getInstance().Save();
String finalRegistrationID = registrationID;
HdlResidenceLogic.getInstance().pushAdd(new CloudCallBeak<String>() {
@Override
public void onSuccess(String pushId) {
if (!TextUtils.isEmpty(pushId)) {
+ UserConfigManage.getInstance().setRegistrationID(finalRegistrationID);
UserConfigManage.getInstance().setPushId(pushId);
UserConfigManage.getInstance().Save();
}
@@ -279,29 +317,37 @@
* 寮�鍚�氱煡鏉冮檺
*/
private void notificationSet() {
- boolean isBoolean = PermissionUtils.isNotificationEnabled(_mActivity);
- if (!isBoolean) {
- ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(_mActivity);
- confirmationCancelDialog.setTitle(getString(R.string.loading_title_tip));
- confirmationCancelDialog.setContent(getString(R.string.no_permissions_unable_to_receive_push));
- confirmationCancelDialog.setConfirmation(getString(R.string.go_to_settings));
- confirmationCancelDialog.show();
- confirmationCancelDialog.isHideTitle(true);
- confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
- @Override
- public void Confirm() {
- confirmationCancelDialog.dismiss();
- PermissionUtils.openNotificationSettings(_mActivity);
+ String key = "isOpenNotificationEnabled";
+ boolean isCancel = SharedPreUtils.getBoolean(key);
+ if (!isCancel) {
+ boolean isBoolean = PermissionUtils.isNotificationEnabled(_mActivity);
+ if (!isBoolean) {
+ ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(_mActivity);
+ confirmationCancelDialog.setTitle(getString(R.string.loading_title_tip));
+ confirmationCancelDialog.setContent(getString(R.string.no_permissions_unable_to_receive_push));
+ confirmationCancelDialog.setConfirmation(getString(R.string.go_to_settings));
+ confirmationCancelDialog.show();
+ confirmationCancelDialog.isHideTitle(true);
+ confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
+ @Override
+ public void Confirm() {
+ SharedPreUtils.putBoolean(key, true);
+ confirmationCancelDialog.dismiss();
+ PermissionUtils.openNotificationSettings(_mActivity);
- }
- });
- confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {
- @Override
- public void Cancel() {
- confirmationCancelDialog.dismiss();
- }
- });
+ }
+ });
+ confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {
+ @Override
+ public void Cancel() {
+ SharedPreUtils.putBoolean(key, true);
+ confirmationCancelDialog.dismiss();
+ }
+ });
+ } else {
+ SharedPreUtils.putBoolean(key, true);
+ }
}
}
@@ -389,43 +435,43 @@
if (this.currentFragmentIndex == 0) {
//姒傝鐣岄潰
viewBinding.myPowerStationBottomIl0.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.home_page_selected));
- viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_E6FFFFFF));
+ viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_FFACACAC));
viewBinding.myPowerStationBottomIl1.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.power_station_unselected));
- viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myMessageBottomIl2.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.message_unselected));
- viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myMeBottomIl3.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.me_unselected));
- viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
} else if (this.currentFragmentIndex == 1) {
//鐢电珯鐣岄潰
viewBinding.myPowerStationBottomIl0.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.home_page_unselected));
- viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myPowerStationBottomIl1.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.power_station_selected));
- viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_E6FFFFFF));
+ viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_FFACACAC));
viewBinding.myMessageBottomIl2.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.message_unselected));
- viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myMeBottomIl3.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.me_unselected));
- viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
} else if (this.currentFragmentIndex == 2) {
//娑堟伅鐣岄潰
viewBinding.myPowerStationBottomIl0.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.home_page_unselected));
- viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myPowerStationBottomIl1.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.power_station_unselected));
- viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myMessageBottomIl2.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.message_selected));
- viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_E6FFFFFF));
+ viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_FFACACAC));
viewBinding.myMeBottomIl3.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.me_unselected));
- viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
} else if (this.currentFragmentIndex == 3) {
//鎴戠殑鐣岄潰
viewBinding.myPowerStationBottomIl0.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.home_page_unselected));
- viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myPowerStationBottomIl0.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myPowerStationBottomIl1.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.power_station_unselected));
- viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myPowerStationBottomIl1.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myMessageBottomIl2.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.message_unselected));
- viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_66FFFFFF));
+ viewBinding.myMessageBottomIl2.titleTv.setTextColor(getColor(R.color.text_FF5B5B5B));
viewBinding.myMeBottomIl3.iconIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.me_selected));
- viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_E6FFFFFF));
+ viewBinding.myMeBottomIl3.titleTv.setTextColor(getColor(R.color.text_FFACACAC));
}
}
@@ -435,12 +481,12 @@
this.notificationSet();
//ACCESS_FINE_LOCATION 鍏佽浣跨敤GPS瀹氫綅
//ACCESS_COARSE_LOCATION 鍏佽浣跨敤WIFI鐑偣鎴栧熀绔欐潵鑾峰彇绮楃暐鐨勫畾浣�
- String[] ary = PermissionUtils.checkPermission(_mActivity, new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION});
- if (ary.length > 0) {
- this.requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
- } else {
- locationUpdates();
- }
+// String[] ary = PermissionUtils.checkPermission(_mActivity, new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION});
+// if (ary.length > 0) {
+// this.requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
+// } else {
+// locationUpdates();
+// }
}
@Override
@@ -481,7 +527,7 @@
if (response.getTopic() == null) {
return;
}
-// /HdlLogLogic.print("鐩戝惉鍒癕odbus鏁版嵁---" + new Gson().toJson(response), false);
+ HdlLogLogic.print("鐩戝惉鍒癕odbus鏁版嵁---" + new Gson().toJson(response), false);
// if (response.getTopic().endsWith("custom/native/inverter/up")) {
HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
uniCallBackBaseBean.setType(response.getTopic());
@@ -533,6 +579,7 @@
uniCallBackBaseBean.setData(linkResponse.getData());
HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean);
HdlLogLogic.print(linkResponse.getTopic() + new Gson().toJson(linkResponse.getData()), true);
+// HdlDeviceLogic.getInstance().searchAllNetworkGateway(null);//閫嗗彉鍣╳ifi鐘舵��-閲嶆柊鎼滅储涓�涓嬮�嗗彉鍣�-閲嶆柊鏇存柊杩炴帴鐘舵��
} else if (linkResponse.getTopic().endsWith("/app/thing/event/appHomeRemoveRefresh/up")) {
String[] topicArray = linkResponse.getTopic().split("/");
//浣忓畢鍒犻櫎閫氱煡
@@ -557,6 +604,16 @@
uniCallBackBaseBean.setData(topicArray[1]);
HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean);
HdlLogLogic.print(linkResponse.getTopic() + new Gson().toJson(linkResponse.getData()), true);
+ } else if (linkResponse.getTopic().endsWith("/app/thing/property/send")) {
+ //璁惧鐘舵�佸彉鏇磘opic锛�/user/${homeId}/app/thing/property/send
+ if (linkResponse.getData() == null) {
+ HdlLogLogic.print("璁惧鐘舵�佸彉鏇�--->鏁版嵁涓虹┖", false);
+ return;
+ }
+ HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
+ uniCallBackBaseBean.setType(linkResponse.getTopic());
+ uniCallBackBaseBean.setData(linkResponse.getData());
+ HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean);
}
}
}
@@ -769,7 +826,10 @@
return;
} else {
AppManagerUtils.getAppManager().finishAllActivity();
+// //鍙嬬洘sdk濡傛灉寮�鍙戣�呰皟鐢╧ill鎴栬�卐xit涔嬬被鐨勬柟娉曟潃姝昏繘绋嬶紝鎴栬�呭弻鍑籦ack閿細鏉�姝昏繘绋嬶紝璇峰姟蹇呭湪姝や箣鍓嶈皟鐢∕obclickAgent.onKillProcess鏂规硶锛岀敤鏉ヤ繚瀛樼粺璁℃暟鎹��
+// MobclickAgent.onKillProcess(_mActivity);
Process.killProcess(Process.myPid());
+
}
}
super.onBackPressed();
--
Gitblit v1.8.0