󰅡收起

老薛网络

专注区域互联网运营、产品、发展、市场合作

24
五月

android设备唯一码的获取之一手机串号IMEI和网络识别号imsi等

作者: alizee
分类: APP
发布时间: 2016-05-24 11:57
1.IMEI
IMEI(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的”电子串号“,它与每台手机一一对应,而且该码是全世界唯一的。每一部手机在组装完成后都将被赋予一个全球唯一的一组号码,这个号码从生产到交付使用都将被制造生产的厂商所记录。手机用户可以在手机中查到自己手机的IMEI码。
*#06# 百度上说的跟下面方法获得的这个号相同

public String getDeviceId ()

Added in API level 1

Returns the unique device ID, for example, the IMEI for GSM and the MEID or ESN for CDMAphones. Return null if device ID is not available.

Requires Permission: READ_PHONE_STATE

    String deviceid = tm.getDeviceId();电信手机实际测试就是IMEI号

注意如果设备Id,不可用返回Null.也就是程序开发时不能只用它作为唯一的识别号,如果有多个设备获取不到,则区分不开。还有这个涉及到隐私,最好加密。

以下几个变量,如果设备没有电话相关功能的话,取值空
2.SimSerialNumber
//获取手机SIM卡的串号。
TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
String imei = tm.getSimSerialNumber();

Returns the serial number of the SIM, if applicable. Return null if it is unavailable.

Requires Permission: READ_PHONE_STATE

SIM卡与USIM有什么区别?

http://wenda.so.com/q/1367714667069196?src=9999

UIM卡,SIM卡,USIM卡有什么区别啊@可互换使用吗?

http://wenda.so.com/q/1374457206065518?src=9999

3.imsi
国际移动用户识别码(IMSI:International Mobile Subscriber Identification Number)是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使用0~9的数字。其中MCC是移动用户所属国家代号,占3位数字,中国的MCC规定为460;MNC是移动网号码,由两位或者三位数字组成,中国移动的移动网络编码(MNC)为00;用于识别移动用户所归属的移动通信网;MSIN是移动用户识别码,用以识别某一移动通信网中的移动用户。

String imsi = tm.getSubscriberId();

这个经电信的手机测试获取到的是状态信息里的MIN号
 手机号码      
注意,手机号码不是所有的都能获取。只是有一部分可以拿到。这个是由于移动运营商没有把手机号码的数据写入到sim卡中。这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。这就是为什么很多人得不到本机号码的原因
String tel = tm.getLine1Number();
//电信手机卡实际测试没有获取到
//测试我的小米1s 联通版 USIM卡获取到了手机号码
󰁠

本文出自 老薛网络 ,转载时请注明出处及相应链接。

本文永久链接: http://der.cc/2016/05/24/android%e8%ae%be%e5%a4%87%e5%94%af%e4%b8%80%e7%a0%81%e7%9a%84%e8%8e%b7%e5%8f%96%e4%b9%8b%e4%b8%80%e6%89%8b%e6%9c%ba%e4%b8%b2%e5%8f%b7imei%e5%92%8c%e7%bd%91%e7%bb%9c%e8%af%86%e5%88%ab%e5%8f%b7imsi/

发表评论

电子邮件地址不会被公开。 必填项已用*标注