Получить сеть MNC и MCC
Я знаю, что могу получить имя перевозчика, MNC и MCC, используя следующие свойства класса CTCarrier.
carrierName
mobileCountryCode
mobileNetworkCode
Эти данные касаются SIM-карты, вставленной в устройство. Есть ли способ получить аналогичные данные о сети, используемой устройством?
Пример: SIM MCC и MNC - 404 и 02. Сеть MCC и MNC может быть 404 и 02, 404 и 03 и т. Д.
Изменить: вот что я хочу.
У меня есть сим-карта Vodafone местоположения х. MCC и MNC - 404 и 30 соответственно. Теперь, если я путешествую в местоположение y, мой сим может привязаться либо к Vodafone, либо к другой сети (иногда называемой роумингом)
Теперь я хочу узнать подробности сети, к которой привязан мой сим!!
2 ответа
Это не похоже, что это в настоящее время возможно (iOS 5.0).
В инфраструктуре CoreTelephony вы найдете этот API, и, как вы (и документация Apple) упоминаете, свойства CTCarrier позволяют получить информацию только о поставщике сотовых услуг пользователя, а не о текущей сети.
Вам следует подать запрос на улучшение в Apple по адресу http://bugreport.apple.com/ и, надеюсь, они включат то, что вы ищете, в будущем обновлении ОС.
Из любопытства, что вы пытаетесь сделать с этой информацией?
По словам Джона Мухова, из его статьи здесь:
С выпуском iOS 4 Apple представила две новые платформы для получения информации о носителе. CTCarrier предлагает информацию о сотовом провайдере, включая имя оператора, код мобильной сети и код мобильного оператора. CTTelephonyNetworkInfo - это канал для доступа к информации через CTCarrier. Этот класс также предоставляет средство уведомления об обновлениях, если вам необходимо обнаружить изменения в информации о сотовом провайдере, например, если пользователь поменял там SIM-карту.
// Setup the Network Info and create a CTCarrier object CTTelephonyNetworkInfo *networkInfo = [[[CTTelephonyNetworkInfo alloc] init] autorelease]; CTCarrier *carrier = [networkInfo subscriberCellularProvider]; // Get mobile country code NSString *mcc = [carrier mobileCountryCode]; if (mcc != nil) NSLog(@"Mobile Country Code (MCC): %@", mcc); // Get mobile network code NSString *mnc = [carrier mobileNetworkCode]; if (mnc != nil) NSLog(@"Mobile Network Code (MNC): %@", mnc);