如何获取ABAddressBookRequestAccessWithCompletion中列出的联系人的国际拨号前缀(例如+39)或国家/地区代码(例如IT)?当用户输入某人的电话号码时,他们不会包含国家/地区代码。
我知道有三种方法,但不要认为任何一种方法都是不错的选择。有没有正确的方法来做到这一点?
(1)可以使用NSLocal获取国家/地区代码,但正如许多堆栈溢出帖子所述,这并不总是正确的,因为有人可以将他们的手机设置为意大利语但是在美国。
(2)检查地址簿中的kABPersonAddressCountryCodeKey。但这不可靠,因为它需要有人实际输入人员地址。
(3)检查他们当前所在国家的IP并使用该国家代码,但这并不好,因为有人可能会在美国出国旅行,但他们的电话联系人都是意大利人。
谢谢!