android 唯一值
1.IMEI
TelephonyManager tM=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); String imei = tM.getDeviceId(); Log.v("ola_log", "imei:" + imei);
权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
说明:手机的IMEI值
缺点:有的只有Wifi的平板,获取得的值为NULL
2.Android_id
String android_id = Secure.getString(this.getBaseContext().getContentResolver(), Secure.ANDROID_ID); Log.v("ola_log", "android_id:" + android_id);
说明:设备第一次启动时产生的序号
缺点:网上有人说,某些品牌会有android id值重复的情况,回厂设定时,android id值会变更
3.Wifi_MAC
WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); Log.v("ola_log", "MacAddress:" + wifiInfo.getMacAddress());
权限:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
说明: Wifi的MAC
缺点:有的品牌,没有开启Wifi不能取得MAC值
4.Build.serial
String BuildSERIAL = android.os.Build.SERIAL; Log.v("ola_log", "BuildSERIAL:" + BuildSERIAL);
说明:硬件的唯一值
缺点:API 9以后才支持,这对一般的设备来说,已经不是问题
5.UUID
String UUID_Value = UUID.randomUUID().toString(); Log.v("ola_log", "UUID_Value:" + UUID_Value);
说明:randomUUID可以随机的制造一个唯一值,或是利用其他内建方法制造唯一值
(EX:nameUUIDFromBytes(byte[] name)).
缺点:必须要自已处理UUID的制造及储存,若使用randomUUID则代表的是该项次安装的唯一值
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。