ios - 最好用国家代码猜测电话号码

时间:2017-01-26 22:21:58

标签: ios phone-number country-codes cncontact

我正在尝试检索联系人电话号码,以便能够代表用户发送短信。如果号码包含国家/地区代码(即以+00开头),我很好。但是,如果不是这种情况,我会猜测国家代码应该是什么。

// contact is a CNContact with at least one phone number
contact.phoneNumbers[0].value.value(forKey: "countryCode") as? String

会返回国家代码,例如usfr(即使it's not recommended to do so),但我发现它有时会不准确。我的猜测是Apple使用用户的本地。它甚至会将数字与显式国家/地区代码错误分类。例如,数字00 54 ...被归类为us,而它来自阿根廷。

我还可以使用用户当前的本地(NSLocale.currentLocale().objectForKey(NSLocaleCountryCode) as? String)并使用它填充缺少的国家/地区代码。但它显然会错误地分类一些数字。

是否有更好的错误方式?

0 个答案:

没有答案