Android设备的唯一标识符
1.IMEI (手机的身份证号码)
IMEI(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的”电子串号”,它与每台移动电话机一一对应,而且该码是全世界唯一的。每一只移动电话机在组装完成后都将被赋予一个全球唯一的一组号码,这个号码从生产到交付使用都将被制造生产的厂商所记录。
有些设备的IMEI有两个,可以在拨号键盘输入“*#06#”查看。普通APP获取需要申请权限():
//权限 <uses-permissionandroid:name="android.permission.READ_PHONE_STATE" />
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
//获取IMEI号
String imei = telephonyManager.getDeviceId();
2.IMSI (SIM卡的身份证号码)
IMSI是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使用0~9的数字,例如460010280100023。其中MCC是移动用户所属国家代号,占3位数字,中国的MCC规定为460;MNC是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网;MSIN是移动用户识别码,用以识别某一移动通信网中的移动用户,
IMSI与IMEI权限相同,获取代码:
//权限 <uses-permissionandroid:name="android.permission.READ_PHONE_STATE" />
TelephonyManager telephonyManager=(TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
//获取IMSI号
String imsi=telephonyManager.getSubscriberId();
3.ANDROID_ID
ANDROID_ID 是一串64位的数字,并以16进制字符串的形式保存下来,是设备首次启动时随机生成的设备的第一个引导