Обнаружение симкарты на мобильном устройстве

Я хочу добавить функцию безопасности, для которой мне нужно проверить, установлена ​​ли sim [contactno] на perticular устройстве [android / ios].

Пример: мне нужно проверить, доступно ли в устройстве 989xxxx640 или нет.


person dhyanandra singh    schedule 07.03.2017    source источник
comment
на iOS нельзя получить номер абонента. Это проблема конфиденциальности.   -  person Paulw11    schedule 07.03.2017


Ответы (2)


Согласно документации для [CTCarrier carrierName]:

Если вы настраиваете устройство для оператора связи, а затем извлекаете SIM-карту, в этом свойстве сохраняется имя оператора связи.

Насколько мне известно, вы не можете определить, установлена ​​ли SIM-карта. Вы можете определить, доступно ли соединение WWAN, только с помощью Reachability.

person Saurabh Sharma    schedule 07.03.2017

 public int checkSim(){    
    TelephonyManager telMgr = (TelephonyManager) context.getSystemService(
                Context.TELEPHONY_SERVICE);
        int simState = telMgr.getSimState();
        switch (simState) {
            case TelephonyManager.SIM_STATE_NETWORK_LOCKED:
            case TelephonyManager.SIM_STATE_PIN_REQUIRED:
            case TelephonyManager.SIM_STATE_PUK_REQUIRED:
            case TelephonyManager.SIM_STATE_READY:
                return SIM_PRESENT;
            case TelephonyManager.SIM_STATE_UNKNOWN:
            case TelephonyManager.SIM_STATE_ABSENT:
            default :
                return SIM_ABSENT;
        }
}

используйте этот код для проверки сим

person Anand Phadke    schedule 07.03.2017
comment
это проверит, присутствует ли sim или нет, но мне нужно проверить, есть ли в устройстве 989xxxx640 или нет. - person dhyanandra singh; 07.03.2017