獲取sim卡運營商

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;
 }
}


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章