我正在开发一个 iPhone 应用程序。在某一时刻,用户键入电话号码。这些可以是任何格式,国际或本地。本地格式类似于514-123-4567
(或更糟糕的是,只是123-4567
),有没有办法将本地电话号码转换为国际格式(E.164)+15141234567
:?这意味着找出这个国家是什么(如果可能的话,也可能是这个地区)。
一种方法是要求用户始终使用国际格式输入电话号码,或者选择她所在的国家/地区。但如果我可以避免这种情况,我认为它会更加用户友好。
我还想避免向用户请求对她进行地理定位的授权:很多用户拒绝地理定位。
理想情况下,我想得到她自己的电话号码的国家和地区。或者可能是当前运营商所在的国家/地区(以防用户在她所在国家以外的其他国家/地区漫游)。
但是,如果她在没有 SIM 卡的情况下将应用程序安装在 iPod 或 iPad 上怎么办?也许我可以使用语言环境?或者我可以尝试对 IP 地址进行地理定位?
有更好的想法吗?