欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

iOS判断运营商类型的实现方法

程序员文章站 2024-02-13 08:55:52
一、获取运营类型 1、需要导入两个头文件 #import #import

一、获取运营类型

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判断运营商类型的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。