免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1385 | 回复: 1
打印 上一主题 下一主题

Android 读SIM卡信息 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-02-25 19:54 |只看该作者 |倒序浏览
Android 读SIM卡信息










TelephonyManager的应用

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

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

View Code
  1.   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 }  
  2. 复制代码
复制代码

论坛徽章:
0
2 [报告]
发表于 2012-02-25 19:55 |只看该作者
谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP