代码如下:

  1. package com.pei.activity;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.view.View;
  5. import android.view.View.OnClickListener;
  6. import android.widget.Button;
  7. import android.widget.TextView;
  8. /**
  9. * class name:AndroidUtilActivity<BR>
  10. * class description:show get sim card info activity<BR>
  11. * PS:注意权限 <BR>
  12. * Date:2012-3-12<BR>
  13. * @version 1.00
  14. * @author CODYY)peijiangping
  15. */
  16. public class AndroidUtilActivity extends Activity {
  17. private Button button_getSIMInfo;
  18. private TextView number;
  19. private TextView privoid;
  20. @Override
  21. public void onCreate(Bundle savedInstanceState) {
  22. super.onCreate(savedInstanceState);
  23. setContentView(R.layout.main);
  24. button_getSIMInfo = (Button) this.findViewById(R.id.getSIMInfo);
  25. number = (TextView) this.findViewById(R.id.textView1);
  26. privoid = (TextView) this.findViewById(R.id.textView2);
  27. button_getSIMInfo.setOnClickListener(new ButtonListener());
  28. }
  29. class ButtonListener implements OnClickListener {
  30. @Override
  31. public void onClick(View v) {
  32. if (v == button_getSIMInfo) {
  33. SIMCardInfo siminfo = new SIMCardInfo(AndroidUtilActivity.this);
  34. System.out.println(siminfo.getProvidersName());
  35. System.out.println(siminfo.getNativePhoneNumber());
  36. number.setText(siminfo.getNativePhoneNumber());
  37. privoid.setText(siminfo.getProvidersName());
  38. }
  39. }
  40. }
  41. }
  1. package com.pei.activity;
  2. import android.content.Context;
  3. import android.telephony.TelephonyManager;
  4. /**
  5. * class name:SIMCardInfo<BR>
  6. * class description:读取Sim卡信息<BR>
  7. * PS: 必须在加入各种权限 <BR>
  8. * Date:2012-3-12<BR>
  9. *
  10. * @version 1.00
  11. * @author CODYY)peijiangping
  12. */
  13. public class SIMCardInfo {
  14. /**
  15. * TelephonyManager提供设备上获取通讯服务信息的入口。 应用程序可以使用这个类方法确定的电信服务商和国家 以及某些类型的用户访问信息。
  16. * 应用程序也可以注册一个监听器到电话收状态的变化。不需要直接实例化这个类
  17. * 使用Context.getSystemService(Context.TELEPHONY_SERVICE)来获取这个类的实例。
  18. */
  19. private TelephonyManager telephonyManager;
  20. /**
  21. * 国际移动用户识别码
  22. */
  23. private String IMSI;
  24. public SIMCardInfo(Context context) {
  25. telephonyManager = (TelephonyManager) context
  26. .getSystemService(Context.TELEPHONY_SERVICE);
  27. }
  28. /**
  29. * Role:获取当前设置的电话号码
  30. * <BR>Date:2012-3-12
  31. * <BR>@author CODYY)peijiangping
  32. */
  33. public String getNativePhoneNumber() {
  34. String NativePhoneNumber=null;
  35. NativePhoneNumber=telephonyManager.getLine1Number();
  36. return NativePhoneNumber;
  37. }
  38. /**
  39. * Role:Telecom service providers获取手机服务商信息 <BR>
  40. * 需要加入权限<uses-permission
  41. * android:name="android.permission.READ_PHONE_STATE"/> <BR>
  42. * Date:2012-3-12 <BR>
  43. *
  44. * @author CODYY)peijiangping
  45. */
  46. public String getProvidersName() {
  47. String ProvidersName = null;
  48. // 返回唯一的用户ID;就是这张卡的编号神马的
  49. IMSI = telephonyManager.getSubscriberId();
  50. // IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。
  51. System.out.println(IMSI);
  52. if (IMSI.startsWith("46000") || IMSI.startsWith("46002")) {
  53. ProvidersName = "中国移动";
  54. } else if (IMSI.startsWith("46001")) {
  55. ProvidersName = "中国联通";
  56. } else if (IMSI.startsWith("46003")) {
  57. ProvidersName = "中国电信";
  58. }
  59. return ProvidersName;
  60. }
  61. }
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent"
  4. android:layout_height="fill_parent"
  5. android:orientation="vertical" android:gravity="center">
  6. <TextView
  7. android:id="@+id/textView1"
  8. android:layout_width="wrap_content"
  9. android:layout_height="wrap_content"
  10. android:text="TextView" />
  11. <TextView
  12. android:id="@+id/textView2"
  13. android:layout_width="wrap_content"
  14. android:layout_height="wrap_content"
  15. android:text="TextView" />
  16. <Button
  17. android:id="@+id/getSIMInfo"
  18. android:layout_width="wrap_content"
  19. android:layout_height="wrap_content"
  20. android:text="获取手机号码等信息" />
  21. </LinearLayout>

