2011-03-05 11:21:46 |  分类: Android |  标签: sim   android   telephonymanager    | 字号   订阅

TelephonyManager这个类很有用,可以得到很多关于手机和Sim卡的信息。
直接上注释后的代码,请享用

package net.sunniwell.app;
import android.app.Activity;
import android.os.Bundle;
import android.telephony.CellLocation;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
public class TelManager extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);
 
  /*
   * 电话状态:
   * 1.tm.CALL_STATE_IDLE=0            无活动
   * 2.tm.CALL_STATE_RINGING=1     响铃
   * 3.tm.CALL_STATE_OFFHOOK=2  摘机
   */

  tm.getCallState(); //int
 
  /*
   * 电话方位:
   */

  tm.getCellLocation(); //CellLocation
 
  /*
   * 唯一的设备ID:
   * GSM手机的 IMEI 和 CDMA手机的 MEID.
   * Return null if device ID is not available.
   */

  tm.getDeviceId(); //String
 
  /*
   * 设备的软件版本号:
   * 例如:the IMEI/SV(software version) for GSM phones.
   * Return null if the software version is not available.
   */

  tm.getDeviceSoftwareVersion(); //String
 
  /*
   * 手机号:
   * GSM手机的 MSISDN.
   * Return null if it is unavailable.
   */

  tm.getLine1Number(); //String
 
  /*
   * 附近的电话的信息:
   * 类型:List
   * 需要权限:android.Manifest.permission#ACCESS_COARSE_UPDATES
   */
  tm.getNeighboringCellInfo(); //List
 
  /*
   * 获取ISO标准的国家码,即国际长途区号。
   * 注意:仅当用户已在网络注册后有效。
   *       在CDMA网络中结果也许不可靠。
   */

  tm.getNetworkCountryIso(); //String
 
  /*
   * MCC+MNC(mobile country code + mobile network code)
   * 注意:仅当用户已在网络注册时有效。
   *    在CDMA网络中结果也许不可靠。
   */

  tm.getNetworkOperator(); //String
 
  /*
   * 按照字母次序的current registered operator(当前已注册的用户)的名字
   * 注意:仅当用户已在网络注册时有效。
   *    在CDMA网络中结果也许不可靠。
   */

  tm.getNetworkOperatorName(); //String
 
  /*
   * 当前使用的网络类型:
   * 例如: NETWORK_TYPE_UNKNOWN  网络类型未知  0
   * NETWORK_TYPE_GPRS     GPRS网络  1
   * NETWORK_TYPE_EDGE     EDGE网络  2
   * NETWORK_TYPE_UMTS     UMTS网络  3
   * NETWORK_TYPE_HSDPA    HSDPA网络  8 
   * NETWORK_TYPE_HSUPA    HSUPA网络  9
   * NETWORK_TYPE_HSPA     HSPA网络  10
   * NETWORK_TYPE_CDMA     CDMA网络,IS95A 或 IS95B.  4
   * NETWORK_TYPE_EVDO_0   EVDO网络, revision 0.  5
   * NETWORK_TYPE_EVDO_A   EVDO网络, revision A.  6
   * NETWORK_TYPE_1xRTT    1xRTT网络  7
   */

  tm.getNetworkType(); //int
 
  /*
   * 手机类型:
   * 例如: PHONE_TYPE_NONE  无信号
   * PHONE_TYPE_GSM   GSM信号
   * PHONE_TYPE_CDMA  CDMA信号
   */

  tm.getPhoneType(); //int
 
  /*
   * Returns the ISO country code equivalent for the SIM provider's country code.
   * 获取ISO国家码,相当于提供SIM卡的国家码。
   */

  tm.getSimCountryIso(); //String
 
  /*
   * Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits.
   * 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字.
   * SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).
   */

  tm.getSimOperator(); //String
 
  /*
   * 服务商名称:
   * 例如:中国移动、联通
   * SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).
   */

  tm.getSimOperatorName(); //String
 
  /*
   * SIM卡的序列号:
   * 需要权限:READ_PHONE_STATE
   */

  tm.getSimSerialNumber(); //String
 
  /*
   * SIM的状态信息:
   *  SIM_STATE_UNKNOWN             未知状态 0
   *  SIM_STATE_ABSENT                 没插卡 1
   *  SIM_STATE_PIN_REQUIRED     锁定状态,需要用户的PIN码解锁 2
   *  SIM_STATE_PUK_REQUIRED    锁定状态,需要用户的PUK码解锁 3
   *  SIM_STATE_NETWORK_LOCKED   锁定状态,需要网络的PIN码解锁 4
   *  SIM_STATE_READY            就绪状态 5
   */

  tm.getSimState(); //int
 
  /*
   * 唯一的用户ID:
   * 例如:IMSI(国际移动用户识别码) for a GSM phone.
   * 需要权限:READ_PHONE_STATE
   */

  tm.getSubscriberId(); //String
 
  /*
   * 取得和语音邮件相关的标签,即为识别符
   * 需要权限:READ_PHONE_STATE
   */

  tm.getVoiceMailAlphaTag(); //String
 
  /*
   * 获取语音邮件号码:
   * 需要权限:READ_PHONE_STATE
   */

  tm.getVoiceMailNumber(); //String
 
  /*
   * ICC卡是否存在
   */

  tm.hasIccCard(); //boolean
 
  /*
   * 是否漫游:
   * (在GSM用途下)
   */

  tm.isNetworkRoaming(); //
 
}
}
【from http://yansaibo.javaeye.com/blog/728230

更多相关文章

  1. Android(安卓)背景图片重复平铺
  2. Android(安卓)Process 优先级
  3. Android(安卓)NDK-r4 sample--准备(一)
  4. Android(安卓)RIL 总体架构介绍
  5. Android动态权限管理
  6. android selector
  7. Github 上Top1的Android(安卓)异步网络请求框架
  8. Android判断WIFI是否打开的方法
  9. Android(安卓)RIL总体架构介绍

随机推荐

  1. 关于android录音权限被用户禁用的问题解
  2. android 拍照,图片裁剪,选择图片
  3. animation1
  4. 获取Android各类系统相关信息的接口实现
  5. 隐藏 video标签的下载按钮
  6. android(9)(使用pull解析xml文件)
  7. android DTMFTwelveKeyDialer使用中的一
  8. [置顶] android,在java代码中,如何给textvi
  9. 控件_RadioGroup&&RadioButton(单选按钮)
  10. Android小应用之Google天气预报