根据手机sim卡获取运营商信息

原创 2016年08月31日 14:59:31

有的时候我们去获取手机运营商,显示给用户是移动,联通还是电信。android提供这套接口,可以拿到它。

1 核心代码,拿到电话管理者对象,从中去获取用户id,根据id的开头曲区分运营商信息

public class MainActivity extends Activity {
	private TelephonyManager telephonyManager;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		telephonyManager = (TelephonyManager) this 
	               .getSystemService(Context.TELEPHONY_SERVICE);
		String ProvidersName = null;  
        // 返回唯一的用户ID;就是这张卡的编号神马的  
        String IMSI = telephonyManager.getSubscriberId();  
        // IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。
        Toast.makeText(this, IMSI, 1).show();
        if(IMSI==null){
        	ProvidersName="未发现sim卡,请检查";
        }else{
        	 if (IMSI.startsWith("46000") || IMSI.startsWith("46002")|| IMSI.startsWith("46007")) {  
                 ProvidersName = "中国移动";  
             } else if (IMSI.startsWith("46001")|| IMSI.startsWith("46006")) {  
                 ProvidersName = "中国联通";  
             } else if (IMSI.startsWith("46003")|| IMSI.startsWith("46005")|| IMSI.startsWith("46011")) {  
                 ProvidersName = "中国电信"; 
             } 
        }
	}
}
开始,查了一点资料,只是看到00 02是移动,01 是联通,03是电信。后来测试遇到一个没反应,开始怎么都没找到原因,后来想了下06是对应多少,后来才知道并不只是那些。现在加上了就是上面的那样。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android开发之获取手机SIM卡信息

所有分类  >  开发语言与工具  >  移动开发  >  Android开发 Android开发之获取手机SIM卡信息 Android   2014-07-22 17:31:46 发布 您的评...
  • u014117094
  • u014117094
  • 2016年05月20日 00:50
  • 969

Android获取手机sim卡信息

  • 2016年09月29日 21:56
  • 916KB
  • 下载

如何区别Android手机卡三大运营商

对于运营商的区别,写下以下方法: private void CheckOperators() { TelephonyManager telmaManager = (TelephonyManage...
  • u014076894
  • u014076894
  • 2015年10月23日 13:54
  • 3741

根据手机sim卡获取运营商信息

有的时候我们去获取手机运营商,显示给用户是移动,联通还是电信。android提供这套接口,可以拿到它。 1 核心代码,拿到电话管理者对象,从中去获取用户id,根据id的开头曲区分运营商信息 pub...
  • qq_21267961
  • qq_21267961
  • 2016年08月31日 14:59
  • 422

SIM卡运营商信息整理

高通及联发科平台修改SIM卡运营商配置,与SIM卡运营商信息整理。
  • u012169524
  • u012169524
  • 2016年07月12日 23:09
  • 1632

Android开发之获取手机SIM卡信息

TelephonyManager是一个管理手机通话状态、电话网络信息的服务类,该类提供了大量的getXxx(),方法获取电话网络的相关信息。...
  • fengyuzhengfan
  • fengyuzhengfan
  • 2014年07月22日 10:39
  • 5838

android 怎么判断手机号是移动还是联通

imei和imsi imei、imsi是大部分应用自动采集的设备信息,Android中需要在MINIFEST声明权限,6.0以上手机还需要用户显示授权才可以正常获取。这两个标识有什么...
  • ChengTaoYan
  • ChengTaoYan
  • 2018年01月20日 14:38
  • 195

SIM相关术语MCC MNC UIM SIM PIN PUK简介

MCC:移动国家号码,由3位数字组成,唯一地识别移动用户所属的国家。 MNC:移动网号,由两位数字组成,用于识别移动用户所归属的移动网。 IMSI:区别移动用户的标志,储存在SIM卡中,可用于区别移动...
  • yin1031468524
  • yin1031468524
  • 2017年02月27日 11:13
  • 922

获取SIM卡信息的工具类

本工具类可以获取手机的IMSI、本机的手机号码、SIM卡的服务商。 移动、联通可正常获取到SIM卡的手机卡号,但是电信的获取不到。。。。 首先,需要在AndroidManifest.xml清单配置...
  • Zuo_0625
  • Zuo_0625
  • 2016年05月10日 10:07
  • 981

C#-根据手机号获得相应的信息

需求:用户输入根据手机号,获得手机号所在的省市信息思路:调用相关的API进行分析效果代码using System; using System.Collections.Generic; using Sy...
  • s10141303
  • s10141303
  • 2016年11月28日 12:42
  • 1015
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:根据手机sim卡获取运营商信息
举报原因:
原因补充:

(最多只允许输入30个字)