图片如下:

Android手机中获取手机号码和运营商信息的更多相关文章

  1. ios如何获取手机的网络状态和运营商名称

    本文转载至 http://blog.csdn.net/justinjing0612/article/details/38313747 以前获取手机的网络状态和运营商名称都是似有API, 现在我们可以大 ...

  2. iOS:关于获取网络类型和运营商信息

    目录 1. 获取运营商网络类型 2. 获取运营商信息 返回目录 1. 获取运营商网络类型 Apple的Reachability Sample看起来不错,但是只可以判断是否连接到互联网和是否连接Wifi ...

  3. Android开发之获取系统所有进程信息。

    最近在做一个app,有一个进程管理模块用于管理系统中正在运行的进程,并且可以关闭进程进行加速手机的功能,基本把它实现了出来.界面的效果都是自己写的,虽然有BUG,但是基本上能满足需求,后期我会改进BU ...

  4. .Net中获取打印机的相关信息

    原文:.Net中获取打印机的相关信息 新项目中牵涉到对打印机的一些操作,最重要的莫过于获取打印机的状态,IP等信息,代码量不大,但是也是自己花了一点时间总结出来的,希望能帮助需要的朋友. Printe ...

  5. Android 手机上获取手机当前上网IP地址

      [转] 原文              Android 手机上获取手机当前上网IP地址                (手机网关给手机号分配的IP) 每个手机上网通过移动网关的时候,网关都会给该手 ...

  6. 将文件从已Root Android手机中copy出来的几个cmd窗口命令

    将文件从已Root Android手机中copy出来的几个cmd窗口命令: 以shell身份登录adbadb shell进入adb后切换至root用户su更改文件的所属chown shell *更改文 ...

  7. 从Android手机中取出已安装的app包,导出apk

    从Android手机中取出已安装的app包,导出apk TAG:Android,提取,apk,adb,pm,root,导出apk 假设有这样一个场景,A君看到你手机上一个实用APP,想要安装到自己手机 ...

  8. 【Android】获取手机中已安装apk文件信息(PackageInfo、ResolveInfo)(应用图片、应用名、包名等)

    众所周知,通过PackageManager可以获取手机端已安装的apk文件的信息,具体代码如下 PackageManager packageManager = this.getPackageManag ...

  9. 调用手机在线API获取手机号码归属地信息

    手机在线(www.showji.com)始创于2001年,发展至今已拥有国内最准确.号段容量最大的手机号码归属地数据库系统, 目前号段容量将近33万条,每月保持两次以上规模数据更新,合作伙伴包括:百度 ...

随机推荐

  1. bzoj1070

    平均时间最短即总时间最短 首先不难想到,将每个工作人员拆成n个点 然后,我就卡住了, 的确,正向建图确实很难,因为我们不好表示在修第i个车之前,前面用了多少时间 于是我们应该逆向想一想,将这辆车作为某 ...

  2. RPC之——HTTP协议栈

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/52531185 今天,给大家带来一篇稍有深度的文章——<RPC之——HTTP协 ...

  3. ↗☻【HTML5秘籍 #BOOK#】第8章 使用CSS3

    开发商前缀-moz- Firefox-webkit- Chrome和Safari-ms- Internet Explorer-o- Opera 伪类创造的交互性虽好,但已经有点过时了.主要问题是—太突 ...

  4. JDK7新特性之fork/join框架

    The fork/join framework is an implementation of the ExecutorService interface that helps you take ad ...

  5. Java [Leetcode 100]Same Tree

    题目描述: Given two binary trees, write a function to check if they are equal or not. Two binary trees a ...

  6. oracle11g dataguard部署指南

    一.Oracle11DB+DG配置 1. 单机环境介绍(PRIMARY DATABASE) 主库 primary public ip                    192.168.0.252 ...

  7. [Bhatia.Matrix Analysis.Solutions to Exercises and Problems]ExI.4.6

    Let $A$ and $B$ be two matrices (not necessarily of the same size). Relative to the lexicographicall ...

  8. 关于触发器、存储过程和DBlink的综合运用 (转)

    关于触发器.存储过程和DBlink的综合运用 需求描述: 需要在两个不同oracl数据库实例中进行数据逻辑处理.如果A实例中的表有新数据插入或者数据更新,那么在B实例中执行与之相关的存储过程. 先假设 ...

  9. JAVACC详解

    JavaCC(Java Compiler Compiler)是一个用JAVA开发的最受欢迎的语法分析生成器.这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并把它转换成可以识别且匹配该语法的J ...

  10. 标准的TCP/IP工业以太网-EtherNet/IP

    标准的TCP/IP工业以太网-EtherNet/IP                            徐智穹以太网具有传输速度高.兼容性好.应用广泛等方面的优势,支持几乎所有流行的网络协议,其中 ...