您的位置:首页 > 编程语言

如何通过代码判断手机中是否有SIM卡

2013-03-29 12:47 435 查看
public String readSIMCard() {

TelephonyManager tm = (TelephonyManager)this.getSystemService(TELEPHONY_SERVICE);//取得相关系统服务

StringBuffer sb = new StringBuffer();

switch(tm.getSimState()){ //getSimState()取得sim的状态 有下面6中状态

case TelephonyManager.SIM_STATE_ABSENT :sb.append("无卡");break;

case TelephonyManager.SIM_STATE_UNKNOWN :sb.append("未知状态");break;

case TelephonyManager.SIM_STATE_NETWORK_LOCKED :sb.append("需要NetworkPIN解锁");break;

case TelephonyManager.SIM_STATE_PIN_REQUIRED :sb.append("需要PIN解锁");break;

case TelephonyManager.SIM_STATE_PUK_REQUIRED :sb.append("需要PUK解锁");break;

case TelephonyManager.SIM_STATE_READY :sb.append("良好");break;

}

if(tm.getSimSerialNumber()!=null){

sb.append("@" + tm.getSimSerialNumber().toString());

}else{

sb.append("@无法取得SIM卡号");

}

if(tm.getSimOperator().equals("")){

sb.append("@无法取得供货商代码");

}else{

sb.append("@" + tm.getSimOperator().toString());

}

if(tm.getSimOperatorName().equals("")){

sb.append("@无法取得供货商");

}else{

sb.append("@" + tm.getSimOperatorName().toString());

}

if(tm.getSimCountryIso().equals("")){

sb.append("@无法取得国籍");

}else{

sb.append("@" + tm.getSimCountryIso().toString());

}

if (tm.getNetworkOperator().equals("")) {

sb.append("@无法取得网络运营商");

} else {

sb.append("@" + tm.getNetworkOperator());

}

if (tm.getNetworkOperatorName().equals("")) {

sb.append("@无法取得网络运营商名称");

} else {

sb.append("@" + tm.getNetworkOperatorName());

}

if (tm.getNetworkType() == 0) {

sb.append("@无法取得网络类型");

} else {

sb.append("@" + tm.getNetworkType());

}

return sb.toString();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