【发布时间】:2016-04-05 08:06:52
【问题描述】:
在我的 iOS 应用程序中,我必须转换电话号码(在联系人中获取)并将其转换为国际格式(使用外部库自动发送 SMS)。我看到了libPhoneNumber,但问题是我们必须输入国家代码,并且应用程序必须在所有(几乎)国家工作,所以我不知道用户的国家/地区是什么。
这是图书馆的工作原理:
let phoneUtil = NBPhoneNumberUtil()
let phoneNumberConverted = try phoneUtil.parse("0665268242", defaultRegion: "FR") // So I don't know the country of the user here
print(try? phoneUtil.format(phoneNumberConverted, numberFormat: NBEPhoneNumberFormat.INTERNATIONAL))
【问题讨论】:
-
如果您不知道电话号码的国家代码,则无法生成国际格式。您可以尝试使用手机的位置或其区域设置来猜测国家代码,但这并不可靠。例如,我的电话号码是西班牙语,我目前在意大利,我的地区设置为新西兰。我的联系人列表包含来自世界各地的号码,如果它们不是以国际格式输入的,就无法猜测每个号码使用哪个国家/地区代码。
标签: ios swift phone-number libphonenumber