获取sim卡运营商

来源:互联网 发布:詹姆斯力量数据 编辑:程序博客网 时间:2024/05/01 04:00
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; }}