2015-09-07 64 views
1

我正在使用以下代碼片段查找用戶iPhone的MCC(移動國家代碼)。像運營商名稱,iSO代碼和MNC等細節都很好,但MCC總是404而不是+01(或美國)或+91(印度)。CoreTelephony框架在iPhone中返回404作爲MCC(移動國家代碼)iPhone

CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init]; 
    CTCarrier *carrier = [networkInfo subscriberCellularProvider]; 


// Get carrier name 
NSString *carrierName = [carrier carrierName]; 
if (carrierName != nil) 
    NSLog(@"Carrier: %@", carrierName); 

// Get mobile country code 
NSString *mcc = [carrier mobileCountryCode]; 
if (mcc != nil) 
    NSLog(@"Mobile Country Code (MCC): %@", mcc); 

// Get mobile network code 
NSString *mnc = [carrier mobileNetworkCode]; 

if (mnc != nil) 
    NSLog(@"Mobile Network Code (MNC): %@", mnc); 
NSString *code = [carrier isoCountryCode]; 

NSLog(@"isoCountryCode (iso): %@", code); 

我的手機中有一個完美的SIM卡,我的手機已解鎖。 我在這裏做錯了什麼?

+0

MCC不是e.164國家/地區代碼。這是一個e.212代碼 - 404是印度。 https://www.itu.int/itudoc/itu-t/ob-lists/icc/e212_685.pdf – Paulw11

回答

2

MCC是不是手機的國字頭如您所願,但它是由ITU-T推薦E.212定義移動國家代碼,「移動國家或地理區域代碼清單」。

你的情況404是 - 印度。 您可以查看列表:http://www.itu.int/dms_pub/itu-t/opb/sp/T-SP-E.212A-2010-PDF-E.pdf

+0

感謝您的信息,我不知道這一直到現在..有沒有辦法,我可以得到iOS中的國家前綴。這會有很大的幫助。 –

+0

不是我所知道的(那些會通過App Store審查的) – Mindaugas