首页 > 移动平台 > 详细

android获取手机的IMSI码

时间:2014-04-30 07:38:23      阅读:486      评论:0      收藏:0      [点我收藏+]

android--获取手机的IMSI码,并判断是中国移动\中国联通\中国电信bubuko.com,布布扣转载 

TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);    

String imsi = telManager.getSubscriberId();

  if(imsi!=null){    

  if(imsi.startsWith("46000") || imsi.startsWith("46002")){

//因为移动网络编号46000下的IMSI已经用完,所以虚拟了一个46002编号,134/159号段使用了此编号         

 //中国移动      }

else if(imsi.startsWith("46001"))

{          //中国联通     

 }else if(imsi.startsWith("46003"))

{          //中国电信      }  }  

 

IMSI:国际移动用户识别码(唯一标识),IMSI = MCC + MNC + MSIN,

其中MCC是指移动台国家代码(3 位,中国460),

MNC是指移动网代码(2 位中国00),MSIN是指移动用户识别号码(10 位 )

IMSI共有15位,其结构如下:

  MCC+MNC+MSIN ,(MNC+MSIN=NMSI)

  MCC:Mobile Country Code,移动国家码,MCC的资源由国际电联(ITU)统一分配和管理,唯一识别移动用户所属的国家,共3位,

       中国为460;

  MNC:Mobile Network Code,移动网络码,共2位,中国移动TD系统使用00,中国联通GSM系统使用01,中国移动GSM系统使用02,

       中国电信CDMA系统使用03,一个典型的IMSI号码为460030912121001;

  MSIN:Mobile Subscriber Identification Number共有10位,其结构如下:

  09+M0M1M2M3+ABCD

  其中的M0M1M2M3和MDN号码中的H0H1H2H3可存在对应关系,ABCD四位为自由分配。

  可以看出IMSI在MSIN号码前加了MCC即NMSI,可以区别出每个用户的来自的国家,因此可以实现国际漫游。在同一个国家内,

       如果有多个移动网络运营商,可以通过MNC来进行区别.

android获取手机的IMSI码,布布扣,bubuko.com

android获取手机的IMSI码

原文:http://www.cnblogs.com/code4app/p/3689212.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!