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"/>

说明: WifiMAC

缺点:有的品牌,没有开启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则代表的是该项次安装的唯一值

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。