iOS获取运营商信息(IMSI)

来源:互联网 发布:阿里卖家版是什么软件 编辑:程序博客网 时间:2024/04/30 15:16

关于获取运营商信息,需通过CoreTelephony.framework,记得在工程添加。我们用到的是CTTelephonyNetworkInfo和CTCarrier这两个类,这些在iOS 4.0之后就有了。


名词解释
IMSI:International Mobile Subscriber Identification Number 国际移动用户识别码


IMSI分为两部分:

  1. 一部分叫MCC(Mobile Country Code
    移动国家码),MCC的资源由国际电联(ITU)统一分配,唯一识别移动用户所属的国家,MCC共3位,中国地区的MCC为460

  2. 另一部分叫MNC(Mobile Network Code 移动网络号码),用于识别移动客户所属的移动网络运营商。MNC由二到三个十进制数组成,例如中国移动MNC为00、02、07,中国联通的MNC为01、06、09,中国电信的MNC为03、05、11

    由1、2两点可知,对于中国地区来说IMSI一般为46000(中国移动)、46001(中国联通)、46003(中国电信)等


下面附上我在项目中使用的代码:
记得导入头文件:

#import <CoreTelephony/CTCarrier.h>#import <CoreTelephony/CTTelephonyNetworkInfo.h>
+ (NSString *)getIMSI{    CTTelephonyNetworkInfo *info = [[CTTelephonyNetworkInfo alloc] init];    CTCarrier *carrier = [info subscriberCellularProvider];    NSString *mcc = [carrier mobileCountryCode];    NSString *mnc = [carrier mobileNetworkCode];    NSString *imsi = [NSString stringWithFormat:@"%@%@", mcc, mnc];    return imsi;}

参考自:iOS获取运营商信息

0 0
原创粉丝点击