在不使用位置的情况下获取iOS用户的国家名

时间:2019-10-22 05:18:10

标签: ios swift

我需要在不使用位置权限的情况下获取用户的确切国家/地区位置。

我尝试使用语言环境,但是用户可以手动更改。

  let loc = Locale.current
  print(loc.regionCode)

现在我正在使用语言环境获取位置,但是用户可以手动更改它。我需要检查用户的确切国家/地区。

1 个答案:

答案 0 :(得分:0)

您的应用可以联系一些Web API服务,以获取IP地址的大致位置。由于您的用户可能正在使用国外VPN服务,因此不能完全保证它是设备的正确国家/地区,但这可能是您唯一可以做的事情,而无需询问设备的位置。

这里是example service。我对这项服务的质量一无所知(我是随机选择这个答案的)。那里似乎有很多东西,因此您应该做些家庭作业,这对您的用户和您自己都是最佳的。

您可以采取另一种方法:只需询问用户,并相信他们中的大多数会诚实回答。如果他们的答案在设备的时区中没有意义,则可能怀疑他们的答案是错误的。