From fa67d4417ec6949183038f99dff517f5e3c7cda6 Mon Sep 17 00:00:00 2001
From: nilupeng <qingingrunt2010@qq.com>
Date: Sun, 30 Jan 2022 05:03:48 +0000
Subject: [PATCH] 加密调整

---
 app/src/main/java/com/runt/open/mvvm/MainActivity.java |   66 ++++++++++++++++++++++++++-------
 1 files changed, 52 insertions(+), 14 deletions(-)

diff --git a/app/src/main/java/com/runt/open/mvvm/MainActivity.java b/app/src/main/java/com/runt/open/mvvm/MainActivity.java
index b180224..1297088 100644
--- a/app/src/main/java/com/runt/open/mvvm/MainActivity.java
+++ b/app/src/main/java/com/runt/open/mvvm/MainActivity.java
@@ -1,30 +1,68 @@
 package com.runt.open.mvvm;
 
-import android.os.Bundle;
+import android.Manifest;
+import android.content.Intent;
 
-import com.google.android.material.bottomnavigation.BottomNavigationView;
-
-import androidx.appcompat.app.AppCompatActivity;
+import androidx.activity.result.ActivityResult;
+import androidx.activity.result.ActivityResultCallback;
+import androidx.activity.result.ActivityResultLauncher;
+import androidx.activity.result.contract.ActivityResultContracts;
 import androidx.navigation.NavController;
 import androidx.navigation.Navigation;
-import androidx.navigation.ui.AppBarConfiguration;
 import androidx.navigation.ui.NavigationUI;
 
+import com.permissionx.guolindev.PermissionX;
+import com.runt.open.mvvm.base.activities.BaseActivity;
+import com.runt.open.mvvm.data.PhoneDevice;
 import com.runt.open.mvvm.databinding.ActivityMainBinding;
+import com.runt.open.mvvm.listener.ResPonse;
+import com.runt.open.mvvm.ui.login.RegisterLoginActivity;
+import com.runt.open.mvvm.ui.main.MainViewModel;
 
-public class MainActivity extends AppCompatActivity {
-
-    private ActivityMainBinding binding;
+public class MainActivity extends BaseActivity<ActivityMainBinding, MainViewModel> {
 
     @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-
-        binding = ActivityMainBinding.inflate(getLayoutInflater());
-        setContentView(binding.getRoot());
-
+    public void initViews() {
         NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_main);
         NavigationUI.setupWithNavController(binding.navView, navController);
+        checkPermission();
+        ActivityResultLauncher<Intent>  launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() {
+            @Override
+            public void onActivityResult(ActivityResult result) {
+                if(result.getResultCode() == RESULT_CODE_SUCESS){
+                    showToast("登录成功");
+                }
+            }
+        });
+        Intent intent = new Intent(mContext, RegisterLoginActivity.class);
+        launcher.launch(intent);
     }
 
+    private void showPermissionDialog(){
+
+        showDialog("警告", "软件需要权限才能运行", "申请权限", "退出", new ResPonse() {
+            @Override
+            public void doSuccess(Object obj) {
+                checkPermission();
+            }
+
+            @Override
+            public void doError(Object obj) {
+                finish();
+                System.exit(0);
+            }
+        });
+    }
+    private void checkPermission(){
+        PermissionX.init(MainActivity.this)
+                .permissions(Manifest.permission.READ_PHONE_STATE)
+                .request((allGranted, grantedList, deniedList) -> {
+                    if(allGranted){
+                        PhoneDevice.setDevice(mContext);
+                    }else{
+                        showPermissionDialog();
+                    }
+
+                });
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.1