Android 读SIM卡信息

TelephonyManager的应用

手机的最主要功用就是打电话,如果没有电信公司提供的SIM卡,就不能正常地拨打电话,那么,我们有什么方法可以取得SIM卡的状态及相关资料呢?

Android API中的TelephonyManager(Android.telephony.TelephonyManager)对象,提供了几个方法可以快速取得SIM卡的状态及相关信息。
程序中以getSystemService(TELEPHONY_SERVICE)来取得TelephonyManager对象,以TelephonyManager提供的方法来取得SIM卡状态及相关信息,将取得的信息存入自定义的MyAdapter中,最后以setListAdapter()将MyAdpter内的信息显示于ListView中。

  1 import android.telephony.TelephonyManager;   2   3   4   5 public class EX05_18 extends ListActivity {   6   7 private TelephonyManager telMgr;   8   9 private List<String> item=new ArrayList<String>();  10  11 private List<String> value=new ArrayList<String>();  12  13  14  15 @SuppressWarnings("static-access")  16  17 @Override  18  19 public void onCreate(Bundle savedInstanceState) {  20  21 super.onCreate(savedInstanceState);  22  23 /* 载入main.xml Layout */  24  25 setContentView(R.layout.main);  26  27 telMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);  28  29 /* 将取得的信息写入List中 */  30  31 /* 取得SIM卡状态 */  32  33 item.add(getResources().getText(R.string.str_list0).toString());  34  35 if(telMgr.getSimState()==telMgr.SIM_STATE_READY) {  36  37 value.add("良好");  38  39 } else if(telMgr.getSimState()==telMgr.SIM_STATE_ABSENT) {  40  41 value.add("无SIM卡");  42  43 } else {  44  45 value.add("SIM卡被锁定或未知的状态");  46  47 }  48  49 /* 取得SIM卡卡号 */  50  51 item.add(getResources().getText(R.string.str_list1).toString());  52  53 if(telMgr.getSimSerialNumber()!=null) {  54  55 value.add(telMgr.getSimSerialNumber());  56  57 } else {  58  59 value.add("无法取得");  60  61 }  62  63 /* 取得SIM卡供货商代码 */  64  65 item.add(getResources().getText(R.string.str_list2).toString());  66  67 if(telMgr.getSimOperator().equals("")) {  68  69 value.add("无法取得");  70  71 } else {  72  73 value.add(telMgr.getSimOperator());  74  75 }  76  77 /* 取得SIM卡供货商名称 */  78  79 item.add(getResources().getText(R.string.str_list3).toString());  80  81 if(telMgr.getSimOperatorName().equals("")) {  82  83 value.add("无法取得");  84  85 } else {  86  87 value.add(telMgr.getSimOperatorName());  88  89 }  90  91 /* 取得SIM卡国别 */  92  93 item.add(getResources().getText(R.string.str_list4).toString());  94  95 if(telMgr.getSimCountryIso().equals("")) {  96  97 value.add("无法取得");  98  99 } else { 100 101 value.add(telMgr.getSimCountryIso()); 102 103 } 104 105 /* 使用自定义的MyAdapter来将数据传入ListActivity */ 106 107 setListAdapter(new MyAdapter(this,item,value)); 108 109 } 110 111 112 113 } 

Android 读SIM卡信息

时间: 2024-11-09 15:08:01

Android 读SIM卡信息的相关文章

Android如何获取SIM卡信息

android 获取sim卡运营商信息 TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE); TelephonyManager 的使用 TelephonyManager 提供设备上获取通讯服务信息的入口,应用程序使用这个类的方法来获取电话的服务商或者状态.程序也可以注册一个监听器来监听电话状态的改变. 不需要直接实例化这个类,使用Context.getSystemS

Android开发之获取手机SIM卡信息

TelephonyManager是一个管理手机通话状态.电话网络信息的服务类.该类提供了大量的getXxx(),方法获取电话网络的相关信息. TelephonyManager类概述: 可用于訪问有关设备上的电话服务信息. 应用程序能够使用这个类的方法来确定电话服务和状态,以及訪问某些类型的用户信息.应用程序还能够注冊一个侦听器以接收的电话状态变化通知. 你不能直接实例化这个类;相反,你能够通过Context.getSystemService(Context.TELEPHONY_SERVICE)方

android 判断网络连接、sim卡信息以及ping操作是否网络连接正常

  //判断是否为wifi连接     public boolean isWifiConnected(Context context) {         if (context != null) {             ConnectivityManager mConnectivityManager = (ConnectivityManager) context                     .getSystemService(Context.CONNECTIVITY_SERVI

SIM卡信息的管理

MTK平台上,所有插入到手机中的SIM卡的信息都会存储在数据库com.android.providers.telephony中. 原始的数据库 图表 1 SimInfo数据表的结构 从上图示中,我们可以看到siminfo表的大致结构,包含字段:_id, display_name, name_source, number, display_number_format, icc_id, color, slot, operator, data_roaming.Siminfo表的ContentProvi

获取SIM卡信息的工具类

本工具类可以获取手机的IMSI.本机的手机号码.SIM卡的服务商. 移动.联通可正常获取到SIM卡的手机卡号,但是电信的获取不到.... 首先,需要在AndroidManifest.xml清单配置文件中添加权限: <uses-permission android:name="android.permission.READ_PHONE_STATE"/> 下面是工具类的代码 SIMCardInfo.java import android.content.Context; imp

Android - 判断SIM卡状态

Android判断SIM卡状态, 是否插入SIM卡. 例如: 根据SIM判断优先使用的网络类型. SIM卡状态 /** * 判断是否包含SIM卡 * * @return 状态 */ public static boolean hasSimCard() { Context context = App.getAppContext(); TelephonyManager telMgr = (TelephonyManager) context.getSystemService(Context.TELEP

android 获取sim卡运营商信息(转)

TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE); 注意:一些电话信息需要相应的权限. // 获取服务提供商名字,比如电信,联通,移动用下面的方法第一种方法: 获取手机的IMSI码,并判断是中国移动\中国联通\中国电信 getSimOperatorName() //Returns the Service Provider Name (SPN). IMSI 国际移动

每日总结 - Android 读取SIM卡参数

1 package com.water.activity; 2 3 import java.util.List; 4 5 import android.app.Activity; 6 import android.os.Bundle; 7 import android.telephony.CellLocation; 8 import android.telephony.NeighboringCellInfo; 9 import android.telephony.TelephonyManager

Android 读取SIM卡参数

package com.water.activity; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.telephony.CellLocation; import android.telephony.NeighboringCellInfo; import android.telephony.TelephonyManager; import android.u