mac
2024-03-12 0b6f27a6aeeb6eb3d5ee55b500797875c2bd5d2c
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();
//            }
//        });
    }
@@ -74,19 +101,22 @@
            }
        });
        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);
            }
        });
@@ -258,10 +288,19 @@
     * 返回给上一级界面数据
     */
    private void backPressedData() {
        Intent intent = new Intent();
        intent.putExtra("memberHeadIcon", mMemberHeadIconUrl);
        intent.putExtra("memberName", UserConfigManage.getInstance().getUserName());
        setResult(10, intent);
        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);
        }
    }
}