一、获得手机SIM卡信息
布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- 获得手机卡信息的按钮 -->
<Button
android:id="@+id/btn_siminfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="当前SIM卡信息" />
<!-- 显示手机卡信息的标签 -->
<TextView
android:id="@+id/tv_siminfoshow"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20dp"/>
</LinearLayout>
MainActivity.java
//定义了本实例的主要Activity
public class MainActivity extends Activity {
// 定义当前手机卡信息的按钮
private Button btnNetWork;
//定义显示SIM卡信息的文本框
private TextView tvSimInfoShow;
//声明TelephonyManager对象
private TelephonyManager tm;
//定义显示SIM卡信息的String
private String strSimInfo;
//定义SIM卡的状态
private String [] simState={"状态未知","无SIM卡","被PIN加锁","被PUK加锁",
"被NetWork PIN加锁","已准备好"};
//定义手机的制式
private String [] phoneTypes={"未知","GSM","CDMA"};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获得locationManager服务
tm=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
//得到布局中的所有对象
btnNetWork = (Button) findViewById(R.id.btn_siminfo);
tvSimInfoShow=(TextView)findViewById(R.id.tv_siminfoshow);
//设置对象的监听器
btnNetWork.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
//获得设备的编号
String deviceId=tm.getDeviceId();
//获得SIM的国别
String Country=tm.getSimCountryIso();
//获取SIM卡序列号
String SIMSerial=tm.getSimSerialNumber();
//获取SIM卡状态
String SIMState=simState[tm.getSimState()];
//获取网络运营商代号
String networkOperator= tm.getNetworkOperator();
//获取网络运营商名称
String networkOperatorName= tm.getNetworkOperatorName();
//获得手机的制式
String phoneType=phoneTypes[tm.getPhoneType()];
strSimInfo="设备编号:"+deviceId+"\nSIM卡的国别: "+Country+"\nSIM卡序列号: "
+SIMSerial+"\nSIM卡状态: "+SIMState+"\n网络运营商代号 : "
+networkOperator+"\n网络运营商名称: "+networkOperatorName
+"\n手机的制式: "+phoneType;
//设置textview的text属性
tvSimInfoShow.setText(strSimInfo);
};
});
}
private void setListener() {
// 设置对象的监听器
btnNetWork.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//获得设备的编号
String deviceId=tm.getDeviceId();
//获得SIM的国别
String Country=tm.getSimCountryIso();
//获取SIM卡序列号
String SIMSerial=tm.getSimSerialNumber();
//获取SIM卡状态
String SIMState=simState[tm.getSimState()];
//获取网络运营商代号
String networkOperator= tm.getNetworkOperator();
//获取网络运营商名称
String networkOperatorName= tm.getNetworkOperatorName();
//获得手机的制式
String phoneType=phoneTypes[tm.getPhoneType()];
strSimInfo="设备编号:"+deviceId+"\nSIM卡的国别: "+Country+"\nSIM卡序列号: "+SIMSerial
+"\nSIM卡状态: "+SIMState+"\n网络运营商代号 : "+networkOperator+"\n网络运营商名称: "+networkOperatorName
+"\n手机的制式: "+phoneType;
//设置textview的text属性
tvSimInfoShow.setText(strSimInfo);
};
});
}
}

