左晓为主开发手持机充值管理机
zuoxiao
2024-03-05 88c82455871cd03e0a0b6f32591f9bee74a2dc34
app/src/main/java/com/dayu/recharge/activity/NewCardActivity.java
@@ -1,6 +1,5 @@
package com.dayu.recharge.activity;
import android.Manifest;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
@@ -10,8 +9,7 @@
import android.view.LayoutInflater;
import android.view.View;
import com.dayu.recharge.utils.DeviceNumberUtils;
import com.dayu.recharge.view.ProgressDialog;
import androidx.annotation.NonNull;
import com.dayu.recharge.MyApplication;
import com.dayu.recharge.card.UserCard;
@@ -28,14 +26,19 @@
import com.dayu.recharge.tools.HexUtil;
import com.dayu.recharge.tools.Utils;
import com.dayu.recharge.utils.CRC8;
import com.dayu.recharge.utils.DeviceNumberUtils;
import com.dayu.recharge.utils.SocketUtil;
import com.dayu.recharge.utils.TipUtil;
import com.permissionx.guolindev.PermissionX;
import com.dayu.recharge.view.ProgressDialog;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.Arrays;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -75,7 +78,7 @@
            @Override
            public void onClick(View v) {
                rxPermission();
                getPermission();
            }
        });
@@ -154,22 +157,40 @@
    }
    private void rxPermission() {
        PermissionX.init(NewCardActivity.this).permissions(Manifest.permission.CAMERA)
                .onExplainRequestReason((scope, deniedList) -> {
    private void getPermission() {
        try {
            XXPermissions.with(this)
                    // 申请单个权限
//                    .permission(Permission.RECORD_AUDIO)
                    // 申请多个权限
                    .permission(Permission.CAMERA)
                    // 设置权限请求拦截器(局部设置)
                    //.interceptor(new PermissionInterceptor())
                    // 设置不触发错误检测机制(局部设置)
                    //.unchecked()
                    .request(new OnPermissionCallback() {
// val message = "PermissionX需要您同意以下权限才能正常使用"
                })
                .request((allGranted, grantedList, deniedList) -> {
                    if (allGranted) {//所有申请的权限都已通过
//                        startCamera();
                    } else {//您拒绝了如下权限:$deniedList
                        @Override
                        public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
                            if (allGranted) {
                            }
                        }
                    }
                });
                        @Override
                        public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
                            if (doNotAskAgain) {
                                // 如果是被永久拒绝就跳转到应用权限系统设置页面
                            } else {
//                                toast("获取录音和日历权限失败");
                            }
                        }
                    });
        } catch (
                Throwable e) {
            e.printStackTrace();
        }
    }
    @Override
@@ -349,6 +370,7 @@
            // 汉字的Unicode范围是:0x4e00 - 0x9fa5
            return (c >= 0x4e00 && c <= 0x9fa5);
        }
    }
    @Override