代码如下:

  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. 8.8-8.10 usaco

    summary:44 没救了...整天刷水迟早药丸! ❤bzoj3892: 区间dp.我原来的思路是dp[i][j]表示前i个数跳过了j次,那么转移可以前k个数转移了j-1次,枚举k就好了,但是这样是 ...

  2. 15个极好的Linux find命令示例(二)

    前阵子,我们审查了15件实事 find命令的例子(第一部分).查找命令可以做很多比只是在寻找基于名称的文件 (第2部分)在这篇文章中,让我们来讨论15高级find命令的例子, 包括-根据它访问,修改或 ...

  3. 精简版、GHOST版win7,arduino驱动安装失败的解决方法分享

    arduino组件安装驱动不成功,总是提示系统找不到指定文件. 原因是因为精简版缺少了两个关键的系统文件,导致无法安装.mdmcpq.inf  和 usbser.sys 解决方案详见帖子http:// ...

  4. erlang判断语法结构:if/case/guard

    erlang 有好几种常用的判断结构语句,如 if.case.guard 等.文章将分别对 if / case /guard 的特点做介绍,以及用例说明 1.if 结构 if Condition 1  ...

  5. 也用 Log4Net 之将自定义属性记录到文件中 (三)

    也用 Log4Net  之将自定义属性记录到文件中 (三)  即解决了将自定义属性记录到数据库之后.一个新的想法冒了出来,自定义属性同样也能记录到文件中吗?答案是肯定的,因为Log4Net既然已经考虑 ...

  6. HDU 1520-Anniversary party(树形dp入门)

    题意: n个人参加party,已知每人的欢乐值,给出n个人的工作关系树,一个人和他的顶头上司不能同时参加,party达到的最大欢乐值. 分析:dp[i][f],以i为根的子树,f=0,i不参加,f=1 ...

  7. 018如何建立自动化框架 how to bulid the framwork

    本讲包括: 一. objective 二. How to bulid 三. Keyview of frawork (关键视图) 四. conclusion automation framwork:自动 ...

  8. bzoj 1835 [ZJOI2010]base 基站选址(DP+线段树)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1835 [题意] 有n个村庄,每个村庄位于d[i],要求建立不多于k个基站,在第i个村庄 ...

  9. mvc5 HTML Helper

    转自:http://www.cnblogs.com/CodeFox/p/3782535.html 提及到HTML helper大家肯定不应该陌生, 因为在书写MVC View的时候肯定需要使用到它.一 ...

  10. 关于java对象的思考

    不可变对象和类 由不可变类创建的对象就是不可变对象,要使一个类成为不可变的,它必须满足下面的需求: 所有数据域都是私有的 没有修改器方法 没有一个访问器的方法,它会返回一个指向可变数据域的引用 看下面 ...