From 12fb3fb97f135bbd78b31a06f8451f9b42a2ed6f Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期一, 26 八月 2024 14:23:24 +0800
Subject: [PATCH] 无网络添加提示

---
 app/src/main/java/com/dayu/recharge/activity/LoginActivity.java |  281 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 264 insertions(+), 17 deletions(-)

diff --git a/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java b/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
index 673b1de..7b46a21 100644
--- a/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
+++ b/app/src/main/java/com/dayu/recharge/activity/LoginActivity.java
@@ -1,14 +1,40 @@
 package com.dayu.recharge.activity;
 
 import android.content.Intent;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
 import android.os.Bundle;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.Toast;
 
+import androidx.annotation.NonNull;
+
+import com.dayu.baselibrary.activity.BaseActivity;
+import com.dayu.baselibrary.dao.BaseDaoSingleton;
+import com.dayu.baselibrary.dbbean.PassWordBean;
+import com.dayu.baselibrary.utils.BaseCommon;
+import com.dayu.baselibrary.utils.TipUtil;
+import com.dayu.baselibrary.utils.WSMD5;
+import com.dayu.baselibrary.view.LibraryDialog;
+import com.dayu.henanlibrary.HeNanApplication;
+import com.dayu.henanlibrary.dao.HNBaseDaoSingleton;
+
+import com.dayu.qihealonelibrary.activity.HomeActivity;
+import com.dayu.qiheonlinelibrary.QHOnLineApplication;
+import com.dayu.qiheonlinelibrary.dao.QHOnLineAppDatabase;
+import com.dayu.qiheonlinelibrary.dao.QHOnlineBaseDaoSingleton;
+import com.dayu.recharge.MyApplication;
 import com.dayu.recharge.databinding.ActivityLoginBinding;
