/**
* 获得手机信息工具类
* @描述 TODO
* @项目名称 App_News
* @包名 com.android.news.util
* @类名 PhoneInfo
* @author chenlin
* @date 2013年5月12日 下午7:28:52
* @version 1.0
*/
public class PhoneInfo {

private TelephonyManager telephonyManager;/** * 国际移动用户识别码 */private String IMSI;private Context cxt;public PhoneInfo(Context context) {    cxt = context;    telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);}/** * 获取电话号码 */public String getNativePhoneNumber() {    return telephonyManager.getLine1Number();}/** * 获取设备ID */public String getDeviceId() {    return telephonyManager.getDeviceId();}/** * 获取手机服务商信息 */public String getProvidersName() {    String ProvidersName = "N/A";    try {        IMSI = telephonyManager.getSubscriberId();        // IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。        if (IMSI.startsWith("46000") || IMSI.startsWith("46002")) {            ProvidersName = "中国移动";        } else if (IMSI.startsWith("46001")) {            ProvidersName = "中国联通";        } else if (IMSI.startsWith("46003")) {            ProvidersName = "中国电信";        }    } catch (Exception e) {        e.printStackTrace();    }    return ProvidersName;}public String getPhoneInfo() {    TelephonyManager tm = (TelephonyManager) cxt.getSystemService(Context.TELEPHONY_SERVICE);    StringBuilder sb = new StringBuilder();    sb.append("\nDeviceId(IMEI) = " + tm.getDeviceId());    sb.append("\nDeviceSoftwareVersion = " + tm.getDeviceSoftwareVersion());    sb.append("\nLine1Number = " + tm.getLine1Number());    sb.append("\nNetworkCountryIso = " + tm.getNetworkCountryIso());    sb.append("\nNetworkOperator = " + tm.getNetworkOperator());    sb.append("\nNetworkOperatorName = " + tm.getNetworkOperatorName());    sb.append("\nNetworkType = " + tm.getNetworkType());    sb.append("\nPhoneType = " + tm.getPhoneType());    sb.append("\nSimCountryIso = " + tm.getSimCountryIso());    sb.append("\nSimOperator = " + tm.getSimOperator());    sb.append("\nSimOperatorName = " + tm.getSimOperatorName());    sb.append("\nSimSerialNumber = " + tm.getSimSerialNumber());    sb.append("\nSimState = " + tm.getSimState());    sb.append("\nSubscriberId(IMSI) = " + tm.getSubscriberId());    sb.append("\nVoiceMailNumber = " + tm.getVoiceMailNumber());    return sb.toString();}

}

更多相关文章

  1. Android获取本机号码及运营商
  2. Android 获取手机网络状态
  3. android实现异网双卡双待识别运营商网络
  4. android 判断网络连接、sim卡信息以及ping操作是否网络连接正常
  5. android核心基础(1)_什么是3G

随机推荐

  1. android 中使用TextView实现分段显示不同
  2. android surfaceflinger研究
  3. 【Android volley】Android库Volley的使
  4. Android Q 电量使用图分析 show app usag
  5. 【startActivityForResult】Android Acti
  6. [android源码下载索引贴】微信+二维码那
  7. Android中OpenMax的适配层
  8. Android(安卓)Parcelable和Serializable
  9. android:制作system.img(yaffs2)镜像
  10. Android上的模拟点击