android如何获取设备的唯一设备码

    在某些项目中,需要记录用户的某些设置,或行为,并上传到服务器,如果无需用户登录注册,就可记录独立这些内容,就需要用到设备的某些独立的序列。(以下部分android需要API8以以上,android2.3测试成功)

   首先,先想想可以从哪些方面可以入手,

1手机号码,2手机MIUI号,3设备的序列号,4wifi的mac码,5最后一种办法就只能使用UUID

   在获取某些手机信息时需要某些权限的

1首先,添加权限:

 <uses-permission android:name="android.permission.READ_PHONE_STATE"/>

有了权限之后才能使用 TelephonyManager ,不然会报没有权限的错误。

TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService( Context.TELEPHONY_SERVICE); 

        //获取本机MIEI号码(仅手机存在)
        String deviceId = telephonyManager.getDeviceId();
        //获取设备序列号
        String sn =  telephonyManager.getSimSerialNumber();
        //获取本机电话号码
        String phonenumber = telephonyManager.getLine1Number();

获取wifi的mac码需要添加剂权限

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

        WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
        WifiInfo info = wifi.getConnectionInfo();
         //获取wifi设备的mac码
        String mac = info.getMacAddress();

获取本机号码:

        //获取本机型号
        String phonetype = android.os.Build.MODEL;

随机数:
        //随机数

        String uuid = UUID.randomUUID();






你可能感兴趣的:(android唯一识别码)