移动端设备ID标识整理(IMEI、MEID、ICCID...

移动端设备ID标识整理(IMEI、MEID、ICCID...

移动设备ID信息

在移动端产品的开发中,如何定位一台设备,定位一个人,是一个棘手的问题,在适配的过程中也会遇到千奇百怪的情况。本文介绍了常用的设备ID以及标识设备的方法与一些常见问题。 移动设备ID可分为三部分:硬件层面,系统层面,软件层面。

系统区别

由于IOS系统限制问题,在IOS上可获取的设备ID为IDFV、IDFA,其他设备ID需要越狱手机才可获取。 而在Android系统中,通常使用IMEI、MAC去标识一台设备。但除了这几个ID之外,还有MEID、SN码、ANDROID_ID、IMSI、ICCID等ID,各自有着自己的用途。

Android系统相关ID信息

以下是一个Android手机正常可获取到的ID信息

下面逐个介绍这些ID以及用途

硬件层面

硬件层面的ID标识一般用于跨应用获取设备信息,主要有:标识设备的IMEI、MEID、MAC(网卡)及标识SIM卡的IMSI、ICCID。 硬件信息烧制在硬件之中,属于底层信息,不可更改。但可以通过修改系统调用API达到修改获取的目的。

IMEI、MEID

简介

IMEI、MEID都是用于标识一台物理设备的ID信息。在Android 8.0以下系统提供的API中,会根据不同条件返回二者之一的信息。

IMEI: 国际移动设备识别码,是区别移动设备的标志,一般用于标识某一台独立的设备,双卡双待的手机有两个IMEI号。 格式:15位十进制数

MEID: 同样也是移动设备标识码,但一般用于CDMA制式的设备上,是ESN码的升级版。 格式:14位十六进制数

权限

获取时,二者均需要开启权限:READ_PHONE_STATE。 在Android 6.0以上的版本中,若需要获取该权限的内容,第一次启动时系统会给出弹窗提示: XXX需要使用电话权限...

API

Android 8.0以上的系统,TelephonyManager提供了两个独立的API以获取IMEI和MEID: getImei 、 getMeid 。两个API都可传入下标号获取多个设备号信息(截止今天8.0以上版本约占市场份额的6%)。 Android 8.0以下的系统获取IMEI或MEID的API为TelephonyManager.getDeviceId(),若当前设备有MEID号,则优先返回MEID,否则返回IMEI号。则获取到的设备ID需要通过长度判断才能知晓该ID为I

相关养生推荐

长期不穿内衣,会发生什么?
日博365网

长期不穿内衣,会发生什么?

📅 07-15 👁️ 118
犀牛标志是什么牌子
365bet官方网站是多少

犀牛标志是什么牌子

📅 07-31 👁️ 193
win11密保问题出现怎么办?如何修改密保设置?