wjc
昨天 5645ad0ea692bd3ed2246e19af065e0abefde80a
app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java
@@ -12,6 +12,7 @@
import android.text.method.LinkMovementMethod;
import android.text.method.PasswordTransformationMethod;
import android.text.style.ClickableSpan;
import android.view.Gravity;
import android.view.View;
import android.widget.TextView;
@@ -30,7 +31,9 @@
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivityHomeLoginBinding;
import com.hdl.photovoltaic.other.HdlLogLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlUniLogic;
import com.hdl.photovoltaic.ui.account.ChangePassword;
import com.hdl.photovoltaic.ui.account.RegisterAccountActivity;
import com.hdl.photovoltaic.ui.adapter.LanguageAdapter;
@@ -40,6 +43,8 @@
import com.hdl.photovoltaic.other.HdlAccountLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.ui.me.WebActivity;
import com.hdl.photovoltaic.uni.HDLUniMP;
import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.utils.LocalManageUtil;
import com.hdl.photovoltaic.utils.SharedPreUtils;
@@ -106,7 +111,7 @@
        try {
            viewBinding.homeLoginCheckBCCl.setSelected(UserConfigManage.getInstance().isBAccount());
            viewBinding.homeLoginPrivacyCheckIv.setSelected(UserConfigManage.getInstance().isAcceiptPolicy());
            setStringDifferentColors(viewBinding.homeLoginPrivacyTv);
            setStringDifferentColors(viewBinding.homeLoginPrivacyTv, false);
            //注册和忘记密码需要加下划线
            String registerTvStr = viewBinding.homeLoginRegisterTv.getText().toString();
@@ -263,7 +268,7 @@
        viewBinding.homeLoginTv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                HDLUniMPSDKManager.isExistsActivity = false;
                String account = viewBinding.homeLoginAccountEt.getText().toString().replace(" ", "");
                String password = viewBinding.homeLoginPasswordEt.getText().toString().replace(" ", "");
                boolean is_login = isLocalCheckAccountAndPassword(account, password);
@@ -310,6 +315,46 @@
                startActivity(intent);
            }
        });
        //无网模式
        viewBinding.homeNoNetworkModeLoginTv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                boolean isNoNetworkModeLogin = SharedPreUtils.getBoolean("no_network_mode");
                if (!isNoNetworkModeLogin) {
                    //第一次打开要提示
                    ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(_mActivity);
                    confirmationCancelDialog.setTitle(getString(R.string.loading_title_tip));
                    confirmationCancelDialog.setContent(getString(R.string.no_network_mode_tip));
                    confirmationCancelDialog.setConfirmation(getString(R.string.home_login_affirm));
                    confirmationCancelDialog.setCancel(getString(R.string.scan_cancel));
                    confirmationCancelDialog.show();
                    confirmationCancelDialog.getContentTextView().setGravity(Gravity.START);
                    confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {
                        @Override
                        public void Cancel() {
                            confirmationCancelDialog.dismiss();
                            SharedPreUtils.putBoolean("no_network_mode", false);
                        }
                    });
                    confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
                        @Override
                        public void Confirm() {
                            confirmationCancelDialog.dismiss();
                            SharedPreUtils.putBoolean("no_network_mode", true);
                            UserConfigManage.getInstance().setNoNetworkFlag(true);
                            UserConfigManage.getInstance().Save();
                            String path = HDLUniMP.UNI_EVENT_OPEN_NONETWORKDEVICELIST + "?mac=" + UserConfigManage.getInstance().getNoNetworkDeviceMac() + "&password=" + UserConfigManage.getInstance().getNoNetworkPassword() + "&autoVerify=" + UserConfigManage.getInstance().isNoNetworkFlag();
                            HdlUniLogic.getInstance().openUniMP(path, null);
                        }
                    });
                } else {
                    UserConfigManage.getInstance().setNoNetworkFlag(true);
                    UserConfigManage.getInstance().Save();
                    String path = HDLUniMP.UNI_EVENT_OPEN_NONETWORKDEVICELIST + "?mac=" + UserConfigManage.getInstance().getNoNetworkDeviceMac() + "&password=" + UserConfigManage.getInstance().getNoNetworkPassword() + "&autoVerify=" + UserConfigManage.getInstance().isNoNetworkFlag();
                    HdlUniLogic.getInstance().openUniMP(path, null);
                }
            }
        });
    }
@@ -324,6 +369,7 @@
        HdlAccountLogic.getInstance().regionByAccount(account, new CloudCallBeak<HDLUserRegionBean>() {
            @Override
            public void onSuccess(HDLUserRegionBean obj) {
                HdlLogLogic.print("账号登录成功---" + account, true);
                //开发环境
//                String APP_REGIONURL_TEST = "http://47.114.131.143:27197";
//                 AppConfigManage.setUserRegionUrl(APP_REGIONURL_TEST);
@@ -517,12 +563,13 @@
    /**
     * 设置一串字符多种颜色以及点击事件
     *
     * @param textView 当前组件
     * @param textView    当前组件
     * @param isHighlight 是否高亮(true表示高亮)
     */
    private void setStringDifferentColors(TextView textView) {
    private void setStringDifferentColors(TextView textView, boolean isHighlight) {
        try {
            int text_color = isHighlight ? R.color.text_38C494 : R.color.text_FFACACAC;
            if (textView == null) {
                return;
            }
@@ -560,8 +607,9 @@
                    @Override
                    public void updateDrawState(@NonNull TextPaint ds) {
                        super.updateDrawState(ds);
                        //设置字体颜色
                        ds.setColor(getResources().getColor(R.color.text_FFACACAC, null));
                        ds.setColor(getResources().getColor(text_color, null));
                        // 去掉下划线
                        ds.setUnderlineText(!UserConfigManage.getInstance().isZh());
                    }
@@ -584,11 +632,10 @@
                    public void updateDrawState(@NonNull TextPaint ds) {
                        super.updateDrawState(ds);
                        //设置字体颜色
                        ds.setColor(getResources().getColor(R.color.text_FFACACAC, null));
                        ds.setColor(getResources().getColor(text_color, null));
                        // 去掉下划线
                        ds.setUnderlineText(!UserConfigManage.getInstance().isZh());
                    }
                }, startIndex2, endIndex2, 0);
//                spannable.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), startIndex2, endIndex2, 0);
@@ -597,7 +644,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) {
@@ -615,7 +662,7 @@
        confirmationCancelDialog.show();
        confirmationCancelDialog.isHideTitle(true);
        confirmationCancelDialog.setContent(getString(R.string.loading_privacy_server));
        setStringDifferentColors(confirmationCancelDialog.getContentTextView());
        setStringDifferentColors(confirmationCancelDialog.getContentTextView(), true);
        confirmationCancelDialog.setConfirmation(getString(R.string.loading_agree));
        confirmationCancelDialog.setCancel(getString(R.string.loading_on_agree));
        confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {