From da8bb15e0d0293d373071b44b89f2b953ecc0830 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 27 六月 2023 11:00:37 +0800
Subject: [PATCH] 2023年06月27日11:00:19

---
 app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java |   43 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 38 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
index 9373411..dee2bc7 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -24,6 +24,7 @@
 import com.hdl.photovoltaic.other.HdlResidenceLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
 import com.hdl.photovoltaic.other.HdlUniLogic;
+import com.hdl.photovoltaic.ui.MyPowerStationActivity;
 import com.hdl.photovoltaic.ui.adapter.HouseInfoAdapter;
 import com.hdl.photovoltaic.ui.bean.HouseListBean;
 import com.hdl.photovoltaic.ui.device.FastScanActivity;
@@ -72,8 +73,21 @@
         viewBinding.toolbarTopFragmentHouseListRl.topMoreIv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
+
                 // 鎵撳紑灏忕▼搴忛〉闈�
-                HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
+//                HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
+                requestPermissions(new PermissionsResultCallback() {
+                    @Override
+                    public void succeed() {
+                        // 鎵撳紑灏忕▼搴忛〉闈�
+                        HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null);
+                    }
+
+                    @Override
+                    public void failing() {
+                    }
+                });
+
             }
         });
         //璁剧疆涓嬫媺绠ご棰滆壊
@@ -128,12 +142,19 @@
     /**
      * 鐢宠鏉冮檺
      */
-    private void requestPermissions() {
-        String[] ary = PermissionUtils.checkPermission(_mActivity, new String[]{Manifest.permission.CAMERA});
+    private void requestPermissions(PermissionsResultCallback permissionsResultCallback) {
+        mPermissionsResultCallback = permissionsResultCallback;
+        //Manifest.permission.CAMERA,
+        String[] s = new String[]{
+                Manifest.permission.ACCESS_FINE_LOCATION
+        };
+        String[] ary = PermissionUtils.checkPermission(_mActivity, s);
         if (ary.length > 0) {
             requestPermissions(ary, PermissionUtils.STATUS_SUCCESS);
         } else {
-            startActivity(FastScanActivity.class);
+            if (mPermissionsResultCallback != null) {
+                mPermissionsResultCallback.succeed();
+            }
         }
     }
 
@@ -143,7 +164,9 @@
         if (requestCode == PermissionUtils.STATUS_SUCCESS) {
             for (int i = 0; i < permissions.length; i++) {
                 if (grantResults[i] == PackageManager.PERMISSION_GRANTED) {
-                    startActivity(FastScanActivity.class);
+                    if (mPermissionsResultCallback != null) {
+                        mPermissionsResultCallback.succeed();
+                    }
                 }
 
             }
@@ -151,4 +174,14 @@
 
     }
 
+    private PermissionsResultCallback mPermissionsResultCallback;
+
+    public interface PermissionsResultCallback {
+
+        void succeed();
+
+        void failing();
+
+    }
+
 }

--
Gitblit v1.8.0