zoukankan      html  css  js  c++  java
  • 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 }
  • 相关阅读:
    [自用] 数论和组合计数类数学相关(定理&证明&板子)
    OI回忆录?
    [UOJ310] 黎明前的巧克力
    [总结] 后缀自动机学习笔记
    [总结] 动态点分治学习笔记
    [HEOI2018] 秘密袭击coat
    [51nod1355] 斐波那契的最小公倍数
    [SRM601] WinterAndSnowmen
    [总结] 二项式反演学习笔记
    [Luogu4705] 玩游戏
  • 原文地址:https://www.cnblogs.com/kevincode/p/3844697.html
Copyright © 2011-2022 走看看