zoukankan      html  css  js  c++  java
  • 026、TelephonyManager的应用

    手机最主要的功能就是打电话,可以通过TelephonyManager提供的方法来获取SIM卡的状态和相关资料。
    通过getSystemService(Context.TELEPHONY_SERVICE)取得TelephonyManager对象。
    代码:
     
       /**
         * 获取SIM卡信息
         */
        private void loadTelephonyData() {
            //取得SIM卡状态
            items.add("SIM卡状态");
            switch (tm.getSimState()) {
            case TelephonyManager.SIM_STATE_READY:
                values.add("良好");
                break;
            case TelephonyManager.SIM_STATE_ABSENT:
                values.add("无SIM卡");
                break;
            default:
                values.add("SIM卡被锁定或未知的状态");
                break;
            }
            
            //获取SIM卡卡号
            items.add("SIM卡卡号");
            if(tm.getSimSerialNumber()==null){
                values.add("无法获取号码");
            }else{
                values.add(tm.getSimSerialNumber());
            }
            
            //取得SIM卡供货商代码
            items.add("SIM卡供货商代码");
            if("".equals(tm.getSimOperator())){
                values.add("无法获取供应商代码");
            }else{
                values.add(tm.getSimOperator());
            }
            
            //获取SIM卡供应商名称
            items.add("SIM卡供应商名称");
            if("".equals(tm.getSimOperatorName())){
                values.add("无法获取供应商名称");
            }else{
                values.add(tm.getSimOperatorName());
            }
            
            //获取SIM卡区域
            items.add("SIM卡区域");
            if("".equals(tm.getSimCountryIso())){
                values.add("无法获取SIM卡区域");
            }else{
                values.add(tm.getSimCountryIso());
            }
        }
     
     
    AndroidManifest.xml本身必须要在Activity里设置读取电话状态的权限(Android.permission.READ_PHONE_STATE):
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>

     

     
    上述程序以TelephonyManager.getSimState()方法来取得SIM卡的状态,可能出现的返回状态如下表:
    常数名称 说明 常数值
    SIM_STATE_ABSENT 手机内无SIM卡 1
    SIM_STATE_NETWORK_LOCKED 需要Network PIN解锁 4
    SIM_STATE_PIN_REQUIRED 需要SIM卡的PIN解锁 2
    SIM_STATE_PUK_REQUIRED 需要SIM卡的PUK解锁 3
    SIM_STATE_READY SIM卡已准备好 5
    SIM_STATE_UNKNOWN 状态未知 0
     
  • 相关阅读:
    tyvj P3737 逐个击破
    最小生成树 kruskal
    最小生成树 prim
    code2039 骑马修栏杆
    前端优化
    数组1
    数组
    序列化对象
    解决iphone横屏时字体变大问题或者内容大小不一样等...
    Media Queries详解
  • 原文地址:https://www.cnblogs.com/zyh-blog/p/3343669.html
Copyright © 2011-2022 走看看