From 1078968985ae81e79ea149e3251841cd9bd54a1e Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期四, 11 四月 2024 15:24:20 +0800
Subject: [PATCH] Merge branch 'wxw_new' into dev-hxb
---
app/src/main/res/anim/dcloud_unimp_close_exit.xml | 17 --
app/src/main/res/values/styles.xml | 4
app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java | 36 +++++--
app/src/main/res/layout/activity_splash.xml | 8 +
app/src/main/res/values/themes.xml | 2
app/src/main/AndroidManifest.xml | 1
app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java | 44 +++++++-
app/src/main/res/anim/dcloud_unimp_host_open_enter.xml | 19 +--
app/src/main/java/com/hdl/photovoltaic/HDLApp.java | 9 +
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java | 11 ++
app/src/main/res/anim/dcloud_unimp_open_enter.xml | 18 +--
build.gradle | 13 ++
app/src/main/res/anim/dcloud_unimp_host_close_exit.xml | 19 +--
app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java | 35 +++++++
app/build.gradle | 8 +
15 files changed, 175 insertions(+), 69 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 0132905..d53f677 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -28,14 +28,14 @@
defaultConfig {
applicationId "com.hdl.photovoltaic"
minSdk 23
- targetSdk 30
+ targetSdk 28
versionCode 1
versionName "1.3.2"//鐗堟湰瑙勫垯1.3鏄骇鍝佸姛鑳借凯浠g敤鐨�,鏈�鍚庝竴浣�0鏄垜浠慨澶峛ug鐢ㄧ殑
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
multiDexEnabled true
manifestPlaceholders = mfph
ndk {
- abiFilters 'x86', 'armeabi-v7a', "arm64-v8a" //涓嶆敮鎸乤rmeabi
+ abiFilters 'armeabi-v7a', "arm64-v8a" //涓嶆敮鎸乤rmeabi
}
manifestPlaceholders = [
@@ -62,6 +62,10 @@
]
}
+ // 淇濊瘉鍏朵粬鐨刲ib娌℃湁琚玴reDex
+ dexOptions {
+ preDexLibraries = false
+ }
repositories {
flatDir {
dirs 'libs'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index bdce55a..f0e4c06 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -144,6 +144,7 @@
android:exported="false" />
<activity
android:name=".ui.MyPowerStationActivity"
+ android:theme="@style/DCloudMPHostActivityTheme"
android:exported="false" />
<activity
android:name=".ui.HomeLoginActivity"
diff --git a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
index 94c8235..b350b7a 100644
--- a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
+++ b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -1,9 +1,12 @@
package com.hdl.photovoltaic;
import android.app.Application;
+import android.content.Context;
import android.content.Intent;
import android.text.TextUtils;
+
+import androidx.multidex.MultiDex;
import com.hdl.hdlhttp.HxHttpConfig;
import com.hdl.linkpm.sdk.HDLLinkPMSdk;
@@ -311,4 +314,10 @@
HdlLogLogic.print("娴嬭瘯Mqtt杩炴帴鏈嶅姟绔け璐�--->");
}
}
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ MultiDex.install(base);
+ super.attachBaseContext(base);
+ }
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java
index b66e48c..9238a58 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java
@@ -5,7 +5,10 @@
import android.os.Process;
import android.os.SystemClock;
import android.text.TextUtils;
+import android.util.Log;
+
+import androidx.annotation.Nullable;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
@@ -74,7 +77,7 @@
setNotificationBarBackgroundColor(CustomColor.white);
setStatusBarTextColor();
//C绔惎鍔ˋpp鑷姩鎵撳紑灏忕▼搴忕數绔欒鎯呯晫闈�
- startAppAutomaticallyOpenUni();
+// startAppAutomaticallyOpenUni();
//娉ㄥ唽鐩戝惉
this.registerAllTopicsListener();
//鍒濆鍖杕qtt瀹㈡埛绔�
@@ -84,10 +87,37 @@
}
@Override
+ protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setTheme(R.style.NoAnimationTheme);
+ }
+
+ @Override
protected void onResume() {
super.onResume();
//鍚姩椤典笌mainActivity鏍峰紡涓�鏍凤紝杩欐牱鍚姩椤靛拰mainActivity鐪嬩笂鍘绘槸涓�涓晫闈紝鐩殑鏄负浜唌ainActivity閬綇涓嬩竴椤碉紱
- AppManagerUtils.getAppManager().finishActivity(StartActivity.class);
+// AppManagerUtils.getAppManager().finishActivity(StartActivity.class);
+ this.portConflictDialog();
+ startAppAutomaticallyOpenUni();
+ }
+ public void startAppAutomaticallyOpenUni() {
+ //浣庝簬瀹夊崜14鐗堟湰
+ if (android.os.Build.VERSION.SDK_INT < 34) {
+ startAppAutomaticallyOpenUni(false);
+ } else {
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ SystemClock.sleep(10);
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ startAppAutomaticallyOpenUni(true);
+ }
+ });
+ }
+ }).start();
+ }
}
@Subscribe(threadMode = ThreadMode.MAIN)
@@ -175,11 +205,15 @@
}
}
+
/**
* C绔惎鍔ˋpp鑷姩鎵撳紑灏忕▼搴忕數绔欒鎯呯晫闈�
*/
- private void startAppAutomaticallyOpenUni() {
+ private void startAppAutomaticallyOpenUni(boolean delay) {
+ if(delay) {
+ SystemClock.sleep(2000);
+ }
List<HouseIdBean> HouseIdList = HdlResidenceLogic.getInstance().getHouseIdList();
if (HouseIdList.size() == 0) {
String path = HDLUniMP.UNI_EVENT_OPEN_HOME_Null_C;
@@ -197,8 +231,6 @@
String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS_C + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
HdlUniLogic.getInstance().openUniMP(path, null);
}
-
-
}
// /**
@@ -396,4 +428,4 @@
}
-}
\ No newline at end of file
+}
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 a8a220e..c6d9263 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/StartActivity.java
@@ -3,7 +3,10 @@
import android.content.Intent;
import android.os.Bundle;
-import android.text.TextUtils;
+import android.os.SystemClock;
+import android.util.Log;
+
+import androidx.annotation.Nullable;
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
@@ -12,10 +15,12 @@
import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.listener.CloudCallBeak;
+import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.uni.HDLUniMP;
+import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
import java.util.List;
@@ -53,8 +58,7 @@
intent.setClass(StartActivity.this, CPowerStationActivity.class);
}
- startActivity(intent);
-// finish();
+ openActivity(intent);
}
@Override
@@ -68,20 +72,32 @@
//C绔敤鎴疯烦杞晫闈�
intent.setClass(StartActivity.this, CPowerStationActivity.class);
}
- startActivity(intent);
-// finish();
+ openActivity(intent);
}
});
} else {
Intent intent = new Intent();
intent.setClass(this, HomeLoginActivity.class);
- startActivity(intent);
- finish();
+ openActivity(intent);
}
-
-
}
+ void openActivity(Intent intent) {
+ intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
+ startActivity(intent);
+ finish();
+ }
-}
\ No newline at end of file
+ @Override
+ protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setTheme(R.style.NoAnimationTheme);
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ overridePendingTransition(0, 0);
+ }
+}
diff --git a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java
index 6f5b2e7..9f1abdf 100644
--- a/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java
+++ b/app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java
@@ -3,6 +3,7 @@
import android.app.Application;
import android.content.Context;
import android.os.Environment;
+import android.os.SystemClock;
import android.text.TextUtils;
@@ -279,14 +280,22 @@
UniMPOpenConfiguration uniMPOpenConfiguration = new UniMPOpenConfiguration();
uniMPOpenConfiguration.path = path;
uniMPOpenConfiguration.extraData = jsonObject;
+ uniMPOpenConfiguration.splashClass=MySplashView.class;
uniMP = DCUniMPSDK.getInstance().openUniMP(mContext, uniAppId, uniMPOpenConfiguration);
+ }
+ //android14鏈変簺璁惧鏈夐棶棰橈紝闇�瑕佺瓑寰�
+ if (android.os.Build.VERSION.SDK_INT >= 34) {
+ if (TextUtils.isEmpty(mCurrentAppId)) {
+ //绗竴娆$敤瑕佷紤鐪�
+ SystemClock.sleep(1000);
+ }
}
mCurrentAppId = uniAppId;//璁板綍褰撳墠灏忕▼搴�
mUniMPCaches.put(uniMP.getAppid(), uniMP);
} catch (Exception e) {
e.printStackTrace();
HdlThreadLogic.toast(HDLApp.getInstance(), R.string.uni_open_error);
- initDCUniMPSDK(HDLApp.getInstance());
+// initDCUniMPSDK(HDLApp.getInstance());
HdlLogLogic.print("鎵撳紑澶辫触===" + e.getMessage());
}
}
diff --git a/app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java b/app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java
new file mode 100755
index 0000000..69c6a9d
--- /dev/null
+++ b/app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java
@@ -0,0 +1,35 @@
+package com.hdl.photovoltaic.uni;
+
+import android.content.Context;
+import android.graphics.Color;
+import android.util.Log;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.FrameLayout;
+import android.widget.TextView;
+
+import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.ui.CPowerStationActivity;
+
+import io.dcloud.feature.sdk.Interface.IDCUniMPAppSplashView;
+
+public class MySplashView implements IDCUniMPAppSplashView {
+ View splashView;
+
+ @Override
+ public View getSplashView(Context context, String appid, String s1, String s2) {
+ // 鍦ˋctivity涓紝鍙互鐩存帴浣跨敤this鑾峰彇LayoutInflater
+ LayoutInflater inflater = LayoutInflater.from(context);
+ // 閫氳繃inflate鏂规硶灏嗗竷灞�鏂囦欢杞崲涓篤iew瀵硅薄
+ splashView = inflater.inflate(R.layout.activity_splash, null);
+ return splashView;
+ }
+
+ @Override
+ public void onCloseSplash(ViewGroup rootView) {
+ if (rootView != null)
+ rootView.removeView(splashView);
+ }
+}
diff --git a/app/src/main/res/anim/dcloud_unimp_close_exit.xml b/app/src/main/res/anim/dcloud_unimp_close_exit.xml
index e6a3dac..d3ee64d 100644
--- a/app/src/main/res/anim/dcloud_unimp_close_exit.xml
+++ b/app/src/main/res/anim/dcloud_unimp_close_exit.xml
@@ -1,17 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
-<set xmlns:android="http://schemas.android.com/apk/res/android">
- <alpha
-
- android:duration="300"
- android:fromAlpha="1.0"
- android:toAlpha="0" />
-<!-- <translate-->
-<!-- android:fromXDelta="0"-->
-<!-- android:toXDelta="100%p"-->
-<!-- android:duration="300"-->
-<!-- android:interpolator="@android:anim/accelerate_interpolator"-->
-<!-- />-->
-</set>
+<translate xmlns:android="http://schemas.android.com/apk/res/android"
+ android:duration="200"
+ android:fromXDelta="0%p"
+ android:toXDelta="0%p" />
diff --git a/app/src/main/res/anim/dcloud_unimp_host_close_exit.xml b/app/src/main/res/anim/dcloud_unimp_host_close_exit.xml
index a54e277..d3ee64d 100644
--- a/app/src/main/res/anim/dcloud_unimp_host_close_exit.xml
+++ b/app/src/main/res/anim/dcloud_unimp_host_close_exit.xml
@@ -1,14 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
-<set xmlns:android="http://schemas.android.com/apk/res/android">
- <alpha
+<translate xmlns:android="http://schemas.android.com/apk/res/android"
+ android:duration="200"
+ android:fromXDelta="0%p"
+ android:toXDelta="0%p" />
- android:duration="300"
- android:fromAlpha="1.0"
- android:toAlpha="0" />
-<!-- <translate-->
-<!-- android:fromXDelta="0"-->
-<!-- android:toXDelta="100%p"-->
-<!-- android:duration="300"-->
-<!-- android:interpolator="@android:anim/accelerate_interpolator"-->
-<!-- />-->
-</set>
\ No newline at end of file
+
+
+
diff --git a/app/src/main/res/anim/dcloud_unimp_host_open_enter.xml b/app/src/main/res/anim/dcloud_unimp_host_open_enter.xml
index 97e86f0..d3ee64d 100644
--- a/app/src/main/res/anim/dcloud_unimp_host_open_enter.xml
+++ b/app/src/main/res/anim/dcloud_unimp_host_open_enter.xml
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
-<set xmlns:android="http://schemas.android.com/apk/res/android">
- <alpha
- android:duration="300"
- android:fromAlpha="0"
- android:toAlpha="1.0" />
- <translate
- android:duration="300"
- android:fromXDelta="100%p"
- android:interpolator="@android:anim/accelerate_interpolator"
- android:toXDelta="0" />
-</set>
\ No newline at end of file
+<translate xmlns:android="http://schemas.android.com/apk/res/android"
+ android:duration="200"
+ android:fromXDelta="0%p"
+ android:toXDelta="0%p" />
+
+
+
+
diff --git a/app/src/main/res/anim/dcloud_unimp_open_enter.xml b/app/src/main/res/anim/dcloud_unimp_open_enter.xml
index b218075..d3ee64d 100644
--- a/app/src/main/res/anim/dcloud_unimp_open_enter.xml
+++ b/app/src/main/res/anim/dcloud_unimp_open_enter.xml
@@ -1,15 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
-<set xmlns:android="http://schemas.android.com/apk/res/android">
- <alpha
+<translate xmlns:android="http://schemas.android.com/apk/res/android"
+ android:duration="200"
+ android:fromXDelta="0%p"
+ android:toXDelta="0%p" />
- android:duration="300"
- android:fromAlpha="0.0"
- android:toAlpha="1.0" />
-<!-- <translate-->
-<!-- android:fromXDelta="0"-->
-<!-- android:toXDelta="100%p"-->
-<!-- android:duration="300"-->
-<!-- android:interpolator="@android:anim/accelerate_interpolator"-->
-<!-- />-->
-</set>
\ No newline at end of file
+
+
diff --git a/app/src/main/res/layout/activity_splash.xml b/app/src/main/res/layout/activity_splash.xml
new file mode 100644
index 0000000..6ff3692
--- /dev/null
+++ b/app/src/main/res/layout/activity_splash.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:alpha="0.6"
+ android:background="@color/text_FFFFFFFF">
+
+</LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 4253f75..4fac929 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -4,6 +4,8 @@
<item name="android:background">@color/black_overlay</item>
<item name="android:buttonBarStyle">?android:attr/buttonBarStyle</item>
</style>
-
+ <style name="NoAnimationTheme" parent="Theme.AppCompat.Light.NoActionBar">
+ <item name="android:windowAnimationStyle">@null</item>
+ </style>
</resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index f887031..e7da647 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -58,7 +58,7 @@
</style>
- <style name="DCloudMPHostActivityTheme" parent="@style/Theme.AppCompat">
+ <style name="DCloudMPHostActivityTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowAnimationStyle">@style/uniMPHostWindowAnimation</item>
</style>
diff --git a/build.gradle b/build.gradle
index 05c8bec..15d7362 100644
--- a/build.gradle
+++ b/build.gradle
@@ -52,4 +52,17 @@
task clean(type: Delete) {
delete rootProject.buildDir
+}
+
+// 淇濊瘉dex_files鏂囦欢涓寚瀹氱殑鏂囦欢閮藉姞杞藉埌Main Dex涓�
+afterEvaluate {
+ tasks.matching {
+ it.name.startsWith('dex')
+ }.each { dx ->
+ if (dx.additionalParameters == null) {
+ dx.additionalParameters = []
+ }
+ dx.additionalParameters += '--multi-dex'
+ dx.additionalParameters += "--main-dex-list=$projectDir/dex_files".toString()
+ }
}
\ No newline at end of file
--
Gitblit v1.8.0