hxb
2024-12-04 e69cc227309f3eb2025fa4ef043b075467d97de1
更改闪屏问题
1 文件已复制
1个文件已添加
3个文件已修改
2 文件已重命名
91 ■■■■ 已修改文件
app/src/main/assets/data/dcloud_control.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/uni/BSplashView.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/uni/CSplashView.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/activity_b_splash.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/activity_c_splash.xml 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/assets/data/dcloud_control.xml
@@ -1,4 +1,4 @@
<hbuilder debug="true" syncDebug="true" version="1.9.9.80110">
<hbuilder debug="false" syncDebug="false" version="1.9.9.80110">
    <apps>
        <app appid="unimp" appver="1.0" />
    </apps>
app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
@@ -4,6 +4,8 @@
import static com.hdl.photovoltaic.ui.home.aachart.CustomStyleChartComposer.configureColorfulColumnChart;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.text.SpannableString;
import android.text.Spanned;
@@ -13,6 +15,7 @@
import android.text.style.ForegroundColorSpan;
import android.text.style.StyleSpan;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
@@ -57,6 +60,7 @@
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.lang.ref.WeakReference;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
@@ -403,7 +407,7 @@
    /**
     * 图表加载
     */
    private void setUpAAChartView() {
    private void setUpAAChartView(boolean needDelay) {
        aaChartView = viewBinding.autoSizeMyAAChart;
        aaChartView.callBack = this;
        if (TimeType.day.equals(timeType)) {
@@ -411,8 +415,46 @@
        } else if (TimeType.month.equals(timeType) || TimeType.year.equals(timeType) || TimeType.all.equals(timeType)) {
            aaChartModel = configureColorfulColumnChart(getString(R.string.generation), fieldNames, fieldValues);
        }
        aaChartView.aa_drawChartWithChartModel(aaChartModel);
        if(needDelay) {
            viewBinding.autoSizeMyAAChart.setX(10000);//直接打开有闪屏,在不显示的地方先显示,再移动到正常的位置。TODO 后续找到根源问题后去掉这个用法
            aaChartView.aa_drawChartWithChartModel(aaChartModel);
            mHandler.sendEmptyMessageDelayed(100,800);
        }
        else{
            aaChartView.aa_drawChartWithChartModel(aaChartModel);
        }
    }
    FHandler mHandler=new FHandler(this);
    private static class FHandler extends Handler{
        //定义弱引用实例
        private WeakReference<HomePageFragment> reference;
        //在构造方法中传入需要持有的fragment实例
        public FHandler(HomePageFragment fragment) {
            reference = new WeakReference<HomePageFragment>(fragment); }
        //通过复写handlerMessage()从而决定如何进行更新UI操作
        @Override
        public void handleMessage(Message msg) {
            //省略代码
            switch (msg.what){
                case 100:
                    if(reference.get()!=null) {
                        reference.get().viewBinding.autoSizeMyAAChart.setX(0);//移动到正确的位置
                    }
                    break;
            }
        }
    }
    @Override
    public void onDestroy() {
        super.onDestroy();
        mHandler.removeCallbacksAndMessages(null);
    }
    private void initView() {
@@ -447,7 +489,7 @@
        viewBinding.v2.setVisibility(View.VISIBLE);
        viewBinding.v3.setVisibility(View.VISIBLE);
        viewBinding.homePageStationSelectTimeLl.setVisibility(View.VISIBLE);
        setUpAAChartView();//图表加载
        setUpAAChartView(true);//图表加载
    }
@@ -589,7 +631,7 @@
                        }
                        fieldNames = keys;
                        fieldValues = values;
                        setUpAAChartView();
                        setUpAAChartView(false);
                    }
                });
app/src/main/java/com/hdl/photovoltaic/uni/BSplashView.java
copy from app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java copy to app/src/main/java/com/hdl/photovoltaic/uni/BSplashView.java
File was copied from app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java
@@ -1,22 +1,15 @@
package com.hdl.photovoltaic.uni;
import android.content.Context;
import android.graphics.Color;
import android.os.SystemClock;
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 {
public class BSplashView implements IDCUniMPAppSplashView {
    View splashView;
    @Override
@@ -24,7 +17,7 @@
        // 在Activity中,可以直接使用this获取LayoutInflater
        LayoutInflater inflater = LayoutInflater.from(context);
        // 通过inflate方法将布局文件转换为View对象
        splashView = inflater.inflate(R.layout.activity_splash, null);
        splashView = inflater.inflate(R.layout.activity_b_splash, null);
        return splashView;
    }
app/src/main/java/com/hdl/photovoltaic/uni/CSplashView.java
File was renamed from app/src/main/java/com/hdl/photovoltaic/uni/MySplashView.java
@@ -1,22 +1,15 @@
package com.hdl.photovoltaic.uni;
import android.content.Context;
import android.graphics.Color;
import android.os.SystemClock;
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 {
public class CSplashView implements IDCUniMPAppSplashView {
    View splashView;
    @Override
@@ -24,7 +17,7 @@
        // 在Activity中,可以直接使用this获取LayoutInflater
        LayoutInflater inflater = LayoutInflater.from(context);
        // 通过inflate方法将布局文件转换为View对象
        splashView = inflater.inflate(R.layout.activity_splash, null);
        splashView = inflater.inflate(R.layout.activity_c_splash, null);
        return splashView;
    }
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMPSDKManager.java
@@ -3,7 +3,6 @@
import android.app.Application;
import android.content.Context;
import android.os.Environment;
import android.os.SystemClock;
import android.text.TextUtils;
@@ -12,6 +11,7 @@
import com.hdl.photovoltaic.HDLApp;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.enums.LowerTagType;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
@@ -277,7 +277,12 @@
                UniMPOpenConfiguration uniMPOpenConfiguration = new UniMPOpenConfiguration();
                uniMPOpenConfiguration.path = path;
                uniMPOpenConfiguration.extraData = jsonObject;
                uniMPOpenConfiguration.splashClass = MySplashView.class;
                if(UserConfigManage.getInstance().isBAccount()){
                    uniMPOpenConfiguration.splashClass = BSplashView.class;
                }
                else {
                    uniMPOpenConfiguration.splashClass = CSplashView.class;
                }
                uniMP = DCUniMPSDK.getInstance().openUniMP(mContext, uniAppId, uniMPOpenConfiguration);
            }
//            //android14有些设备有问题,需要等待
app/src/main/res/layout/activity_b_splash.xml
New file
@@ -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="1.0"
    android:background="#161616">
</LinearLayout>
app/src/main/res/layout/activity_c_splash.xml