Определите, поддерживает ли iPad sim-карту программно

#ios #objective-c #iphone #ipad

#iOS #objective-c #iPhone #iPad

Вопрос:

В настоящее время у меня есть приложение, которое показывает данные 3G / Wifi, используемые пользователем с момента последней перезагрузки. Что я хочу сделать, так это то, что если приложение запущено на iPad, который не поддерживает SIM-карту, я хочу скрыть определенную статистику, показываемую пользователю.

Возможно ли каким-либо образом определить, поддерживает ли текущее устройство iOS sim-карту или нет?

Ответ №1:

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

 @import CoreTelephony;

-(BOOL)hasCellularCoverage
{
    CTTelephonyNetworkInfo *networkInfo = [CTTelephonyNetworkInfo new];
    CTCarrier *carrier = [networkInfo subscriberCellularProvider];


    if (!carrier.isoCountryCode) {
        NSLog(@"No sim present Or No cellular coverage or phone is on airplane mode.");
        return NO;
    }
    return YES;
}