-import com.dayu.recharge.dbBean.PassWordBean;
-import com.dayu.recharge.utils.WSMD5;
+import com.hjq.permissions.OnPermissionCallback;
+import com.hjq.permissions.Permission;
+import com.hjq.permissions.XXPermissions;
+
+import java.io.File;
+import java.util.List;
 
 
 /**
@@ -21,31 +47,252 @@
 
     ActivityLoginBinding binding;
     PassWordBean passWordBean;
+    //    com.dayu.qihealonelibrary.dbBean.PassWordBean
+    int clickNumber;
 
     @Override
-    public void onCreate(Bundle savedInstanceState) {
+    protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         binding = ActivityLoginBinding.inflate(LayoutInflater.from(this));
         setContentView(binding.getRoot());
-        try {
-            passWordBean = baseDao.loginPsDao().findFirst();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
+        getPermission();
         initView();
+        if (MyApplication.myApplication.libraryType == BaseCommon.NoLibrary) {
+            choesLibrary();
+            //娌℃湁閫夋嫨鐗堟湰鍏堥�夋嫨鐗堟湰
+        }
     }
 
     private void initView() {
-        binding.loginBtn.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                if ((passWordBean != null && (passWordBean.getPassWord().equals(binding.loginPw.getText().toString()) || WSMD5.getMD5Str(binding.loginPw.getText().toString()).equals("8af357996269a1b52b182a839150097d"))) || (passWordBean == null && binding.loginPw.getText().toString().equals("123456")) || WSMD5.getMD5Str(binding.loginPw.getText().toString()).equalsIgnoreCase("00A93D54CF982B18A05ADB4520D58FC8")) {
-                    startActivity(new Intent(LoginActivity.this, HomeActivity.class));
-                    LoginActivity.this.finish();
-                } else {
-                    Toast.makeText(LoginActivity.this, "瀵嗙爜閿欒", Toast.LENGTH_SHORT).show();
-                }
+        binding.title.setOnClickListener(v -> {
+            clickNumber++;
+            if (clickNumber == 20) {
+                choesLibrary();
             }
+
         });
+        binding.loginBtn.setOnClickListener(v -> {
+            String psStr = binding.loginPw.getText().toString();
+            String nameStr = binding.loginName.getText().toString();
+            if (TextUtils.isEmpty(psStr)) {
+                TipUtil.show("璇疯緭鍏ュ瘑鐮�");
+                return;
+            }
+            if (MyApplication.myApplication.libraryType == BaseCommon.QHOnLineLibrary && TextUtils.isEmpty(nameStr)) {
+                TipUtil.show("璇疯緭鍏ヨ处鍙�");
+                return;
+            }
+            if (MyApplication.myApplication.libraryType == BaseCommon.QHOnLineLibrary) {
+                QHOnLineApplication.getInstance().getPublicKey(this, nameStr, psStr);
+            } else if ((passWordBean == null && psStr.equals("123456"))
+                    || passWordBean != null && passWordBean.getPassWord().equalsIgnoreCase(WSMD5.getMD5Str(psStr))) {
+                startToHomeActivity();
+            } else {
+                Toast.makeText(LoginActivity.this, "瀵嗙爜閿欒", Toast.LENGTH_SHORT).show();
+            }
+
+
+        });
+        try {
+            PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
+            binding.versionName.setText("褰撳墠鐗堟湰锛歏" + packageInfo.versionName);
+        } catch (
+                PackageManager.NameNotFoundException e) {
+            throw new RuntimeException(e);
+        }
+
+    }
+
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+        Log.i("LoginActivity", "onResume");
+        if (MyApplication.myApplication.libraryType == BaseCommon.QHOnLineLibrary) {
+            binding.nameLL.setVisibility(View.VISIBLE);
+        }
+    }
+
+    /**
+     * 閫夋嫨鐗堟湰
+     */
+    private void choesLibrary() {
+
+        LibraryDialog dialog = new LibraryDialog(this, type -> {
+            if (type == BaseCommon.HeNanLibrary) {
+                getHNPermission();
+            } else if (type == BaseCommon.QHOnLineLibrary) {
+                getQHOnlinPermission();
+                binding.nameLL.setVisibility(View.VISIBLE);
+            }
+            MyApplication.myApplication.initApplication();
+        });
+        dialog.show();
+    }
+
+    private void startToHomeActivity() {
+        if (MyApplication.myApplication.libraryType == BaseCommon.HeNanLibrary) {
+            startActivity(new Intent(LoginActivity.this, com.dayu.henanlibrary.activity.HomeActivity.class));
+        } else if (MyApplication.myApplication.libraryType == BaseCommon.QHAloneLibrary) {
+            startActivity(new Intent(LoginActivity.this, HomeActivity.class));
+        } else if (MyApplication.myApplication.libraryType == BaseCommon.QHOnLineLibrary) {
+            startActivity(new Intent(LoginActivity.this, com.dayu.qiheonlinelibrary.activity.HomeActivity.class));
+        }
+        LoginActivity.this.finish();
+    }
+
+    /**
+     * 娌冲崡鐗堢殑鑾峰彇鏉冮檺
+     */
+    private void getHNPermission() {
+        try {
+
+
+            XXPermissions.with(this)
+                    // 鐢宠鍗曚釜鏉冮檺
+//                    .permission(Permission.RECORD_AUDIO)
+                    // 鐢宠澶氫釜鏉冮檺
+                    .permission(Permission.READ_PHONE_STATE,
+                            Permission.READ_EXTERNAL_STORAGE,
+                            Permission.WRITE_EXTERNAL_STORAGE)
+                    // 璁剧疆鏉冮檺璇锋眰鎷︽埅鍣紙灞�閮ㄨ缃級
+                    //.interceptor(new PermissionInterceptor())
+                    // 璁剧疆涓嶈Е鍙戦敊璇娴嬫満鍒讹紙灞�閮ㄨ缃級
+                    //.unchecked()
+                    .request(new OnPermissionCallback() {
+
+                        @Override
+                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
+                            if (allGranted) {
+                                if (allGranted) {//鎵�鏈夌敵璇风殑鏉冮檺閮藉凡閫氳繃
+
+                                    HeNanApplication.getInstance().initEasySocket(false, null);
+                                    try {
+                                        File file = new File(HNBaseDaoSingleton.SqlitePath);
+                                        if (!file.exists()) {
+                                            file.mkdirs();
+                                        }
+
+                                    } catch (Exception e) {
+                                        e.printStackTrace();
+                                    }
+                                }
+                            }
+                        }
+
+                        @Override
+                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
+                            if (doNotAskAgain) {
+                                // 濡傛灉鏄姘镐箙鎷掔粷灏辫烦杞埌搴旂敤鏉冮檺绯荤粺璁剧疆椤甸潰
+                            } else {
+//                                toast("鑾峰彇褰曢煶鍜屾棩鍘嗘潈闄愬け璐�");
+                            }
+                        }
+                    });
+        } catch (Throwable e) {
+            e.printStackTrace();
+        }
+    }
+
+    private void getPermission() {
+        try {
+            XXPermissions.with(this)
+                    .permission(
+                            Permission.WRITE_EXTERNAL_STORAGE)
+                    .request(new OnPermissionCallback() {
+
+                        @Override
+                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
+                            if (allGranted) {
+                                if (allGranted) {//鎵�鏈夌敵璇风殑鏉冮檺閮藉凡閫氳繃
+
+                                    try {
+                                        File file = new File(HNBaseDaoSingleton.SqlitePath);
+                                        if (!file.exists()) {
+                                            file.mkdirs();
+                                        }
+                                        passWordBean = BaseDaoSingleton.getInstance(LoginActivity.this).loginPsDao().findFirst();
+                                    } catch (Exception e) {
+                                        e.printStackTrace();
+                                    }
+                                }
+                            }
+                        }
+
+                        @Override
+                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
+                            if (doNotAskAgain) {
+                                // 濡傛灉鏄姘镐箙鎷掔粷灏辫烦杞埌搴旂敤鏉冮檺绯荤粺璁剧疆椤甸潰
+                            } else {
+//                                toast("鑾峰彇褰曢煶鍜屾棩鍘嗘潈闄愬け璐�");
+                            }
+                        }
+                    });
+        } catch (
+                Throwable e) {
+            e.printStackTrace();
+        }
+    }
+
+
+    private void getQHOnlinPermission() {
+        try {
+            XXPermissions.with(this)
+                    // 鐢宠鍗曚釜鏉冮檺
+//                    .permission(Permission.RECORD_AUDIO)
+                    // 鐢宠澶氫釜鏉冮檺
+                    .permission(Permission.READ_PHONE_STATE,
+                            Permission.READ_EXTERNAL_STORAGE,
+                            Permission.WRITE_EXTERNAL_STORAGE)
+                    // 璁剧疆鏉冮檺璇锋眰鎷︽埅鍣紙灞�閮ㄨ缃級
+                    //.interceptor(new PermissionInterceptor())
+                    // 璁剧疆涓嶈Е鍙戦敊璇娴嬫満鍒讹紙灞�閮ㄨ缃級
+                    //.unchecked()
+                    .request(new OnPermissionCallback() {
+
+                        @Override
+                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
+                            if (allGranted) {
+                                if (allGranted) {//鎵�鏈夌敵璇风殑鏉冮檺閮藉凡閫氳繃
+                                    try {
+                                        File file = new File(QHOnlineBaseDaoSingleton.SqlitePath);
+                                        if (!file.exists()) {
+                                            file.mkdirs();
+                                        }
+
+                                    } catch (Exception e) {
+                                        e.printStackTrace();
+                                    }
+                                }
+                            }
+                        }
+
+                        @Override
+                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
+                            if (doNotAskAgain) {
+                                // 濡傛灉鏄姘镐箙鎷掔粷灏辫烦杞埌搴旂敤鏉冮檺绯荤粺璁剧疆椤甸潰
+                            } else {
+//                                toast("鑾峰彇褰曢煶鍜屾棩鍘嗘潈闄愬け璐�");
+                            }
+                        }
+                    });
+        } catch (Throwable e) {
+            e.printStackTrace();
+        }
+    }
+
+    long mExitTime;
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (keyCode == KeyEvent.KEYCODE_BACK) {
+            if ((System.currentTimeMillis() - mExitTime) > 2000) {
+                Toast.makeText(LoginActivity.this, "鍐嶆寜涓�娆¢��鍑虹▼搴�", Toast.LENGTH_SHORT).show();
+                mExitTime = System.currentTimeMillis();
+            } else {
+                LoginActivity.this.finish();
+            }
+            return true;
+        }
+        return super.onKeyDown(keyCode, event);
     }
 }

--
Gitblit v1.8.0