我试过这段代码:
CTTelephonyNetworkInfo *netinfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netinfo subscriberCellularProvider];
if(carrier != nil)
{
NSString *mnc = [carrier mobileNetworkCode];
NSLog(@" mnc is %@ ", mnc);
}
当运营商是AT& T时,它的工作正如我预期的那样。 我得到的mnc是410。
但是,当运营商是Verizon时。我得到了“mnc is VZW”。 这是API的正确行为吗? 我可以通过其他任何方式获取数字移动网络代码吗?
注意:Apple的documentation表示该方法应该返回...
表示数字移动网络的只读NSString对象 用户的蜂窝服务提供商的代码。
我不确定我的错误或手机有什么问题: - )
答案 0 :(得分:1)
不确定您使用的是什么型号。在使用iPhone 4(iOS 6)进行测试时,我也获得了VZW。 AFAIK,这是获得跨国公司的唯一途径。
答案 1 :(得分:0)
我在Verizon设备上看到480和VZW都返回了。其他一些网络有时也会返回3个字母代码,例如SPR用于sprint。