我们如何在Android手机中检查多个SIM卡

时间:2019-03-05 12:15:45

标签: java android kotlin

如何通过编程方式在Android设备中检查多个SIM卡?以及如何从特定的SIM卡(Sim 1或Sim 2)发送短信?

1 个答案:

答案 0 :(得分:1)

使用TelephonyManager 首先,您需要使用getSimState(int slotIndex)为每个单独的SIM卡插槽查询SimState,即:

int simStateMain = telMgr.getSimState(0);
int simStateSecond = telMgr.getSimState(1);

然后,一旦您确定要使用哪个SimCard,代码就会看起来像这样:

TelephonyManager telMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
    int simState = telMgr.getSimState();
            switch (simState) {
                case TelephonyManager.SIM_STATE_ABSENT:
                    // do something
                    break;
                case TelephonyManager.SIM_STATE_NETWORK_LOCKED:
                    // do something
                    break;
                case TelephonyManager.SIM_STATE_PIN_REQUIRED:
                    // do something
                    break;
                case TelephonyManager.SIM_STATE_PUK_REQUIRED:
                    // do something
                    break;
                case TelephonyManager.SIM_STATE_READY:
                    // do something
                    break;
                case TelephonyManager.SIM_STATE_UNKNOWN:
                    // do something
                    break;
            }

确保首先要使用GSM手机,因此实际上可以使用SIM卡。注意:有很多方法可以做到这一点。甚至可以使用布尔值。