android - 识别 Android 平板电脑是否有 sim 卡插槽

标签 android sim-card

有没有办法从我的应用程序中检查平板电脑是否有 SIM 卡插槽?

我的要求是确定平板电脑是仅 Wifi 还是 Wifi + 蜂窝设备。 为此,我检查了 Stack Overflow 上提供的早期链接,但它们似乎都不适用于我的设备。仅 Wifi 单元在网络信息下返回 TYPE_MOBILE。 Wifi 和蜂窝单元都返回 PHONE_TYPE_NONESIM_STATE_UNKNOWN,因此即使这些检查也不适用。

在这两种情况下返回的 IMEI 也是空的。如果 sim 卡插槽中插入了有效的 sim 卡,那么我可以验证该单元是否是蜂窝单元,但如果蜂窝单元没有插入 sim 卡,或者 sim 卡插槽坏了,那么我无法区分蜂窝和 wifi + 蜂窝单元

最佳答案

试试这段代码:

TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);  //gets the current TelephonyManager
if (tm.getSimState() != TelephonyManager.SIM_STATE_ABSENT){
  //the device has a sim card
} else {
  //no sim card available
}

source

关于android - 识别 Android 平板电脑是否有 sim 卡插槽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18129978/

相关文章:

android - 设置正确的方向以预览相机和最终结果图像

Android 布局 - 如何使控件在没有填充的情况下显示在左/右?

android - 从 Android 的 SIM 卡读/写

javacard - PROVIDE LOCAL INFORMATION终端响应中的位置信息长度

android - 使用 Gradle 构建时获取类缓存错误

Android数据库被其他线程锁定

android - 如何在 Android 应用程序中将 APDU 发送到 SIM 卡?

java - 如何确定设备上的 SIM 卡数量?

Android MNC API 差异 : Configuration. mnc/TelephonyManager.getSimOperator()

java - 使用格式化参数包装调用 Context.getString 会导致 IllegalFormatConversionException