Android 获得手机信息工具类

/**
* 获得手机信息工具类
* @描述 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();
}

}

你可能感兴趣的:(android,手机)