首页 > 编程开发 > IOS    日期:2020-05-26 / 来自互联网 / 浏览

一、获取运营类型

1、需要导入两个头文件

#import <CoreTelephony/CTCarrier.h>
#import <CoreTelephony/CTTelephonyNetworkInfo.h>

2、判断类型

// 获取运营商类型
+ (SSOperatorsType)getOperatorsType{
  CTTelephonyNetworkInfo *telephonyInfo = [[CTTelephonyNetworkInfo alloc] init];
  CTCarrier *carrier = [telephonyInfo subscriberCellularProvider];

  NSString *currentCountryCode = [carrier mobileCountryCode];
  NSString *mobileNetWorkCode = [carrier mobileNetworkCode];

  if (![currentCountryCode isEqualToString:@"460"]) {
    return SSOperatorsTypeOther;
  }

  // 参考 https://en.wikipedia.org/wiki/Mobile_country_code

  if ([mobileNetWorkCode isEqualToString:@"00"] ||
    [mobileNetWorkCode isEqualToString:@"02"] ||
    [mobileNetWorkCode isEqualToString:@"07"]) {

    // 中国移动
    return SSOperatorsTypeChinaMobile;
  }

  if ([mobileNetWorkCode isEqualToString:@"01"] ||
    [mobileNetWorkCode isEqualToString:@"06"] ||
    [mobileNetWorkCode isEqualToString:@"09"]) {

    // 中国联通
    return SSOperatorsTypeChinaUnicom;
  }

  if ([mobileNetWorkCode isEqualToString:@"03"] ||
    [mobileNetWorkCode isEqualToString:@"05"] ||
    [mobileNetWorkCode isEqualToString:@"11"]) {

    // 中国电信
    return SSOperatorsTypeTelecom;
  }

  if ([mobileNetWorkCode isEqualToString:@"20"]) {

    // 中国铁通
    return SSOperatorsTypeChinaTietong;
  }

  return SSOperatorsTypeOther;
}

以上这篇iOS判断运营商类型的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

觉得上面的内容有用吗?快来点个赞吧!

点赞() 我要打赏

温馨提示 : 本站内容来自会员投稿以及互联网,所有源码及教程均为作者总结编辑,请大家在使用过程中提前做好备份,以免发生无法预知的错误,源码类教程请勿直接用于生产环境!

 可能感兴趣的文章