手机只有IMEI1和IMEI2,没有MEID什么是全网通手机吗?

有的人问我要代码跟例子上次茬GITHUB上弄了一个,提供地址 给大家


最近这3天一直在做获取手机的,imei1,imei2,meid,sn等手机系统信息的小app在做的过程中,遇到了很多问题发现网络上对這块的技术帖子,并不多关键是还不详细,有的帖子三言两语几句话,其实说的还是4.0版本的获取获取了imei 获取不到meid,有的帖子贴了一堆代码其实也并没有什么卵用,有的帖子一长串反射代码也是无关痛痒,  所以今天我想把我这3天的心得分享出来,也想让广大开发鍺提供点个人的帮助!

开始之前,这是方法getDeviceId()的源码这串英文 我就不翻译了,自己看网上大部分帖子都是说用这个,其实这个只昰4.0的时候拿的但是4.0的手机也有双卡手机,所以这就有坑了


市面上的安卓手机有很多种,系统也有各种各样有的4.0左右系统,有的5.0左右系统有的6.0左右系统,有单卡槽的有双卡槽的,有全网通的有卡槽一个是uim一个是 Sim的,有双SIM的

现在我讲图文并茂展示下我手上测试机,测试后的情况

1.魅族PRO 6手机 双卡双待 卡1卡2均为SIM卡,系统是基于安卓5.0的 有自己的SIM

下面的图是我自己写的安卓代码得到的

下面图。是关于设置里面查找的


这是运行的GIF动态图


 但什么是全网通手机手机Phone在初始化时只创建了GSMPhone并没有创建CDMAPhone,此时是无法获取到meid只有插入CDMA卡才会通过PhoneProxy的deleteAndCreatePhone方法,将其中一个phone删除重新创建CDMALTEPhone。但是由于支持盲插功能,我们并不知道用户会将cdma卡插入哪个卡槽CDMALTEPhone有可能是卡1,也有可能是卡2因此使用google原生接口获取deviceId会出现如下三种情况:

好吧,上面罗里吧嗦的说了一堆 我就直接上代码了

//MX3手机会出现这个 * 获取手机系统内部信息工具类 * 获取当前手机系统版本号 * 拿到imei或者meid后判断是有多少位数

下面贴出我的整个工具类

* 获取手机系统内部信息工具类 * 获取当前手机系统版本號 * 拿到imei或者meid后判断是有多少位数
}

我要回帖

更多关于 什么是全网通手机 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信