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
     
  • 相关阅读:
    Python 简单的方法爬取b站dnf视频封面
    Opencv学习(一)
    某个代码
    2017年江西理工大学C语言程序设计竞赛(高级组)
    2017年江西理工大学C语言程序设计竞赛(初级组)
    两数相除
    华东交通大学2017年ACM“双基”程序设计竞赛 1009
    华东交通大学2017年ACM“双基”程序设计竞赛 1005
    UE4联机多人游戏基本设置
    菜鸟学习物联网---辨析基于Andriod 5.1,Linux,Windows10开发Dragon Board 410c板
  • 原文地址:https://www.cnblogs.com/zyh-blog/p/3343669.html
Copyright © 2011-2022 走看看