张钢
2024-09-02 63608b5dca9eebb6fa2cb1a8652b395f1d910c3e
app_base/src/main/java/com/android/app_base/manager/UserManager.java
@@ -5,6 +5,7 @@
import android.os.Build;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import com.android.app_base.utils.GlideEngine;
import com.android.app_base.utils.SPUtils;
@@ -12,6 +13,7 @@
import com.blankj.utilcode.util.PermissionUtils;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.engine.CropEngine;
import com.luck.picture.lib.entity.LocalMedia;
import com.luck.picture.lib.interfaces.OnResultCallbackListener;
@@ -46,17 +48,21 @@
     * 获取权限
     */
    public void getPermissions(PermissionUtils.SimpleCallback simpleCallback, @NonNull String... permissions) {
        if (isGranted(permissions)){
            simpleCallback.onGranted();
            return;
        }
//        if (isGranted(permissions)){
//            simpleCallback.onGranted();
//            return;
//        }
        PermissionUtils.permission(permissions).callback(simpleCallback).request();
    }
    /**
     * 选择图片
     * @param activity 上下文
     * @param chooseMode 选择模式  SelectMimeType.TYPE_ALL = 0;TYPE_IMAGE = 1;TYPE_VIDEO = 2;TYPE_AUDIO = 3;
     * @param maxSelectNum 最大选择数量
     * @param onResultCallbackListener 回调
     */
    public void selectImage(Activity activity,int maxSelectNum,OnResultCallbackListener<LocalMedia> onResultCallbackListener){
    public void selectImage(Activity activity,int chooseMode,int maxSelectNum,OnResultCallbackListener<LocalMedia> onResultCallbackListener){
        String[] permissions;
        if (Build.VERSION.SDK_INT >= 33) {
            permissions = new String[]{Manifest.permission.READ_MEDIA_IMAGES, Manifest.permission.READ_MEDIA_VIDEO, Manifest.permission.READ_MEDIA_AUDIO, Manifest.permission.CAMERA};
@@ -67,10 +73,10 @@
            @Override
            public void onGranted() {
                PictureSelector.create(activity)
                        .openGallery(SelectMimeType.ofImage())
                        .openGallery(chooseMode)
                        .setImageEngine(GlideEngine.createGlideEngine())
                        .setPermissionsInterceptListener(new OnPermissionsInterceptListenerImpl())
                        .isMaxSelectEnabledMask(true)// 达到最大选择数是否开启禁选蒙层
                        .isWithSelectVideoImage(true)// 图片和视频是否可以同选,只在ofAll模式下有效
                        .setMaxSelectNum(maxSelectNum)
                        .forResult(onResultCallbackListener);
            }
@@ -83,14 +89,72 @@
    }
    public void setToken(String token){
        SPUtils.getInstance("tokenInfo").put("token",token);
    }
    public void clearToken(){
        SPUtils.getInstance("tokenInfo").clear();
    }
    public String getToken(){
        return SPUtils.getInstance("tokenInfo").getString("token");
    }
    public void setUserName(String userName){
        SPUtils.getInstance("userInfo").put("userName",userName);
    }
    public String getUserName(){
        return SPUtils.getInstance("userInfo").getString("userName");
    }
    public void clearUserName(){
        SPUtils.getInstance("userInfo").remove("userName");
    }
    public void clearUserInfo(){
        SPUtils.getInstance("userInfo").clear();
    }
    public void setUserAvatar(String userAvatar){
        SPUtils.getInstance("userInfo").put("userAvatar",userAvatar);
    }
    public String getUserAvatar(){
        return SPUtils.getInstance("userInfo").getString("userAvatar");
    }
    public void clearUserAvatar(){
        SPUtils.getInstance("userInfo").remove("userAvatar");
    }
    public String getClanId() {
        return SPUtils.getInstance("userInfo").getString("clanId");
    }
    public void setClanId(String clanId) {
        SPUtils.getInstance("userInfo").put("clanId",clanId);
    }
    /**
     * 退出登录,清除状态
     */
    public void loginOut(){
        clearToken();
        clearUserInfo();
    }
    /**
     *  保存护眼模式 状态
     */
    // 保存护眼模式的状态
    public void saveNightModeState(boolean isNightMode) {
        SPUtils.getInstance("nightMode").put("nightMode", isNightMode);
    }
    // 获取护眼模式的状态
    public boolean getNightModeState() {
        return SPUtils.getInstance("nightMode").getBoolean("nightMode", false);
    }
    // 清除护眼模式的状态
    public void clearNightModeState() {
        SPUtils.getInstance("nightMode").clear();
    }
}