关闭

Android中TelephonyMnager的使用

649人阅读 评论(0) 收藏 举报
分类:

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

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Android中的Gallery的使用

我们有时候在iPhone手机上或者Windows上面看到动态的图片,可以通过鼠标或者手指触摸来移动它,产生动态的图片滚动效果,还可以根据你的点击或者触摸触发其他事件响应。同样的,在Android中也提...
  • u012854516
  • u012854516
  • 2014-05-27 17:33
  • 1205

在Android中使用kotlin(recyclerview的使用)

随着google宣布kotlin作为官方开发语言,在Android中使用kotlin的趋势也越来越明显,下面是我们在项目中常用的控件(recyclerview),那么我们在项目中怎么来将Java代码改...
  • small_technical
  • small_technical
  • 2017-05-25 09:28
  • 2562

Android中%n$s的使用

前言大家在开发Android的过程中都会用到大量的字符串,这些字符串一般来说有两种,一种是在xml文件里面定义,另一种是在Java代码里定义,比如:网络错误!public static final S...
  • luoyanglizi
  • luoyanglizi
  • 2016-03-03 19:56
  • 1732

传智播客_Andorid_20天精通Android开发视频_第11天视频_视频_18_创建对话框使用上下文必须用activity

  • 2018-01-09 15:07
  • 20.76MB
  • 下载

传智播客_Andorid_20天精通Android开发视频_第13天视频_视频_04_使用内容解析者访问数据

  • 2018-01-09 15:07
  • 39.17MB
  • 下载

传智播客_Andorid_20天精通Android开发视频_第13天视频_视频_04_使用内容解析者访问数据

  • 2018-01-09 15:10
  • 39.17MB
  • 下载

Android C++高级编程使用NDK

  • 2018-01-09 11:32
  • 82.76MB
  • 下载

Android studio使用Lottie实现动画

  • 2017-10-10 16:29
  • 1.28MB
  • 下载

Http(get)请求数据Android Studio使用HttpClient

  • 2017-10-08 19:33
  • 20.50MB
  • 下载

android picasso使用demo

  • 2017-10-06 18:11
  • 24.42MB
  • 下载
    关于我
    目前就职于百度
    研究方向:Android,机器学习
    联系方式QQ:2979218500


      欢迎关注微信公众号:DroidMind
      精品内容独家发布平台
      呈现与博客不一样的技术干货
    个人资料
    • 访问:494020次
    • 积分:8053
    • 等级:
    • 排名:第2975名
    • 原创:285篇
    • 转载:48篇
    • 译文:22篇
    • 评论:65条