美文网首页
android获取设备唯一标识

android获取设备唯一标识

作者: Lna_35da | 来源:发表于2018-05-09 16:49 被阅读0次

    在通讯app中常常要获取设备的唯一标识来进行一些操作,但是在android6.0后获取imei是需要动态获取权限的,如果用户拒绝了权限那就什么都获取不到了。所以找到了另一种的解决方案拼接Build类里的一些信息。
    大多数的Build成员都是字符串形式的,我们只取他们的长度信息。我们取到13个数字,并在前面加上“35”。这样这个ID看起来就和15位IMEI一样了。

      /**获取设备唯一识别码*/
        public static String getPhoneSign(){
            String info="";
            String deviceInfo="35"+ Build.BOARD.length()%10+Build.BRAND.length()%10+
                    Build.CPU_ABI.length()%10+Build.DEVICE.length()%10+
                    Build.DISPLAY.length()%10+Build.HOST.length()%10+
                    Build.ID.length()%10+Build.MANUFACTURER.length()%10+
                    Build.MODEL.length()%10+Build.PRODUCT.length()%10+
                    Build.TAGS.length()%10+Build.TYPE.length()%10+
                    Build.USER.length()%10;
            try {
                info=android.os.Build.class.getField("SERIAL").get(null).toString();
                return new UUID(deviceInfo.hashCode(),info.hashCode()).toString();
            }catch (Exception e){
                info="info";
            }
            return info;
        }
    

    相关文章

      网友评论

          本文标题:android获取设备唯一标识

          本文链接:https://www.haomeiwen.com/subject/fnhorftx.html