Link ваше приложение против CoreTelephony.framework
Вы можете проверить CTCarrier объект и посмотреть, если у Вас есть действительный результат (! = Ноль) для некоторого свойства, которые требуют соединения с телефоном Provider.
Например, ниже есть надрез кода, проверьте против mobileNetworkCode имущества CTCarrier. Это свойство! = Nil if-and-only - если устройство подключено к Провайдеру телефона (ваша желаемая задача, пользователь, способный совершить телефонный звонок, включен в состояние, описанное выше).
CTTelephonyNetworkInfo *netInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netInfo subscriberCellularProvider];
//The value for this property is nil if any of the following apply:
// - The device is in Airplane mode.
// - There is no SIM card in the device.
// - The device is outside of cellular service range.
NSString *mnc = [carrier mobileNetworkCode];
if(!mnc) {
//if we're here, than probably we're disconnected from the Phone Provider
}
netInfo.subscriberCellularProviderDidUpdateNotifier =^(CTCarrier * carrier) {
//this block is executed each time we've a change to the state of the carrier
//be sure to check the carrier object, in order to see is we're connected to a
//phone provider.
};
подробнее в компании Apple Developer Documentation URL: http://developer.apple.com/library/IOs/#documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html
Дублированный: http://stackoverflow.com/questions/2959567/iphone-signal-strength –