I'm working on a project I need to send the selected phone number (which user selected already from phone contacts list) to the sever with format : international-code-without-zeros-or-plus_the-number so I need to handle many cases : number without international code , number with zeros , number with plus , number with two zeros ..etc the problem is when I have a local phone number unprecedented by country phone code,I could get the current country name (country name code) if the device has a valid sim card via this code
let networkInfo: CTTelephonyNetworkInfo = CTTelephonyNetworkInfo()
let ar = networkInfo.subscriberCellularProvider
if ar != nil {
if let mcc = ar.mobileCountryCode {
myInformation.countryCode = mcc
}
then how can I get the country phone code??
Here's a complete list. Others had missing codes
static let countryPrefixes: [String: String] = ["AF": "93",
"AL": "355",
"DZ": "213",
"AS": "1",
"AD": "376",
"AO": "244",
"AI": "1", "AQ": "672",
"AG": "1",
"AR": "54",
"AM": "374",
"AW": "297",
"AU": "61",
"AT": "43",
"AZ": "994",
"BS": "1",
"BH": "973",
"BD": "880",
"BB": "1",
"BY": "375",
"BE": "32",
"BZ": "501",
"BJ": "229",
"BM": "1",
"BT": "975",
"BA": "387",
"BW": "267",
"BR": "55",
"IO": "246",
"BG": "359",
"BF": "226",
"BI": "257",
"KH": "855",
"CM": "237",
"CA": "1",
"CV": "238",
"KY": "345",
"CF": "236",
"TD": "235",
"CL": "56",
"CN": "86",
"CX": "61",
"CO": "57",
"KM": "269",
"CG": "242",
"CK": "682",
"CR": "506",
"HR": "385",
"CU": "53",
"CY": "537",
"CZ": "420",
"DK": "45",
"DJ": "253",
"DM": "1",
"DO": "1",
"EC": "593",
"EG": "20",
"SV": "503",
"GQ": "240",
"ER": "291",
"EE": "372",
"ET": "251",
"FO": "298",
"FJ": "679",
"FI": "358",
"FR": "33",
"GF": "594",
"PF": "689",
"GA": "241",
"GM": "220",
"GE": "995",
"DE": "49",
"GH": "233",
"GI": "350",
"GR": "30",
"GL": "299",
"GD": "1",
"GP": "590",
"GU": "1",
"GT": "502",
"GN": "224",
"GW": "245",
"GY": "595",
"HT": "509",
"HN": "504",
"HU": "36",
"IS": "354",
"IN": "91",
"ID": "62",
"IQ": "964",
"IE": "353",
"IL": "972",
"IT": "39",
"JM": "1",
"JP": "81",
"JO": "962",
"KZ": "77",
"KE": "254",
"KI": "686",
"KW": "965",
"KG": "996",
"LV": "371",
"LB": "961",
"LS": "266",
"LR": "231",
"LI": "423",
"LT": "370",
"LU": "352",
"MG": "261",
"MW": "265",
"MY": "60",
"MV": "960",
"ML": "223",
"MT": "356",
"MH": "692",
"MQ": "596",
"MR": "222",
"MU": "230",
"YT": "262",
"MX": "52",
"MC": "377",
"MN": "976",
"ME": "382",
"MS": "1",
"MA": "212",
"MM": "95",
"NA": "264",
"NR": "674",
"NP": "977",
"NL": "31",
"AN": "599",
"NC": "687",
"NZ": "64",
"NI": "505",
"NE": "227",
"NG": "234",
"NU": "683",
"NF": "672",
"MP": "1",
"NO": "47",
"OM": "968",
"PK": "92",
"PW": "680",
"PA": "507",
"PG": "675",
"PY": "595",
"PE": "51",
"PH": "63",
"PL": "48",
"PT": "351",
"PR": "1",
"QA": "974",
"RO": "40",
"RW": "250",
"WS": "685",
"SM": "378",
"SA": "966",
"SN": "221",
"RS": "381",
"SC": "248",
"SL": "232",
"SG": "65",
"SK": "421",
"SI": "386",
"SB": "677",
"ZA": "27",
"GS": "500",
"ES": "34",
"LK": "94",
"SD": "249",
"SR": "597",
"SZ": "268",
"SE": "46",
"CH": "41",
"TJ": "992",
"TH": "66",
"TG": "228",
"TK": "690",
"TO": "676",
"TT": "1",
"TN": "216",
"TR": "90",
"TM": "993",
"TC": "1",
"TV": "688",
"UG": "256",
"UA": "380",
"AE": "971",
"GB": "44",
"US": "1",
"UY": "598",
"UZ": "998",
"VU": "678",
"WF": "681",
"YE": "967",
"ZM": "260",
"ZW": "263",
"BO": "591",
"BN": "673",
"CC": "61",
"CD": "243",
"CI": "225",
"FK": "500",
"GG": "44",
"VA": "379",
"HK": "852",
"IR": "98",
"IM": "44",
"JE": "44",
"KP": "850",
"KR": "82",
"LA": "856",
"LY": "218",
"MO": "853",
"MK": "389",
"FM": "691",
"MD": "373",
"MZ": "258",
"PS": "970",
"PN": "872",
"RE": "262",
"RU": "7",
"BL": "590",
"SH": "290",
"KN": "1",
"LC": "1",
"MF": "590",
"PM": "508",
"VC": "1",
"ST": "239",
"SO": "252",
"SJ": "47",
"SY": "963",
"TW": "886",
"TZ": "255",
"TL": "670",
"VE": "58",
"VN": "84",
"VG": "284",
"VI": "340", "EH": "121"]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With