小超小调 2022-06-21 19:47 采纳率: 52.6%
浏览 70

开发Android应用去判断sim卡插入的是哪一个手机卡槽

问题

当SIM卡插入手机时,开发的Android应用能判断出sim卡插入的是哪一个手机卡槽,然后弹出通知或提示。

我的解答思路和尝试过的方法

我找到TelephonyManager类有提供了一系列用于访问与手机通讯相关的状态和信息的get方法,但没找到需要的方法。

我想要达到的结果

判断SIM卡是插入的SIM卡槽1,还是SIM卡槽2

  • 写回答

1条回答 默认 最新

  • 灯塔@kuaidao 2022-06-22 10:06
    关注
    
      D  simCount:2
      D  iccId : , name : 中国联通
      D  iccId : , name : 中国移动
    

    清单文件声明权限,并授权之后就可以拿到sim卡信息了

       fun getSimCardInfo() {
            val subscriptionManager = SubscriptionManager.from(applicationContext)
            if (ActivityCompat.checkSelfPermission(
                    this,
                    Manifest.permission.READ_PHONE_STATE
                ) == PackageManager.PERMISSION_GRANTED
            ) {
                val activeSubscriptionInfoList = subscriptionManager.activeSubscriptionInfoList
                val simCount = activeSubscriptionInfoList.size
                Log.d("MainActivity: ", "simCount:$simCount")
                activeSubscriptionInfoList.forEach { action ->
                    Log.d(
                        "MainActivity: ",
                        "iccId :" + action.iccId + " , name : " + action.displayName
                    )
                }
    
            }
    
        }
    
    评论

报告相同问题?

问题事件

  • 请采纳用户回复 8月12日
  • 创建了问题 6月21日