左晓为主开发手持机充值管理机
zuoxiao
2024-08-09 9450bcb197c2de53982368d5c2059b31abed3b87
henanlibrary/src/main/java/com/dayu/henanlibrary/activity/HomeActivity.java
@@ -9,6 +9,7 @@
import android.view.View;
import android.widget.Toast;
import com.dayu.baselibrary.utils.DeviceUtils;
import com.dayu.baselibrary.utils.TipUtil;
import com.dayu.baselibrary.view.PassWordDialog;
import com.dayu.henanlibrary.HeNanApplication;
@@ -61,7 +62,7 @@
            // 生成 1 到 12 之间的随机数字
            int randomNumber = random.nextInt(12) + 1;
            AdminDataBean adminDataBean = new AdminDataBean();
            adminDataBean.setSerial(randomNumber + generateUniqueNumber(getSN()));
            adminDataBean.setSerial(randomNumber + generateUniqueNumber(DeviceUtils.getSN()));
            baseDao.adminDao().insert(adminDataBean);
        }
@@ -146,36 +147,5 @@
        }
    }
    @SuppressLint("MissingPermission")
    public static String getSN() {
        String serial = null;
        try {
            Class<?> c = Class.forName("android.os.SystemProperties");
            Method get = c.getMethod("get", String.class);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
                try {
                    serial = (String) get.invoke(c, "ro.sunmi.serial");
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return serial;
            } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                serial = Build.getSerial();
                return serial;
            } else {
                //安卓8以下使用Build.SERIAL相同方式
                //return Build.SERIAL;
                try {
                    serial = (String) get.invoke(c, "ro.serialno");
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return serial;
            }
        } catch (ClassNotFoundException e) {
            throw new RuntimeException(e);
        } catch (NoSuchMethodException e) {
            throw new RuntimeException(e);
        }
    }
}