本工具类可以获取手机的IMSI、本机的手机号码、SIM卡的服务商。

移动、联通可正常获取到SIM卡的手机卡号,但是电信的获取不到。。。。

首先,需要在AndroidManifest.xml清单配置文件中添加权限:

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

下面是工具类的代码

SIMCardInfo.java

import android.content.Context;
import android.telephony.TelephonyManager;/*** 类描述:获取SIM卡信息的工具类* 作者:zuowenbin* 时间:16-5-10 09:35* 邮箱:13716784721@163.com*/
public class SIMCardInfo {/*** TelephonyManager提供设备上获取通讯服务信息的入口。 应用程序可以使用这个类方法确定的电信服务商和国家 以及某些类型的用户访问信息。* 应用程序也可以注册一个监听器到电话收状态的变化。不需要直接实例化这个类* 使用Context.getSystemService(Context.TELEPHONY_SERVICE)来获取这个类的实例。*/private TelephonyManager manager;private String IMSI;    //国际移动用户识别码public SIMCardInfo(Context context){manager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);}/*** 获取当前手机的SIM卡手机号码* @return NativePhoneNumber本机号码*/public String getNativePhoneNumber(){String NativePhoneNumber = null;NativePhoneNumber = manager.getLine1Number();return manager.getLine1Number();}/*** 获取手机服务商信息* @return  ProvidersName手机服务商信息*/public String getProvidersName(){String ProvidersName = null;//返回唯一的用户ID;就是这张卡的编号IMSI = manager.getSubscriberId();//IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。if (IMSI == null || "".equals(IMSI)){ProvidersName = "获取服务商信息失败";}else if (IMSI.startsWith("46000") || IMSI.startsWith("46002")){ProvidersName = "中国移动";}else if (IMSI.startsWith("46001")){ProvidersName = "中国联通";}else if (IMSI.startsWith("46003")){ProvidersName = "中国电信";}return ProvidersName;}}

获取SIM卡信息的工具类相关推荐

  1. Android开发之获取SIM卡信息和手机号码

    获取SIM卡信息和手机号码的工具类,记录一下方便以后使用 import android.content.Context; import android.telephony.TelephonyManag ...

  2. IPhone之获取Sim卡信息

    原文地址:IPhone之获取Sim卡信息 作者:飞舞的鸡毛 首先,加入一个Framework. 引入头文件 #import <UIKit/UIKit.h> #import<CoreT ...

  3. ios获取sim卡信息以及手机号码

    1.加入一个Framework(CoreTelephony.framework).2.引入头文件#import <CoreTelephony/CTTelephonyNetworkInfo.h&g ...

  4. android 双卡开发获取sim卡默认数据卡,获取sim卡信息,sim1卡,sim2卡 2G/3G/4G信号强度

    1:默认数据卡 private int getDefalutDataID(){SubscriptionManager subscriptionManager = (SubscriptionManage ...

  5. Android如何获取SIM卡信息

    android 获取sim卡运营商信息 TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHO ...

  6. Android 获取SIM卡信息

    android 获取sim卡运营商信息 TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHO ...

  7. 安卓系统根据SIM卡槽ID获取SIM卡信息

    导入一个包: import android.telephony.SubscriptionManager; 声明变量: SubscriptionManager mSubscriptionManager ...

  8. android 获取sim卡信息list_提醒:手机要设置SIM卡密码!如何设置?有何用处?攻略来了...

    近期,一篇标题为<一部手机失窃而揭露的窃取个人信息实现资金盗取的黑色产业链>的文章引发关注和热议,不法分子偷盗个人手机后,在某政务App窃取用户个人信息,进而申请网贷消费造成用户财产损失的 ...

  9. Android开发之获取手机SIM卡信息

    TelephonyManager是一个管理手机通话状态.电话网络信息的服务类,该类提供了大量的getXxx(),方法获取电话网络的相关信息. TelephonyManager类概述: 可用于访问有关设 ...

最新文章

  1. 配置开发ExtJS环境
  2. 用gcc编译实现对Linux系统cpu占用
  3. Caused by: java.lang.NoSuchMethodException: onClick_Flashlight [class android.view.View]
  4. 学籍管理系统 c++作业
  5. 零售创新决胜新消费暨2021中国网络零售TOP100榜单
  6. 【会议/期刊】中科院推荐计算机领域人工智能方向会议和期刊列表
  7. iOS底层探索之多线程(五)—GCD不同队列源码分析
  8. java win7 管理员权限_Win7下超级管理员创建普通权限任务
  9. 数学之美 (第二版) pdf
  10. 计算机博弈程序python_程序员大神们的经典编程语录
  11. 第五次作业:Excel制作英文课程表
  12. 三步教你Word启用所有宏
  13. 引用arXiv的文章标准的Latex的bib如何编辑
  14. Kate Spade_百度百科
  15. 2.Vue3.0 性能提升主要是通过哪几方面体现的?
  16. 查询商品分类id为10或11的商品对应的商品信息
  17. Stein引理(Stein's lemma)
  18. 无限渗透实战(2)--绕过认证上校园网
  19. viewer.js插件简单使用说明
  20. 思科路由器重置密码并保存设置重置密码

热门文章

  1. java基础之什么是字符串常量池,class常量池和运行常量池?
  2. 如何通过计算机侵入学校网络,简单的局域网入侵方法(特别适合于校园网络)...
  3. 跟着Cell学单细胞转录组分析(八):单细胞转录组差异基因分析及多组结果可视化
  4. 我理解的游戏数据模型
  5. 小学计算机课教学实录视频,小学信息技术课堂实录.doc
  6. 企业如何进行“对标”管理?
  7. 通过计算机系统记录数据时 相关岗位人员,计算机系统专项自查报告
  8. SAP Marketing Cloud 功能概述(二)
  9. powershell 获取鼠标位置 与 鼠标点击
  10. 随笔杂谈2022-02-07