欢迎关注微信公众号:DroidMind

最新博文将会第一时间在微信公众号发布,欢迎关注!

Android中TelephonyMnager的使用

TelephonyMnager的工作以及获取手机信息所需要的权限

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
//获取TelephonyMnager对象

TelephonyManager  tm=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

//获取设备id

String deviceId = tm.getDeviceId();

//获取SIM卡序列号

String SIMSerialNumber=tm.getSimSerialNumber();

//获得网络国家ISO编码

String networkCountryISO=tm.getNetworkCountryIso();

//获取SIM国家ISO代码
String SIMCountryISO=tm.getSimCountryIso();

//获取该设备的软件版本

String softwareVersion=tm.getDeviceSoftwareVersion()

//获取语音信箱号码
String voiceMailNumber=tm.getVoiceMailNumber();

获取手机类型CDMA/ GSM/无

int phoneType=tm.getPhoneType();

switch (phoneType) 
{
    case (TelephonyManager.PHONE_TYPE_CDMA):
               // your code
                   break;
    case (TelephonyManager.PHONE_TYPE_GSM) 
               // your code                 
                   break;
    case (TelephonyManager.PHONE_TYPE_NONE):
               // your code              
                    break;
 }

判断手机是否在漫游,如果漫游返回true

boolean isRoaming=tm.isNetworkRoaming();
if(isRoaming)
      phoneDetails+="\nIs In Roaming : "+"YES";
else
     phoneDetails+="\nIs In Roaming : "+"NO";

获取SIM卡的状态

int SIMState=tm.getSimState();
switch(SIMState)
{
    case TelephonyManager.SIM_STATE_ABSENT :
        // your code
        break;
    case TelephonyManager.SIM_STATE_NETWORK_LOCKED :
        // your code
        break;
    case TelephonyManager.SIM_STATE_PIN_REQUIRED :
        // your code
        break;
    case TelephonyManager.SIM_STATE_PUK_REQUIRED :
        // your code
        break;
    case TelephonyManager.SIM_STATE_READY :
        // your code
        break;
    case TelephonyManager.SIM_STATE_UNKNOWN :
        // your code
        break;

}

获取网络信息

// Get connected network country ISO code
String networkCountry = telephonyManager.getNetworkCountryIso();

// Get the connected network operator ID (MCC + MNC)
String networkOperatorId = telephonyManager.getNetworkOperator();

// Get the connected network operator name
String networkName = telephonyManager.getNetworkOperatorName();

// Get the type of network you are connected with 
int networkType = telephonyManager.getNetworkType();
switch (networkType) {
case (TelephonyManager.NETWORK_TYPE_1xRTT) :"  Your Code ":
break;
case (TelephonyManager.NETWORK_TYPE_CDMA) :"  Your Code ":
break;
case (TelephonyManager.NETWORK_TYPE_EDGE) : "  Your Code ":
break;
case (TelephonyManager.NETWORK_TYPE_EVDO_0) :"  Your Code ":
break;

获取SIM卡的信息

int simState = telephonyManager.getSimState();
switch (simState) 
{
   case (TelephonyManager.SIM_STATE_ABSENT): break;
   case (TelephonyManager.SIM_STATE_NETWORK_LOCKED): break;
   case (TelephonyManager.SIM_STATE_PIN_REQUIRED): break;
   case (TelephonyManager.SIM_STATE_PUK_REQUIRED): break;
   case (TelephonyManager.SIM_STATE_UNKNOWN): break;
   case (TelephonyManager.SIM_STATE_READY): 
    {
        // Get the SIM country ISO code
        String simCountry = telephonyManager.getSimCountryIso();
        // Get the operator code of the active SIM (MCC + MNC)
        String simOperatorCode = telephonyManager.getSimOperator();
        // Get the name of the SIM operator
        String simOperatorName = telephonyManager.getSimOperatorName();
        // -- Requires READ_PHONE_STATE uses-permission --
        // Get the SIM’s serial number
        String simSerial = telephonyManager.getSimSerialNumber();
  }
}

翻译文章:Using Telephony Manager In Android with Example

阅读更多
个人分类: Android开发
想对作者说点什么? 我来说一句

TabActivity

2014年01月09日 48KB 下载

android高手进阶教程完整版 pdf

2013年06月07日 1.84MB 下载

Android使用KSOAP2调用WebService

2011年06月18日 247KB 下载

基于html5的android开发

2015年01月28日 1.71MB 下载

基于html5的android开发教程解释

2015年11月25日 1.71MB 下载

Android使用SVG实现炫酷动画效果

2017年11月27日 11.9MB 下载

android中ProgressDialog的使用

2017年06月12日 25.77MB 下载

Android中的JNI的使用_1

2013年04月06日 219KB 下载

Android中的JNI的使用_2

2013年04月06日 125KB 下载

没有更多推荐了,返回首页

不良信息举报

Android中TelephonyMnager的使用

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