在iOS中检索特定国家的国家电话代码



我是iOS开发新手,目前正在开发自己的第一款应用。我正在尝试获取一个文本字段来自动填充特定国家/地区的电话国家代码。

例如,如果用户选择"UK",他会自动在文本字段中插入"+44"。

目前,我正在努力寻找如何获得该国的确切国家电话代码的方法。我可以创建一个NSDictionary包含所有国家和国家电话代码但我认为可能有更好的方法

如果你的目标是获取用户当前位置的拨号代码,那么你应该使用HMDiallingCode。

它使用CoreLocation和反向地理编码来获取用户的当前国家,然后检索它的拨号代码。

我认为,您只能使用CoreTelephony框架获取当前运营商的国家代码:

CTTelephonyNetworkInfo *info = [CTTelephonyNetworkInfo new];
CTCarrier *carrier = info.subscriberCellularProvider;
NSLog(@"country code is: %@", carrier.mobileCountryCode);

如果您需要所有国家的完整代码列表,您需要使用一些在线服务来查询它。

恐怕没有更好的办法了。我的应用程序包括一个。plist文件与名称,代码,电话代码,干线代码等每个国家的数组。你不会从iOS API中获得所有这些信息。如果您只需要国家代码的国际电话号码,这里有一个完整表格的链接。

最新更新