From 0b6f27a6aeeb6eb3d5ee55b500797875c2bd5d2c Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 12 三月 2024 21:08:03 +0800 Subject: [PATCH] 2024年03月12日21:07:52 --- app/src/main/java/com/hdl/photovoltaic/ui/me/PersonalDataActivity.java | 71 +++++++++++++++++++++++++++++++---- 1 files changed, 63 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/PersonalDataActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/PersonalDataActivity.java index a06881c..bb7c02f 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/me/PersonalDataActivity.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/me/PersonalDataActivity.java @@ -7,6 +7,11 @@ import android.view.Gravity; import android.view.View; + +import androidx.activity.result.ActivityResultLauncher; +import androidx.core.app.ActivityCompat; + + import com.bumptech.glide.load.resource.bitmap.RoundedCorners; import com.google.gson.JsonObject; import com.hdl.linkpm.sdk.core.callback.IResponseCallBack; @@ -22,6 +27,8 @@ import com.hdl.photovoltaic.other.HdlAccountLogic; import com.hdl.photovoltaic.other.HdlLogLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; +import com.hdl.photovoltaic.other.HdlUniLogic; +import com.hdl.photovoltaic.uni.HDLUniMP; import com.hdl.photovoltaic.utils.GlideUtils; import com.hdl.photovoltaic.utils.PermissionUtils; import com.hdl.photovoltaic.widget.ConfirmationInputDialog; @@ -39,6 +46,7 @@ private CameraAlbumPopWindow cameraAlbumPopWindow; //澶村儚鍦板潃 private String mMemberHeadIconUrl; + private ActivityResultLauncher<String[]> generalPermission; @Override @@ -61,6 +69,25 @@ } private void initData() { +// generalPermission = registerForActivityResult(new ActivityResultContracts.RequestMultiplePermissions(), new ActivityResultCallback<Map<String, Boolean>>() { +// @Override +// public void onActivityResult(Map<String, Boolean> result) { +// +// } +// }); +// generalPermission.launch(new String[]{}); + +// generalPermission = registerForActivityResult(new ActivityResultContracts.RequestMultiplePermissions(), new ActivityResultCallback<Map<String, Boolean>>() { +// @Override +// public void onActivityResult(Map<String, Boolean> result) { +// +//// if (value == PermissionUtils.STATUS_REFUSE_PERMANENT) { +//// HdlThreadLogic.toast(_mActivity, R.string.permission_open); +//// return; +//// } +// changedUserAvatar(); +// } +// }); } @@ -69,27 +96,27 @@ viewBinding.toolbarTopFragmentMeRl.topBackBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - Intent intent = new Intent(); - intent.putExtra("memberHeadIcon", mMemberHeadIconUrl); - intent.putExtra("memberName", UserConfigManage.getInstance().getUserName()); - setResult(10, intent); + backPressedData(); finish(); } }); viewBinding.personalDataUserPortraitIl.getRoot().setOnClickListener(new View.OnClickListener() { + @Override public void onClick(View v) { //Manifest.permission.WRITE_EXTERNAL_STORAGE 璇诲啓璁惧涓婄殑鐓х墖浠ュ強鏂囦欢 - PermissionUtils.applyForRight(_mActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE, new PermissionUtils.PermissionState() { + //generalPermission.launch(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}); + + PermissionUtils.requestPermissionsResultCallback(_mActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE, new PermissionUtils.PermissionState() { @Override public void Success(int value) { if (value == PermissionUtils.STATUS_REFUSE_PERMANENT) { - HdlThreadLogic.toast(_mActivity, R.string.permission_open); +// HdlThreadLogic.toast(_mActivity, R.string.permission_open); return; } changedUserAvatar(); } - }); + }, true); } }); @@ -191,7 +218,7 @@ @Override public void onFailure(HDLException e) { - HdlThreadLogic.tipFlashingBox(_mActivity, false, e.getMessage(), e.getCode()); + HdlThreadLogic.tipFlashingBox(_mActivity, false, e.getMsg(), e.getCode()); } }); @@ -248,4 +275,32 @@ } } + /** + * 鐗╃悊鎸夐敭杩斿洖浜嬩欢 + */ + @Override + public void onBackPressed() { + backPressedData(); + super.onBackPressed(); + } + + /** + * 杩斿洖缁欎笂涓�绾х晫闈㈡暟鎹� + */ + private void backPressedData() { + + if (UserConfigManage.getInstance().isBAccount()) { + Intent intent = new Intent(); + intent.putExtra("memberHeadIcon", mMemberHeadIconUrl); + intent.putExtra("memberName", UserConfigManage.getInstance().getUserName()); + setResult(10, intent); + } else { + //閫氱煡缁欏皬绋嬪簭鏇存柊鍥惧儚鎴栬�呯敤鎴峰悕 + HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); + uniCallBackBaseBean.setType(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_REFRESH_USERINFO); + HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, uniCallBackBaseBean); + } + } + + } \ No newline at end of file -- Gitblit v1.8.0