现在的位置: 首页 > 综合 > 正文

获取sim卡运营商

2014年03月14日 ⁄ 综合 ⁄ 共 1130字 ⁄ 字号 评论关闭
import android.content.Context;
import android.telephony.TelephonyManager;

/**
 * sim卡信息工具类,主要用来获取sim卡对应的imsi,以及判断移动客户所属网络运营商
 */
public class IMSIUtil {
 private static final String TAG = IMSIUtil.class.getSimpleName();
 
 /*
  * 标识移动客户所属移动网络
  * */
 public static final int NETWORK_UNKNOW = -1; //未知运营商
 public static final int NETWORK_CHINA_MOBILE = 0; //中国移动
 public static final int NETWORK_CHINA_UNICOM = 1; //中国联通
 public static final int NETWORK_CHINA_TELECOM = 2; //中国电信
 
 /**
  * 获取手机卡对应的imsi
  * @param context
  * @return
  */
 public static String getIMSI(Context context) {
  TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
  return manager.getSubscriberId();
 }
 
 /**
  * 获取移动客户所属移动网络
  * @param context
  * @return
  */
 public static int getNetwork(Context context) {
  TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
  String imsi = manager.getSubscriberId();
  if(imsi !=null) {
   if(imsi.startsWith("46000") || imsi.startsWith("46002")) {
    //中国移动
    return NETWORK_CHINA_MOBILE;
   } else if(imsi.startsWith("46001")) {
    //中国联通
    return NETWORK_CHINA_UNICOM;
   } else if(imsi.startsWith("46003")) {
    //中国电信
    return NETWORK_CHINA_TELECOM;
   } else {
    //未知运营商
    return NETWORK_UNKNOW;
   }
  }
  return NETWORK_UNKNOW;
 }
}

 

抱歉!评论已关闭.