【发布时间】:2011-12-21 10:27:25
【问题描述】:
我是 iOS 开发的新手,目前正在构建我的第一个应用程序。 我正在尝试获取一个文本字段来自动填充特定国家/地区的电话国家代码。
因此,例如,如果用户选择“UK”,他会自动将“+44”插入到该文本字段中。
目前,我正在努力寻找如何获取该国家/地区的确切国家电话代码的方法。 我可以创建一个包含所有国家和国家电话代码的 NSDictionary,但我认为可能有更好的方法。
【问题讨论】:
标签: ios phone-number
我是 iOS 开发的新手,目前正在构建我的第一个应用程序。 我正在尝试获取一个文本字段来自动填充特定国家/地区的电话国家代码。
因此,例如,如果用户选择“UK”,他会自动将“+44”插入到该文本字段中。
目前,我正在努力寻找如何获取该国家/地区的确切国家电话代码的方法。 我可以创建一个包含所有国家和国家电话代码的 NSDictionary,但我认为可能有更好的方法。
【问题讨论】:
标签: ios phone-number
如果您的目标是获取用户当前位置的拨号代码,那么您应该使用HMDiallingCode。
它使用 CoreLocation 和反向地理编码来获取用户的当前国家/地区,然后检索其拨号代码。
【讨论】:
我认为,您只能使用 CoreTelephony 框架获取当前运营商的国家代码:
CTTelephonyNetworkInfo *info = [CTTelephonyNetworkInfo new];
CTCarrier *carrier = info.subscriberCellularProvider;
NSLog(@"country code is: %@", carrier.mobileCountryCode);
如果您需要所有国家/地区的完整代码列表,您需要使用一些在线服务进行查询。
【讨论】:
恐怕没有更好的方法了。我的应用程序包含一个 .plist 文件,其中包含每个国家/地区的名称、代码、电话代码、中继代码等。您不会从 iOS API 获得所有这些信息。 如果您只需要国家代码的国际电话代码,here 您就是一个完整表格的链接。
【讨论】: