gpt4 book ai didi

ios - 如何在 iPhone 应用程序中将本地电话号码转换为国际格式?

转载 作者:行者123 更新时间:2023-11-29 13:04:28 25 4
gpt4 key购买 nike

我正在开发一个 iPhone 应用程序。有一次,用户键入电话号码。这些可以是任何格式,国际的或本地的。本地格式类似于 514-123-4567(或者更糟,只是 123-4567),有没有办法将本地电话号码转换为国际格式 (E .164):+15141234567?这意味着找出国家是什么(如果可能的话,也许还有地区)。

一种方法是要求用户始终使用国际格式输入电话号码,或者选择她所在的国家/地区。但如果我能避免这种情况,我认为它会更加用户友好。

我还想避免向用户询问对她进行地理定位的授权:很多用户拒绝地理定位。

理想情况下,我想获得她自己电话号码的国家和地区。或者可能是当前运营商所在的国家/地区(以防用户在她所在的其他国家/地区漫游)。

但是,如果她在没有 SIM 卡的情况下将应用程序安装在 iPod 或 iPad 上怎么办?也许我可以使用语言环境?或者我可以尝试对 IP 地址进行地理定位?

有什么更好的主意吗?

最佳答案

  1. 对于“转换”电话号码 - 您在这里有一个示例:STPhoneFormatter

  2. 您可以使用 NSLocale 来确定如何本地化您的客户 - 但不能确定用户所在的位置(区域设置和语言都是用户可配置的)。如果您真的想知道手机现在所在的国家/地区,请使用地理定位。

这里是 countryCode/country 的 NSLocale 示例:

NSLocale *locale = [NSLocale currentLocale];
NSString *countryCode = [locale objectForKey: NSLocaleCountryCode];
NSString *country = [locale displayNameForKey: NSLocaleCountryCode value: countryCode];

关于ios - 如何在 iPhone 应用程序中将本地电话号码转换为国际格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18987643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com