判断是否包含 SIM 卡

/**

* 判断是否包含SIM卡

*

* @return 状态

*/

public static boolean hasSimCard(Context context) {

TelephonyManager telMgr = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);

int simState = telMgr.getSimState();

boolean result = true;

switch (simState) {

case TelephonyManager.SIM_STATE_ABSENT:

result = false; // 没有SIM卡

break;

case TelephonyManager.SIM_STATE_UNKNOWN:

result = false; // 没有SIM卡

break;

}

Log.d(TAG, result ? "有SIM卡" : "无SIM卡");

return result;

}

各种状态:

TelephonyManager telMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

int simState = telMgr.getSimState();

switch (simState) {

case TelephonyManager.SIM_STATE_ABSENT:

// 无SIM卡

break;

case TelephonyManager.SIM_STATE_NETWORK_LOCKED:

// 锁定状态,需要网络的PIN码解锁

break;

case TelephonyManager.SIM_STATE_PIN_REQUIRED:

// 锁定状态,需要用户的PIN码解锁

break;

case TelephonyManager.SIM_STATE_PUK_REQUIRED:

// 锁定状态,需要用户的PUK码解锁

break;

case TelephonyManager.SIM_STATE_READY:

// 有SIM卡

break;

case TelephonyManager.SIM_STATE_UNKNOWN:

// 未知状态

break;

}

监听 SIM 卡状态改变的广播

返回SIM卡的状态,有效或者无效。

双卡中只要有一张卡的状态有效即返回状态为有效,两张卡都无效则返回无效。

public class SimStateReceive extends BroadcastReceiver {

private final static String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";

private final static int SIM_VALID = 0;

private final static int SIM_INVALID = 1;

private int simState = SIM_INVALID;

public int getSimState() {

return simState;

}

@Override

public void onReceive(Context context, Intent intent) {

System.out.println("sim state changed");

if (intent.getAction().equals(ACTION_SIM_STATE_CHANGED)) {

TelephonyManager tm = (TelephonyManager)context.getSystemService(Service.TELEPHONY_SERVICE);

int state = tm.getSimState();

switch (state) {

case TelephonyManager.SIM_STATE_READY :

simState = SIM_VALID;

break;

case TelephonyManager.SIM_STATE_UNKNOWN :

case TelephonyManager.SIM_STATE_ABSENT :

case TelephonyManager.SIM_STATE_PIN_REQUIRED :

case TelephonyManager.SIM_STATE_PUK_REQUIRED :

case TelephonyManager.SIM_STATE_NETWORK_LOCKED :

default:

simState = SIM_INVALID;

break;

}

}

}

}

android监听卡1电话,Android 监听 SIM 卡状态相关推荐

  1. 【边做项目边学Android】手机安全卫士10-设置向导之绑定SIM卡

    上回主要做了设置向导界面的界面设计,主要涉及到界面的布局和一些控件的使用.这次要做设置向导界面的功能具体实现. 首先,4个界面分别是(重复度很大,这里就不再贴到正文中了) /mobilesafe/re ...

  2. 小米5怎么安android,小米5怎么插卡 小米5手机安装sim卡图文教程

    近日小米发布了今年的年度旗舰产品---小米5.该机采用了单卡槽双卡位设计,支持双卡双待,值一款支持双全网通手机,由于不少网友对小米5卡槽方面的安放不是特别清楚,所以对于后期入手这款机子,或者已经入手该 ...

  3. 苹果8为什么不显示卡的服务器,苹果8手机显示无SIM卡什么原因?iPhone8无SIM卡解决方法...

    不知道大家的苹果手机是否出现这类问题,就是莫名其妙的手机显示无sim卡.有网友询问苹果8手机显示无SIM卡,重启飞行模式设置都试了没用,突然显示无SIM卡,不知道是不是硬件问题?关于iPhone8手机 ...

  4. 虚拟 sim 卡服务器,基于虚拟SIM卡的内置多虚拟SIM卡方法

    1. 一种基于虚拟SIM卡的内置多虚拟SIM卡方法,其特征在于该方法首先,在可信执行 环境下划分一块区域,保存多张虚拟SIM卡的固定存放的数据.暂时存放的有关网络的数 据.相关的业务代码,手机把IMS ...

  5. 什么原因显示sim卡没服务器,苹果手机显示无sim卡是什么原因 苹果手机显示无sim卡解决方法...

    不知道大家的 苹果 手机是否出现这类问题,就是莫名其妙的手机显示无sim卡这是怎么回事呢,大家都知道iphone是结合照相手机个人数码助理以及多媒体播放等等设备的手机,是因为这些齐全的功能导致的sim ...

  6. android 有sim卡,有光亦有暗:Android Q将更方便运营商锁定手机SIM卡

    IT之家1月22日消息 在之前的新闻消息中,Android Q将有一些用户期待的积极变化,如系统层级的黑暗模式和新的权限设置.但负面往往暗藏在正面的背后,Android Q也有着消极的变化,因为新的代 ...

  7. Android实现SIM卡2拨打,从第二个SIM卡打电话(Call from second sim)

    我有一个双卡Android手机. 我使用此代码来拨打电话: private void callBack(String phone, Context context) { Intent callInte ...

  8. Android 7.0 高通平台-telephony-机器无Sim卡情况下,获取SIM卡状态方法getSimState偶现为6,而不是1

    TelephonyManager.java -------->getSimState接口 /** * Returns a constant indicating the state of the ...

  9. android关闭应用及获取运营商ISP,判断sim卡属于哪个运营商

    android关闭应用及获取运营商ISP 1.AndroidManifest.xml <?xml version="1.0" encoding="utf-8&quo ...

最新文章

  1. BeanShell变量的基本范围
  2. Docker学习(1)——几张图快速了解Docker
  3. pandas.DataFrame.groupby
  4. 对计算机技术的发展方向研究,网络技术发展对计算机技术的影响
  5. 64Ubuntu报错Failed to get the adb version:
  6. python3多线程queue_Python多线程(3)——Queue模块
  7. 将非事务性资源绑定到JTA事务中的几种模式
  8. laravel mysql 配置,laravel5数据库配置及其注意事项
  9. idea通过数据库生成实体类插件_IDEA连接数据库自动生成实体类
  10. Flash Player版本相关问题
  11. 单片机实验报告实验七:定时器实验
  12. YouTube 深度神经网络在推荐系统上的应用
  13. 【学习笔记 31】 buu [0CTF 2016]piapiapia
  14. 问题 Q(1208): 【基础算法】倒酒问题
  15. iOS必备小技巧(非常的全)
  16. 亚马逊运营listing优化A+页面
  17. 设置JSP页脚版权标识
  18. 构造器(也称构造方法)
  19. 启动mongodb数据库服务
  20. 环信IM快速集成集成,实现客服功能(单聊)

热门文章

  1. 云计算-Micheal Miller 著 姜进磊 孙瑞志 向勇 史美林 译
  2. EKS日志收集方案-PLG(Promtail+Loki+Grafana)
  3. Lenovo system x3500 m5 安装显卡
  4. Win10找不到飞行模式开关怎么办?
  5. 基于Arduino的超声波悬浮
  6. Django Rest_framework 1(RESTRESTful)
  7. php错误处理视频教程,PHP错误与异常调试视频教程资源分享
  8. Netty in Action (十九) 第九章节 单元测试
  9. zedboard u-boot编译的心路历程
  10. 计算机视觉中的transformer模型创新思路总结