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