android的唯一性
1.IMEI
TelephonyManagertM=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
Stringimei=tM.getDeviceId();
Log.v("ola_log","imei:"+imei);
权限:
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
说明:手机的IMEI值
缺点:有的只有Wifi的平板,获取得的值为NULL
2.Android_id
Stringandroid_id=Secure.getString(this.getBaseContext().getContentResolver(),Secure.ANDROID_ID);
Log.v("ola_log","android_id:"+android_id);
说明:设备第一次启动时产生的序号
缺点:网上有人说,某些品牌会有androidid值重复的情况,回厂设定时,androidid值会变更
3.Wifi_MAC
WifiManagerwifiManager=(WifiManager)this.getSystemService(Context.WIFI_SERVICE);
WifiInfowifiInfo=wifiManager.getConnectionInfo();
Log.v("ola_log","MacAddress:"+wifiInfo.getMacAddress());
权限:
<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
说明:Wifi的MAC
缺点:有的品牌,没有开启Wifi不能取得MAC值
4.Build.serial
StringBuildSERIAL=android.os.Build.SERIAL;
Log.v("ola_log","BuildSERIAL:"+BuildSERIAL);
说明:硬件的唯一值
缺点:API9以后才支持,这对一般的设备来说,已经不是问题
5.UUID
StringUUID_Value=UUID.randomUUID().toString();
Log.v("ola_log","UUID_Value:"+UUID_Value);
说明:randomUUID可以随机的制造一个唯一值,或是利用其他内建方法制造唯一值
(EX:nameUUIDFromBytes(byte[]name)).
缺点:必须要自已处理UUID的制造及储存,若使用randomUUID则代表的是该项次安装的唯一值
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。